Algoritmos e programação - Aula 6

20
P fº Th Mi ProThyago Maia Algoritmos e Programação Aula 6

Transcript of Algoritmos e programação - Aula 6

P fº Th M iProfº Thyago Maia

Algoritmos e Programação

Aula 6

S á iSumário

Estruturas Condicionais

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;

Sumário

• Estruturas de Repetição

• ENQUANTO...FACA

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;

Exercícios

• Faça um algoritmo que receba os placares de 10 partidas entre Sport e Flamengo. Baseado nos placares lidos, o algoritmo deverá apresentar o nome do time que venceu mais confrontos.