| coding-style/indrykning/find-rod/fr3.c - Mindre variant af K & R style. | Lektion 6 - slide 16 : 21 Program 3 |
#include <stdio.h>
double f (double x);
int sameSign(double x, double y);
double middleOf(double x, double y);
int isSmallNumber(double x);
/* K & R style, minor variant. More compact setup of else */
double findRootBetween(double a, double b)
{
double l = a, u = b;
while (!isSmallNumber(f(middleOf(l, u)))) {
if(sameSign(f(middleOf(l, u)), f(u))) {
u = middleOf(l, u);
} else {
l = middleOf(l, u);
}
}
return middleOf(l, u);
}
int main (void)
{
findRootBetween(-3.0, 5.0);
}