Advertisement
it4l0

serie

Dec 3rd, 2019
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.38 KB | None | 0 0
  1. #include <stdio.h>
  2. int eprimo(int x)
  3. {
  4.     int y = 2;
  5.     while (x > y)
  6.     {
  7.         if (x % y == 0)
  8.         {
  9.             return 0;
  10.         }
  11.         y++;
  12.     }
  13.     return 1;
  14. }
  15. int fatorial(int x)
  16. {
  17.     int resultado;
  18.     if (x == 1)
  19.     {
  20.         return 1;
  21.     }
  22.     else{
  23.         resultado = x * fatorial(x - 1);
  24.     }
  25.     return resultado;
  26. }
  27. int proxprimo(int z)
  28. {
  29.     if(eprimo(z) == 0)
  30.     {
  31.         proxprimo(z + 1);
  32.     }
  33.     else if(eprimo(z) == 1)
  34.     {
  35.         return z;
  36.     }
  37. }
  38. int main()
  39. {
  40.     int termo = 1, n = 0, prox1 = 0;
  41.     double resposta = 0.0, prox = 0.0, fat = 0.0, termo1 = 0.0;
  42.     scanf("%d", &n);
  43.     for( ; termo <= n; termo++)
  44.     {
  45.         fat = fatorial(termo); prox = proxprimo(termo); prox1 = prox; termo1 = termo;
  46.         if (termo == 1)
  47.         {
  48.             resposta += 1.00;
  49.             printf("1!/1");
  50.         }
  51.         else if(eprimo(termo) != 0)
  52.         {
  53.             resposta += fat / termo1;
  54.             printf(" + %d!/%d", termo, prox1);
  55.         }
  56.         else if(eprimo(termo) == 0)
  57.         {
  58.             resposta += fat / prox;
  59.             printf(" + %d!/%d", termo, prox1);
  60.         }
  61.     }
  62.     printf("\n%.2lf", resposta);
  63.     return 0;
  64. }
  65. /*            
  66.     fat = fatorial(termo); prox = proxprimo(termo); prox1 = prox;
  67.     resposta += fat / prox;
  68.     printf(" + %d!/%d", termo, prox1);
  69. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement