• Matéria: Informática
  • Autor: otavioaugustodeborto
  • Perguntado 3 anos atrás

Ler um número e um dígito positivos. Contar quantos dígitos o número possui, que corresponde àquele dado como entrada. Repetir a leitura do número e do dígito enquanto forem informados valores negativos. Repetir a execução do programa de acordo com a resposta do usuário.

Exemplo de execução do programa:

Digite um número: 55
Digite um dígito: 5
55 possui 2 dígito(s) cinco;
Deseja repetir o programa: (S ou N)? S
Digite um número: 70077
Digite um dígito: 7
70077 possui 3 dígito(s) sete;
Deseja repetir o programa: (S ou N)? S
Digite um número: -1
Número inválido, o número deve ser positivo!
Digite um número: 111
Digite um dígito: -1
Dígito inválido, o dígito deve ser positivo!
Digite um dígito: 1
111 possui 3 dígito(s) um;
Deseja repetir o programa: (S ou N)? S
Digite um número: 1232
Digite um dígito: 2
1232 tem 2 dígito(s) dois
Deseja repetir o programa: (S ou N)? S
Digite um número: 0
Digite um dígito: 0
0 tem 1 dígito(s) zero
Deseja repetir o programa: (S ou N)? N

Precisa ser em linguagem C

Respostas

respondido por: Anônimo
0

Resposta:

int main()

{

   int numero ;

   int digito ;

   char codigo[1];

int cont =0;

   do {

           printf ("Digite um numero \n");

           scanf ("%i", &numero);

           if ( numero < 0 ){

               printf ("Numero deve ser positivo \n");

               printf ("Digite um numero \n");

               scanf ("%i", &numero);

           }

           printf ("Digite um digito \n");

           scanf("%i", &digito);

           if ( digito <0 ){

               printf ("Digito deve ser positivo  \n");

               printf ("Digite um digito \n");

               scanf("%i", &digito);

           }

     if ( digito == numero){

               cont++;

           }

     

           printf ("%i possui % digitos \n ", numero,digito);

           printf (" deseja repetir o programa S ou N \n");

           scanf("%s",&codigo);

   }

   while ( codigo == 'N');{

       printf (" programa finalizado \n");

   }

   return 0;

}

Explicação:

confia

respondido por: LeonardoDY
0

Este programa na linguagem C converte o número ingressado para string com a função sprintf() para logo realizar uma busca sequencial no vetor resultante.

Como se escrever o código para contar os dígitos iguais ao ingressado?

Para este programa podemos criar duas variáveis, uma variável com o número ingressado, que será do tipo long, e uma variável de tipo int que será o dígito ingressado.

Para desenhar o código podemos utilizar a operação módulo para calcular sucessivamente o resíduo da divisão por 10, porém, neste caso vamos converter o número ingressado para string utilizando a função sprintf().

Como agora cada dígito estará representado pelo seu código ASCII, vamos adicionar '0' ao dígito ingressado.

O arranjo de strings chamado "digitos" é uma tabela que permite colocar os dígitos em letras.

Saiba mais sobre a linguagem C em https://brainly.com.br/tarefa/28035640

#SPJ2

Anexos:
Perguntas similares