Advertisement
Ot_Motta

EX02_P2_ALG

Nov 13th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.61 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. int main()
  6. {
  7.     //CRIAR VARS
  8.     int n, n2, n3, m, digitos = 0;
  9.     //PROCESSAR OS DADOS - LAÇO PRINCIPAL
  10.     do
  11.     {
  12.         system("cls");
  13.  
  14.         printf("\n------DADOS DOIS NUMEROS INTEIROS, N e M, QUANTOS DIGITOS TEM N^M?------\n");
  15.         printf("\nDIGITE O NUMERO N (BASE): ");
  16.         fflush(stdin);
  17.         scanf("%d", &n);
  18.         //VALIDAR CORRETIVAMENTE O NUMERO N
  19.         while (n != 0 && (n < 1 || n > 10))
  20.         {
  21.             printf("\nNUMERO INVALIDO! DIGITE NOVAMENTE: ");
  22.             fflush(stdin);
  23.             scanf("%d", &n);
  24.         }
  25.  
  26.         if (!(n == 0))
  27.         {
  28.             printf("\nDIGITE O NUMERO M (EXPOENTE): ");
  29.             fflush(stdin);
  30.             scanf("%d", &m);
  31.             //VALIDAR CORRETIVAMENTE O NUMERO M
  32.             while (m < 1 || m > 10)
  33.             {
  34.                 printf("\nNUMERO INVALIDO! DIGITE NOVAMENTE ");
  35.                 fflush(stdin);
  36.                 scanf("%d", &m);
  37.             }
  38.             //CALCULAR O EXPONENCIAL ATRAVÉS DA FUNÇÃO pow
  39.             n2 = pow(n, m);
  40.             n3 = n2;
  41.  
  42.             while(n2 != 0)
  43.             {
  44.                 n2 = n2/10;
  45.                 //MAIS UM DIGITO SOMADO
  46.                 digitos++;
  47.             }
  48.             //MOSTRAR O RESULTADO
  49.             printf("\n\n%d ^ %d = %d. O NUMERO POSSUI %d DIGITO(S)\n\n", n, m, n3, digitos);
  50.             printf("\nPRESSIONE QUALQUER TECLA PARA EXECUTAR NOVAMENTE...");
  51.             getch();
  52.         }
  53.  
  54.     }while(n != 0);
  55.  
  56.     printf("\n\n\nFIM DO PROGRAMA...\n\n\n");
  57.  
  58.     return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement