Valide a entrada do usuário. Modifique o programa da Figura 3.10 para validar suas entradas. Em qualquer entrada, se o valor inserido for diferente de 1 ou 2, continue o looping até que o usuário informe um valor correto.

Passo 1

Fala Galera!!! Tudo certo? Espero que sim!!! Bora para mais um exercício.

Vamos escrever um programa que seja capaz de receber os resultados se os alunos de uma faculdade foram aprovados ou reprovados. O programa irá ler 1 como aprovado e 2 como reprovados e caso o valor digitado seja diferente de 1 ou 2 o programa continuará rodando, porém deverá exibir que a entrada é invalida. No final o programa deverá exibir quantos foram aprova e quantos foram reprovados.

Passo 2

Escrevendo o programa:

Passo 3

A saída será:

E assim finalizamos mais um exercício!!! Até o próximo galera!!

Resposta

#include

int main()

{

int passes = 0;

/* número de passagens */

int failures = 0; /* número de reprovado */

int student = 1;

/* contador de alunos */

int result;

/* resultado de um exame */

/* processa 10 alunos usando loop controlado por contador */

while ( student

/* solicita a entrada do usuário e obtém o valor do usuário */

printf("Digite o resultado (1=aprovado, 2=reprovado): ");

scanf( "%d", &result );

/* loop até entrada válida */

while ( result != 1 && result != 2 ) {

printf("Resultado invalido\nDigite o resultado ( 1=aprovado, 2=reprovado): ");

scanf( "%d", &result );

}

/* se o resultado for 1, o incremento passa */

if ( result == 1 ) {

++passes;

}

else { /* se o resultado não for 1, reprovado incrementado */

++failures;

}

++student;

}

printf("Passaram %d\nReprovados %d\n", passes, failures);

/* se mais de oito alunos foram aprovados, imprime "aumentar mensalidade" */

if ( passes >= 8 ) {

printf("Aumento da mensalidade\n");

} /* end if */

return 0;

}