/* newton.c: ニュートン法 */ #include // printf, fprintf, fgets, sscanf #include // fabs int main(void) { int n = 0; double a = 0, x, x0, err, eps = 1.0e-10; char s[128]; fprintf(stderr, " a = "); fgets(s, 128, stdin); sscanf(s, "%lf", &a); while (a <= 0.0) { fprintf(stderr, "'a' には正の数を入れてください。\n"); fprintf(stderr, " a = "); fgets(s, 128, stdin); sscanf(s, "%lf", &a); } x = (a + 1.0) / 2.0; printf("# n, x, err\n"); printf("%4d, % .15e\n", n, x); do { n++; x0 = _; x = _______?_______; err = ______?______; printf("%4d, % .15e, % .15e\n", n, x, err); } while (_____?_____); printf("\n# sqrt(%e) = % .15e\n", a, x); return 0; }