Advertisement
jvitorml

Untitled

Apr 29th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.11 KB | None | 0 0
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <math.h>
  4.  
  5. #define PI 3.1415926535897932384626433832795
  6.  
  7. /**Questão 2 */
  8.  
  9. double precisaoPi (int precisao){
  10.  
  11.     double soma=0;
  12.  
  13.     long long i=0,
  14.     n_interacoes=1,
  15.     potencia,
  16.     valor_final=soma,
  17.     valor_pretendido;
  18.  
  19.     potencia = pow(10, precisao);
  20.  
  21.     if (potencia % 10 != 0)  /** isto eh para evitar erros quando a potencia for efetuada, */
  22.         potencia++;          /** se der erro em 1 numero de diferença, ela incrementa a POW*/
  23.  
  24.         valor_pretendido = PI * potencia;
  25.         printf("vp: %d\n", valor_pretendido);
  26.  
  27.         while (valor_pretendido!= valor_final){
  28.             soma += pow (-1.0, i)/(2.0*i+1);
  29.             i++;
  30.             n_interacoes++;
  31.             valor_final = soma * 4 * potencia;
  32.             printf("%d\n", valor_final);
  33.         }
  34.         printf("Interacoes: %d!\n", n_interacoes);
  35.     return soma*4;
  36. }
  37.  
  38. int main () {
  39.     int precisao;
  40.  
  41.     printf("Digite o expoente negativo da precisao desejada 10^-\n");
  42.     scanf("%d", &precisao);
  43.  
  44.     printf("%lf", precisaoPi(precisao));
  45.  
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement