O Comando continue em C

O comando continue transfere o fluxo de processamento para o teste do comando de repetição.
Usando o continue com o for, antes do teste de associado ao for ser verificado ocorre o incremento das variáveis na seção de incremento do for.

O comando continue é parecido com o comando break. A diferença é que o comando continue interrompe a execução da iteração corrente passando para a próxima iteração do laço, se houver uma. No comando for o controle passa para o teste e o incremento do laço sejam executados, nos comandos while e do-while o controle passa para a fase de testes.
No trecho de programa abaixo o laço lê 100 números inteiros, caso o número seja negativo ele um novo número é lido.

for (i = 0; i < 100; i++)
{
  scanf("%d", &num);
  if (num < 0) continue;
  printf("%d\n", num);
}

Exemplo:
void main()
{
   float idade, total_idade=0, total_pessoa=0;
   char resp;
   while(1)
   {
      printf("\nIDADE: ");
      scanf("%f",&idade);
      if(idade <= 0)
      {
   printf("\nIdade Invalida, deseja continuar?(s/n)");
   resp = getche();
   if(resp == 's')
      continue;
   else break;
   }
       else{
   total_idade += idade;
   total_pessoa++;
}
   }
   printf("\nA Media de Idade e %f",(total_idade/total_pessoa));
   getch();
}

Exercício:


Altere o programa que calcula o fatorial de um número, de maneira que seja perguntado ao usuário se ele deseja calcular ou não o fatorial de um próximo número.

Solução:
void main()
{
double n, resultado;
char c;

while(1)
{
resultado = 1;
printf("Entre com um numero: \n");
scanf("%lf",&n);

while(n > 0)
{
resultado = resultado * n;
n--;
}
printf("O fatorial eh igual a %lf \n",resultado);
printf("\nDeseja Continuar(s/n)? ");
c = getch();
if(c == 's')
continue;
else break;
clrscr();
}
}

0 comentários:

Postar um comentário

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | JCPenney Coupons