#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float calculafx( float x2, float * f3, float * f4, int m) {
float fx1 = 0 ;
for ( int j
= 1 ; j
<= m
; j
++ ) fx1
+= f3
[ j
] * pow ( x2
, f4
[ j
] ) ; return fx1;
}
int main( ) {
int n;
float epsilon, fa, fb, x1, fxx1, a, b;
printf ( "Digite o número de termos da função: \n " ) ; float f1[ n] , f2[ n] ;
printf ( "Digite o epsilon: \n " ) ; printf ( "Digite o primeiro valor do intervalo: \n " ) ; printf ( "Digite o segundo valor do intervalo: \n " ) ; for ( int i = 1 ; i <= n; i++ ) {
printf ( "Digite o termo %d da função:\n " , i
) ; printf ( "Digite o grau do termo: \n " ) ; printf ( "Digite 0 se o termo for uma constante:\n " ) ; }
do {
x1 = ( a + b) / 2 ;
fxx1 = calculafx( x1, f1, f2, n) ;
if ( fxx1 * calculafx( a, f1, f2, n) < 0 ) b = x1;
else a = x1;
} while ( abs ( a
- b
) > epsilon
) ; fa = calculafx( a, f1, f2, n) ;
fb = calculafx( b, f1, f2, n) ;
printf ( "f(a) é igual a %f e f(b) é igual a %f \n " , fa
, fb
) ; }
//https://pt.stackoverflow.com/q/185068/101
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPG1hdGguaD4KCmZsb2F0IGNhbGN1bGFmeChmbG9hdCB4MiwgZmxvYXQgKmYzLCBmbG9hdCAqZjQsIGludCBtKSB7CglmbG9hdCBmeDEgPSAwOwoJZm9yIChpbnQgaiA9IDE7IGogPD0gbTsgaisrKSBmeDEgKz0gZjNbal0gKiBwb3coeDIsIGY0W2pdKTsKCXJldHVybiBmeDE7Cn0KCmludCBtYWluKCkgewoJaW50IG47CglmbG9hdCBlcHNpbG9uLCBmYSwgZmIsIHgxLCBmeHgxLCBhLCBiOwoJcHJpbnRmKCJEaWdpdGUgbyBuw7ptZXJvIGRlIHRlcm1vcyBkYSBmdW7Dp8OjbzogXG4iKTsKCXNjYW5mKCIlZCIsICZuKTsKCXN5c3RlbSgiY2xlYXIiKTsKCWZsb2F0IGYxW25dLCBmMltuXTsKCXByaW50ZigiRGlnaXRlIG8gZXBzaWxvbjogXG4iKTsKCXNjYW5mKCIlZiIsICZlcHNpbG9uKTsKCXByaW50ZigiRGlnaXRlIG8gcHJpbWVpcm8gdmFsb3IgZG8gaW50ZXJ2YWxvOiBcbiIpOwoJc2NhbmYoIiVmIiwgJmEpOwoJcHJpbnRmKCJEaWdpdGUgbyBzZWd1bmRvIHZhbG9yIGRvIGludGVydmFsbzogXG4iKTsKCXNjYW5mKCIlZiIsICZiKTsKCXN5c3RlbSgiY2xlYXIiKTsKCWZvcihpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CgkJcHJpbnRmKCJEaWdpdGUgbyB0ZXJtbyAlZCBkYSBmdW7Dp8OjbzpcbiIsIGkpOwoJCXNjYW5mKCIlZiIsICZmMVtpXSk7CgkJcHJpbnRmKCJEaWdpdGUgbyBncmF1IGRvIHRlcm1vOiBcbiIpOwoJCXByaW50ZigiRGlnaXRlIDAgc2UgbyB0ZXJtbyBmb3IgdW1hIGNvbnN0YW50ZTpcbiIpOwoJCXNjYW5mKCIlZiIsICZmMltpXSk7CgkJc3lzdGVtKCJjbGVhciIpOwoJfQoJCglkbyB7CgkJeDEgPSAoYSArIGIpIC8gMjsKCQlmeHgxID0gY2FsY3VsYWZ4KHgxLCBmMSwgZjIsIG4pOwoJCWlmIChmeHgxICogY2FsY3VsYWZ4KGEsIGYxLCBmMiwgbikgPCAwKSBiID0geDE7CgkJZWxzZSBhID0geDE7Cgl9IHdoaWxlIChhYnMoYSAtIGIpID4gZXBzaWxvbik7CglmYSA9IGNhbGN1bGFmeChhLCBmMSwgZjIsIG4pOwoJZmIgPSBjYWxjdWxhZngoYiwgZjEsIGYyLCBuKTsKCXByaW50ZigiZihhKSDDqSBpZ3VhbCBhICVmIGUgZihiKSDDqSBpZ3VhbCBhICVmIFxuIiwgZmEsZmIpOwp9CgovL2h0dHBzOi8vcHQuc3RhY2tvdmVyZmxvdy5jb20vcS8xODUwNjgvMTAx