Logo Hardware.com.br
natalia pithan vidaleti
natalia pith... Novo Membro Registrado
2 Mensagens 0 Curtidas

ajuda Linguagem C - switch e if

#1 Por natalia pith... 23/06/2017 - 14:54
tenho uma menu com funções , não coloquei pra não ficar extenso.+
meu problema é que tenho que avisar ao usuário se ele ecolher opçao 2, 3,4........... antes da numero 1
tem que avisar por exemplo quando escolher o 2 direto Nao foi Gerado vetor de valores que seria minha opçao 1 e voltar para o menu switch
tentei de tudo li um monte e não achei jeito de fazer se alguem poder por favor ajuda


int main(int argc, char *argv[]) {
// menu= para acessar o menu em switch e usuario digitar opçao
int opcao;
float mediaari, desviop;


do
{
system("cls");
menu();
scanf("%d",&opcao);

if (opcao 2 antes 1)??????????????
printf("\n Nao foi Gerado vetor de valores\n");


switch(opcao){
case 1:
printf("\n1 Gerar vetor de valores\n");
geravalor();
break;


case 2:
printf("\n2 Imprimir o vetor de valores\n");
imprimevetor();
break;

case 3:
printf("\n3 Calcular o valor da media aritmitica do vetor de valores\n");
mediaari=func_mediaari();
printf("%f",mediaari);
system("pause");
break;

case 4:
printf("\n4 Calcular o valor da media harmonica do vetor de valores\n");
break;

case 5:
printf("\n5 Calcular o valor de desvio padrao\n");
desviop=func_desviop();
printf("%f",desviop);
system("pause");
break;

case 6:
printf("\n6 Sair\n");
break;

defaultstick_out_tongue.pngrintf("\nDigite uma opcao valida\n");
}

}while (opcao!=6);

system("PAUSE");
return 0;
}
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#2 Por esquiloesper...
23/06/2017 - 21:29
Mas moço... Se é obrigatório gerar o vetor antes de qualquer coisa, por que você simplesmente não executa a função geravalor() diretamente toda vez que o programa iniciar? É muito mais fácil do que forçar o sujeito a realizar um passo que por natureza o programa pode (e deve) fazer.
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
esquiloesperto
esquiloesper... Cyber Highlander Moderador
7.1K Mensagens 2.2K Curtidas
#4 Por esquiloesper...
24/06/2017 - 09:39
Então tá, né...

Você só precisa criar um flag (sinal) no programa.
O valor do flag só mudará quando passar pela condição esperada, e deve ser resetado somente quando cumprir o algoritmo.

Por exemplo:
INÍCIO:
Faça flag = 1, opção = 0;
...
Escolha uma opção [1-4]
Se opção = flag, faça:
Passo 1
flag = 0
Fim Se
Senão, faça:
Se flag = 0, faça:
... // [info] Continuar normalmente
Fim Se
Senão, faça:
Imprima mensagem de erro
Fim Senão
Fim Senão
FIM


smile.png DICA: Quase sempre é possível utilizar a própria entrada (a opção) como flag. wink.png
Só é difícil enquanto estiver oculto! cool.png
Use a pesquisa


rolleyes.png  Navegar é preciso, viver... também.  smile.png
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal