Baixe o app para aproveitar ainda mais
Prévia do material em texto
Linguagem C Estruturas de Decisão Múltiplas marciofreire@gmail.com Questão � Suponha precisamos elaborar um menu com as seguintes opções: 1 - Lançamento Vertical 2 - Queda livre 3 - Lançamento Horizontal 4 - Opção inválida � Para cada opção o programa iria solicitar os parâmetros e calcular o movimento. Estruturas de Decisão em C O que já vimos... scanf("%d", &opcao); if (opcao == 1) printf("Lançamento Vertical"); else if (opcao == 2) printf("Queda livre"); else if (opcao == 3) printf("Lançamento Horizontal"); else printf("Opção inválida"); Estruturas de Decisão em C � Existe uma forma mais inteligente e mais “elegante” de se resolver esta questão? Estruturas de Decisão em C � Uso do comando switch switch (expressão) { case opcao_1: Bloco de comandos que serão executados quando a expressão produzir um valor numérico igual a opção 1; case opcao_2: Bloco de comandos que serão executados quando a expressão produzir um valor numérico igual a opção 2; case opcao_n: Bloco de comandos que serão executados quando a expressão produzir um valor numérico igual a opção n; default: Bloco de comandos que serão executados quando a expressão não coincidir com nenhuma das opções acima; } Estruturas de Decisão em C � exemplo: scanf("%d", &opcao); switch (opcao) { case 1: printf("Lançamento Vertical"); break; case 2: printf("Queda livre"); break; case 3: printf("Lançamento Horizontal"); break; default: printf("Opção inválida"); } Estruturas de Decisão em C � Observações; � Todos os blocos abaixo do bloco selecionado serão executados *; � usar a instrução break para evitar esta situação � O uso do default é opcional; � A expressão deve retornar um número inteiro; Estruturas de Decisão em C � Atividade em classe: � Escrever algoritmo que obtenha dois números e depois exiba um menu de opções: 1 – Multiplicação, 2 – Divisão, 3 – subtração, 4 – Adição � Quando o usuário digitar a opção, deve-se realizar o cálculo correspondente e exibir o resultado. Estruturas de Decisão em C � Referências � EVARISTO, Jaime. Aprendendo a programar programando em Linguagem C. Rio de Janeiro: Book Express, 2001. � SCHILDT, Herbert. C Completo e Total. 3. ed. São Paulo: Makron Books, 1999. � Material cedido pelos professores Railton SACRAMENTO e Yuri Araujo.
Compartilhar