Algoritmos Escher Agenda • Estruturas de Seleção; • Exercícios. Conceitos Iniciais Estrutura de Seleção: É uma estrutura de controle de fluxo, executando um ou vários comandos se a condição testada for verdadeira e, em alguns casos, executando um ou vários comandos se for falsa. Em outra palavra uma estrutura de seleção permite que se faça um desvio na execução normal do programa caso certas condições seja atendidas. Estruturas de Seleção Estrutura de Seleção SIMPLES: Fluxograma: condição Uma única condição, expressão lógica, é avaliada. SE o resultado é verdadeiro (S1M) um determinado conjunto de instruções é executado. 0 1 Comando1 … ComandoN Estruturas de Seleção Estrutura de Seleção SIMPLES: Sintaxe: se (condição) { comando ; ou < seqüência de comandos separados por ; > } Se a condição for verdadeira (1) o(s) comando(s) entre as {} serão executados. Seleção Simples prog Cal_Media leia NUM1; leia NUM2; (10.0 ) (5 .0 ) Condições NUM1 NUM2 Media Media >= 7 Media < 7 ? ? ? ? ? ... ... ... ... ... 10.0 ? ? ? ? 10.0 5.0 ? ? ? 10.0 5.0 7.5 ? ? 10.0 5.0 7.5 1 ? 10.0 5.0 7.5 1 0 Media < - (NUM1 + NUM2) / 2; se (Media >=7.0) {imprima “Aprovado” ;} se (Media < 7.0) {imprima “Reprovado”;} fimprog 10 5 Aprovado Monitor Memória real NUM1, NUM2, Media; Variáveis Estruturas de Seleção Estrutura de Seleção COMPOSTA: Fluxograma: 0 Uma única condição, expressão lógica, é avaliada. SE o resultado é verdadeiro (S1M) um determinado conjunto de instruções é executado, SENÃO um outro conjunto de instruções será executado comando 2 condição 1 comando 1 Estruturas de Seleção Estrutura de Seleção COMPOSTA: Sintaxe: se (condição) { comando ; ou < seqüência de comandos separados por ;> } senao { Comando ; ou <seqüência de comandos separados por ; > } Se a condição for verdadeira (1) o(s) comando(s) entre as 1as {} serão executados, senão os comandos entre 2as {} serão executados. Seleção Composta prog Maioridade leia Idade; (15 ) Idade >= 18 ? ? ... ... 15 ? 15 0 se (Idade >=18) { imprima “Maior de Idade”; } senao { imprima “Menor de Idade”; } fimprog 15 Menor de Idade Monitor Memória int Idade; Idade Estruturas de Seleção SEs aninhados (Encaixados): As vezes é necessário termos uma outro teste de condição dentro da estrutura SE : se (condição) { se (condição) { ... } senao { ... } } senao { se (condição) { ... } } Se a condição for verdadeira (1) o(s) comando(s) entre as 1as {} serão executados, senão os comandos entre 2as {} serão executados. Referências Lopes, A. & Garcia, G. – Introdução a Programação. Schildt – C Completo e Total. Obrigado E Agora??? Exercícios!!! •Exercícios Algoritmo 90 Entrar com um número e imprimi-lo caso seja maior que 20. Algoritmo 91 Construir um algoritmo que leia dois valores numéricos inteiros e efetue a adição; caso o resultado seja maior que 10, apresentá-lo. Algoritmo 92 Construir um algoritmo que leia dois números e efetue a adição. Caso o valor somado seja maior que 20, este deverá ser apresentado subtraindo-se 5. Algoritmo 93 Entrar com um número e imprimir a raiz quadrada do número case ele seja positivo e o quadrado do número caso ele seja negativo. Algoritmo 94 Entrar com um número e imprimir uma das mensagens: é múltiplo de 3 ou não é múltiplo de 3. Exercícios Algoritmo 95 Entrar com um número e informar se ele é ou ao divisível por 5. Algoritmo 96 Entrar com um número e informar se ele é divisível por 3 e por 7. Algoritmo 97 Entrar com um número e informar se ele é divisível por 10, por 5, por2 ou se não é divisível por nenhum destes. Algoritmo 98 A prefeitura do Rio de Janeiro abriu uma linha de crédito para os funcionários estatutários. O valor máximo da prestação não poderá ultrapassar 30% do salário bruto. Fazer um algoritmo que permita entrar com o salário bruto e o valor da prestação e informar se o empréstimo pode ou não ser concedido. Algoritmo 99 Ler um número inteiro de 3 casas decimais e imprimir se o algarismo da casa das centenas é par ou ímpar.