d<0.4だからdは入力させるのか?

#include <stdio.h>
#include <math.h>
int main(void)
{
int i;
double d;

do { scanf("%lf", &d); } while(d >= 0.4);

for(i = 1; sqrt(i + 1) - sqrt(i) >= d; i++);

printf("%d\n", i);

return 0;
}