Informática, perguntado por arthurvictorfarruda, 1 ano atrás

Escreva um algoritmo que solicite ao utilizador os algarismos de um número entre 1001 e 9999 sendo
que todos estes algarismos devem ser ímpares. A introdução de um algarismo que não respeite esta
regra, deve de imediato interromper a leitura do número e mostrar uma mensagem sugestiva. No caso
de a leitura estar correta, deverá ser mostrado o número lido e o quadrado desse número

Soluções para a tarefa

Respondido por Gabrielmartinsseco
0

Resposta:

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

int main()

{

   setlocale(LC_ALL,"PORTUGUESE");

   //CRIAR VARS

   int num1, num2, num3, num4, flag;

   //INICIALIZAR VARS

   num1 = num2 = num3 = num4 = flag = 0;

   //PROCESSAR DADOS

   printf("\n\n\tLEITURA DOS VALORES:\n");

   do

   {

       printf("\n\n INFORME O 1° VALOR: ");

       fflush(stdin);

       scanf("%d", &num1);

       if(num1 % 2 == 0)

       {

           printf("\n\n %d NÃO É UM NÚMERO ÍMPAR...\n\n",num1);

           flag = 1;

       }

       else

       {

           printf("\n\n INFORME O 2° VALOR: ");

           fflush(stdin);

           scanf("%d", &num2);

           if(num2 % 2 == 0)

           {

               printf("\n\n %d NÃO É UM NÚMERO ÍMPAR...\n\n",num2);

               flag = 1;

           }

           else

           {

               printf("\n\n INFORME O 3° VALOR: ");

               fflush(stdin);

               scanf("%d", &num3);

               if(num3 % 2 == 0)

               {

                   printf("\n\n %d NÃO É UM NÚMERO ÍMPAR...\n\n",num3);

                   flag = 1;

               }

               else

               {

                   printf("\n\n INFORME O 4° VALOR: ");

                   fflush(stdin);

                   scanf("%d", &num4);

                   if(num4 % 2 == 0)

                   {

                       printf("\n\n %d NÃO É UM NÚMERO ÍMPAR...\n\n",num4);

                       flag = 1;

                   }

                   else

                   {

                       num1 = num1 * 1000;

                       num1 = num1 + num2 * 100;

                       num1 = num1 + num3 * 10 + num4;

                       if(num1 <= 1001 || num1 >= 9999)

                       {

                           printf("\n\n %d NÃO ESTÁ ENTRE 1001 E 9999...\n\n");

                           flag = 1;

                       }

                       else

                       {

                           printf("\n\n============================");

                           printf("\n\n VALOR INSERIDO..: %d",num1);

                           printf("\n\n QUADRADO DE %d: %d",num1,num1*num1);

                           printf("\n\n============================\n\n");

                       }

                   }

               }

           }

       }

   }while(flag != 1);

   return 0;

}

Qualquer dúvida, estou à disposição!

Abraços e bons estudos!


arthurvictorfarruda: tenho esse outro problema em pseudocodigo você ´poderia me ajudar? Construa um algoritmo que calcule a soma dos algarismos pares de um número inteiro positivo
introduzido pelo utilizador.
Exemplo: Entrada: 36781
Saída: 14 (8+6)
b) Altere o algoritmo de modo a ser aplicado a uma sequência de números inteiros terminada por
número não positivo.
Perguntas interessantes