Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lazameth

loop nas funções

Recommended Posts

Ae galera queria mais uma ajuda num exercicio de lista, ja consegui imprimir só os numeros pares, so os impares e a lista completa, porem quando executa uma dessas opçoes o programa fecha, queria que depois de executar uma função voltasse para o menu e o usuario decidisse quando encerrar o programa

 

segue o codigo abaixo:

#include <stdio.h>

#include <stdlib.h>

 

int num[50];

int i = 0;

int MAX=0;

int opcao;

int aux;

 

main () {

 

printf("Digite os numeros da lista!\n(para finalizar antes dos 50 numeros digite '0'):\n");

 

for (i=0;i<50;i++){

printf("insira o numero da posicao %i \n", i+1);

scanf("%i",&aux);

if (aux!=0){

num=aux;

MAX=i+1;

}

 

else

break;

}

 

 

printf("Quais numeros gostaria de ver?\n(1) Pares \t (2) Impares \t (3) Lista completa.\n\n");

scanf("%i", &opcao);

 

system("CLS");

switch(opcao)

{

case 1:

printf("Lista de numeros pares:\n");

for(i=0; i<MAX; i++)

{

if (num % 2 == 0)

{

printf("%i\n", num);

}

}

break;

case 2:

printf("Lista de numeros Impares:\n");

for(i=0; i<MAX; i++)

{

if (num % 2 != 0)

{

printf("%i\n", num);

}

}

break;

case 3:

printf("Lista Completa:\n");

for(i=0; i<MAX; i++)

{

printf("%i\n", num);

}

break;

default:

printf("Opcao invalida!\n");

}

 

system("PAUSE");

return 0;

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use a tag "Code" para exibir um código.

 

Para voltar a determinada parte do programa, utilize goto.

 

Sintaxe:

 

#include<stdio.h>
#include<stdlib.h>
int main()
{
int vezes;
Loopingaqui:;
printf("\"Loopou\" %d vezes!",vezes);
system("cls");
system("pause>nul");
vezes++;
goto Loopingaqui;//Volta para o termo Loopingaqui:;
}

 

Espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilize do..while, adicione uma variável quit com o valor inicial false ou true e a opção sair no menu do seu programa.

Exemplo:

//...
int quit = false;
//...
do
{
   //...
   switch(opcao)
   {
   //...
   case 4:
       quit = true;
       break;
   default:
   //...
   }
}
while(!quit);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não recomendo o uso de goto, pois em projetos grandes com muitos goto pode tornar o código uma verdadeira bagunça. Prefira utilizar funções, assim vais manter determinada tarefa do teu código no escopo da função tornando o código mais simples para realizar manutenções.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não recomendo o uso de goto, pois em projetos grandes com muitos goto pode tornar o código uma verdadeira bagunça. Prefira utilizar funções, assim vais manter determinada tarefa do teu código no escopo da função tornando o código mais simples para realizar manutenções.

 

Concordo, caso seja usado em demasia, pois tornaria muito difícil a leitura e/ou manutenção do código, qualificando-o como código espaguete.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.