![]() ![]() | my-sqrt-incorrect.c - En forkert implementation af my_sqrt. | Lektion 3 - slide 26 : 26 Program 1 |
#include <stdio.h> #include <math.h> /* #define NDEBUG 1 */ #include <assert.h> int isSmallNumber(double x){ return (fabs(x) < 0.0000001); } double my_sqrt(double x){ double res; assert(x >= 0); res = 7.3; assert(isSmallNumber(res*res - x)); return res; } int main(void) { printf("my_sqrt(15.0): %lf\n", my_sqrt(15.0)); printf("my_sqrt(20.0): %lf\n", my_sqrt(20.0)); printf("my_sqrt(2.0): %lf\n", my_sqrt(2.0)); printf("my_sqrt(16.0): %lf\n", my_sqrt(16.0)); printf("my_sqrt(-3.0): %lf\n", my_sqrt(-3.0)); return 0; }