Comando de Seleção MúltiplaComando de Seleção Múltipla
• Em algumas situações é necessário analisar mais que duas condições;mais que duas condições;
• O comando se nos permite implementar tais situações porém de forma limitada e emsituações, porém de forma limitada e, em alguns casos, ineficiente:• Imagine implementar 100 estruturas se para 100
condições diferentes!• Tal comando obriga o programador a escrever
várias linhas de código;g ;
Comando de Seleção MúltiplaComando de Seleção Múltipla
• Para várias condições, podemos utilizar o comando de seleção múltipla escolha;comando de seleção múltipla escolha;
• Sintaxe:escolha (variavel)Caso valor_1
//// Instruções que serão executadas caso// a condição seja verdadeira
Caso valor 2Caso valor_2// Instruções que serão executadas caso// a condição seja falsa
Outrocaso// Instruções que serão executadas se// nenhuma condição anterior seja atendida// nenhuma condição anterior seja atendida
fimescolha
Comando de Seleção MúltiplaComando de Seleção Múltipla
• As palavras reservadas escolha e fimescolhadelimitam a região da estrutura condicional;delimitam a região da estrutura condicional;
• Tal estrutura seleciona uma variável que será comparada com os valores especificados ao lado da palavra reservada caso;p ;
• O caso tem funcionamento similar ao se;• O outrocaso tem funcionamento similar ao
senao, visto anteriormente;, ;
ExemploExemploAlgoritmo “exemplo caso”Algoritmo exemplo_caso
Var sexo: literal
Inicioescreval(“Digite seu sexo (M ou F): ”)escreval( Digite seu sexo (M ou F): )leia(sexo)
escolha(sexo)caso “M”
escreval(“O usuário é homem”)escreval( O usuário é homem )caso “F”
escreval(“O usuário é mulher”)outrocaso
escreval(“Erro de caractere!”)fimescolhafimescolha
fimalgoritmo
Exemplo 2Exemplo 2Algoritmo “exemplo caso 2”Algoritmo exemplo_caso_2
Var time: literal
Inicioescreval(“Digite seu time: ”)escreval( Digite seu time: )leia(time)
escolha(time)caso “sport”
escreval(“Parabéns!!!”)escreval( Parabéns!!! )outrocaso
escreval(“Meus pêsames!”)fimescolha
fimalgoritmofimalgoritmo
ExercíciosExercícios
• Faça um algoritmo que lê um número de 1 a 7 e informa o dia da semana correspondente sendoinforma o dia da semana correspondente, sendo domingo o número 1. Caso o número esteja fora da faixa o algoritmo deverá exibir umada faixa, o algoritmo deverá exibir uma mensagem de erro;
ExercíciosExercícios
• Faça um algoritmo que receba dois números, um caractere que representa uma operaçãoum caractere que representa uma operação matemática (+, -, *, /) e efetue o cálculo matemático baseado na escolha do usuário Omatemático baseado na escolha do usuário. O resultado deverá ser exibido em seguida;
Estruturas de Repetição
• Até o momento, quando existia a necessidade de repetir uma ou mais instruções, tínhamos que digitá-las novamente;
• Tal solução é ineficiente, considerando que quanto maior o número de repetições maior será o número de linhas de código;
• Solução: utilizar estruturas de repetição;
Estruturas de Repetição
• São estruturas sintáticas que permitem a repetição de um trecho de algoritmo em uma determinada quantidade de iterações ou de acordo com um critério (condição);
• Em Portugol, temos 3 estruturas de repetição: enquanto...faca, repita...até, para...faca;
Enquanto...faca
• Nesta estrutura, uma condição lógica é avaliada. Caso a condição seja atendida, sua lista de instruções será executada;
• A execução da lista é repetida até que a avaliação da condição retorne FALSO;
Enquanto...faca• Utilizamos as palavras reservadas ENQUANTO,
FACA e FIMENQUANTO para formar o laço de repetição;
• Forma geral:
enquanto (condição) faca // lista de instruções fimenquanto
Enquanto...faca• Exemplo: Algoritmo que lê vários números positivos e
exibe a raiz quadrada de cada um; Algoritmo "exemplo_enquanto" Var numero: real Inicio Leia(numero) Enquanto (numero>=0) faca Escreval(numero^0.5) Leia(numero) Fimenquanto Fimalgoritmo
Enquanto...faca• Exemplo: Algoritmo que escreve números entre 1 e
10; Algoritmo "exemplo_enquanto" Var numero: inteiro Inicio Numero <- 1 Enquanto (numero<=10) faca Escreval(numero) Numero <- numero + 1 Fimenquanto Fimalgoritmo
Exercícios
• Faça um algoritmo que lê repetidamente números inteiros positivos. O algoritmo deverá encerrar a leitura dos valores quando um número negativo for digitado;
Exercícios
• Faça um algoritmo que lê o sexo de 10 pessoas (M ou F). O mesmo deverá contar e exibir a quantidade de homens e mulheres;
Exercícios
• Faça um algoritmo que lê repetidamente a altura de várias pessoas, até que uma altura negativa seja digitada. O algoritmo deverá calcular e exibir a média das alturas lidas;
Recommended