| 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;
}