pablohf

PosicaoFixa

Sep 11th, 2012
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.90 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. float func(float x){
  6.     return x * x * x - 9 * x + 3;
  7.     //return x * x * x - x - 1;
  8.     return x * x - 0.9;
  9. }
  10.  
  11. float funcIteracao(float x){
  12.     return ((x * x * x) / 9) + (0.33333333);
  13.     //return (1 / x) + (1 / (x * x));
  14.     //return x * x + x - 0.9;
  15. }
  16.  
  17. float absolut(float x){
  18.     if(x > 0){
  19.         return x;
  20.     }else{
  21.         return (x * -1);
  22.     }
  23. }
  24.  
  25. int main()
  26. {
  27.     float e = 0.001, x0 = 2.5, x1 = 0;
  28.     int k = 0;
  29.  
  30.     if(absolut(func(x0)) < e){
  31.         printf("X = %.7f", x0);
  32.     }else{
  33.         k = 1;
  34.         do{
  35.             x1 = funcIteracao(x0);
  36.  
  37.             printf("%d\t %.7f\t %.7f\t %.7f\t\t \n", k, x0, func(x0), absolut(x1 - x0));
  38.  
  39.             x0 = x1;
  40.             k++;
  41.         }while((absolut(func(x1)) > e) || (absolut(x1 - x0) > e));
  42.     }
  43.     printf("\nX = %.7f\n", x0);
  44.     return 0;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment