19
Algoritmo e Programação Unidade II – Estruturas de Unidade II – Estruturas de Decisão e Repetição Decisão e Repetição Prof. Msc. Julio Furtado [email protected]

Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado [email protected]

Embed Size (px)

Citation preview

Page 1: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Algoritmo e Programação

Unidade II – Estruturas deUnidade II – Estruturas de

Decisão e RepetiçãoDecisão e Repetição

Prof. Msc. Julio [email protected]

Page 2: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Objetivo de Aprendizagem

Nesta unidade será apresentado ao aluno as estruturas de decisão e repetição existentes na programação de computadores, que possibilitam a construção de algoritmos mais complexos.

Page 3: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão

Condicional (Seleção Composta)

se L então A (senão B) fimse

Primeiramente, a condição L é avaliada, dando um valor lógico. Se este valor é V então o comando A é executado. Caso contrário, é executado o comando B (no caso de se L então A senão B) ou a execução do comando condicional é considerada terminada, passando-se ao comando seguinte, se houver.Ex.:

se x < y então z x senão z y fimseou

se y ≤ x então z y senão z x fimse

Page 4: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão Condicional

Exemplo:Algoritmo RecupVar Nome:Caractere; N1,N2,Media:Real;Inicio

Escreva(“Entre com o Nome do Aluno:”)Leia(Nome)Escreva(“Entre com a 1ª Nota do Aluno:”)Leia(N1)Escreva(“Entre com a 2ª Nota do Aluno:”)Leia(N2)Media (N1+N2)/2Se Media >= 7 Então Escreva(Nome+” está aprovado!”)Senão Escreva(Nome+” está de recuperação!”)Fimse

Fim

Page 5: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão

Condicional (Seleção Encadeada)

se (condição 1) entãose (condição 1) então

comando 1comando 1

senãosenão

se (condição 2) entãose (condição 2) então

comando 2comando 2

senãosenão

comando 3comando 3

fimsefimse

fimsefimse

Page 6: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão

Exercícios

1- Faça um algoritmo que leia um time de futebol 1- Faça um algoritmo que leia um time de futebol digitado pelo usuário, se o time digitado for digitado pelo usuário, se o time digitado for Paissandú o algoritmo deverá mostrar sua cidade Paissandú o algoritmo deverá mostrar sua cidade e a mensagem Campeão dos Campeões, se o e a mensagem Campeão dos Campeões, se o time digitado for Vasco, deverá mostrar sua time digitado for Vasco, deverá mostrar sua cidade e a mensagem Tetracampeão Brasileiro, cidade e a mensagem Tetracampeão Brasileiro, se o time for o Corinthians, deverá mostrar a sua se o time for o Corinthians, deverá mostrar a sua cidade e a mensagem Campeão Mundial, caso cidade e a mensagem Campeão Mundial, caso não seja digitado nenhum destes times o não seja digitado nenhum destes times o algoritmo deverá mostrar algoritmo deverá mostrar ““Time DesconhecidoTime Desconhecido””..

Page 7: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão

Exercícios

2 – Elabore um algoritmo para ler dois números e 2 – Elabore um algoritmo para ler dois números e mostrar se são iguais, ou se diferentes, mostrar o mostrar se são iguais, ou se diferentes, mostrar o maior e o menor. (nesta seqüência)maior e o menor. (nesta seqüência)

Page 8: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Controle

Estrutura de Seleção (Escolha)

escolha v caso v1:c1 caso v2:c2;...; caso vn:cn casocontrario: c fim escolha

Como exemplo, suponha que a variável i seja inteira:

escolha i caso 0: x sen(x) caso 1: x cos(x) caso 2: x tg(x) caso contrario: x x + 1fim escolha

Page 9: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Controle

Exercícios

1-1- Faça um algoritmo que leia um time de futebol Faça um algoritmo que leia um time de futebol escolhido pelo usuário, se o time escolhido for 1-escolhido pelo usuário, se o time escolhido for 1-Paysandu o algoritmo deverá mostrar sua cidade Paysandu o algoritmo deverá mostrar sua cidade e a mensagem Campeão dos Campeões, se o e a mensagem Campeão dos Campeões, se o time escolhido for 2-Vasco, deverá mostrar sua time escolhido for 2-Vasco, deverá mostrar sua cidade e a mensagem Tetracampeão Brasileiro, cidade e a mensagem Tetracampeão Brasileiro, se o time for o 3-Corinthians, deverá mostrar a se o time for o 3-Corinthians, deverá mostrar a sua cidade e a mensagem Campeão Mundial, sua cidade e a mensagem Campeão Mundial, caso não seja escolhido nenhum destes times o caso não seja escolhido nenhum destes times o algoritmo deverá mostrar algoritmo deverá mostrar ““Time DesconhecidoTime Desconhecido””..

Page 10: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Controle

Exercícios

2- Elabore o algoritmo calculadora. O Elabore o algoritmo calculadora. O usuário deverá digitar dois números e usuário deverá digitar dois números e mais a opção desejada (1-somar, 2-mais a opção desejada (1-somar, 2-subtrair, 3-multiplicar ou 4-dividir). Caso subtrair, 3-multiplicar ou 4-dividir). Caso o usuário digite a opção 1 o algoritmo o usuário digite a opção 1 o algoritmo deverá somar os dois números e mostrar deverá somar os dois números e mostrar o resultado. Caso seja digitada uma o resultado. Caso seja digitada uma opção diferente das 4 existentes o opção diferente das 4 existentes o algoritmo deverá mostrar a mensagem: algoritmo deverá mostrar a mensagem: ““Opção inválidaOpção inválida””..

Page 11: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Enquanto

enquanto L faça A fimenquanto

A execução é feita conforme o diagrama:

L

A

V

F

Page 12: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Enquanto

Por exemplo, se x e y são variáveis inteiras, o comando

enquanto x ≤ y faça x 2 * x fimenquanto

duplica o valor de x até que este exceda o de y.

Ex.:enquanto x ≠ y faça se x > y então x x – y senão y y – xfimenquanto

Page 13: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição Enquanto

Exemplo:Algoritmo Dieta // Para perder dois kilos por mêsVar PAtual,PPretend,Meses:Inteiro;Inicio

Escreva(“Entre com o Peso Atual:”)Leia(PAtual)Escreva(“Entre com o Peso Pretendido:”)Leia(PPretend)Meses 0Enquanto PAtual > PPretend faça

Meses Meses + 1PAtual PAtual - 2

FimEnquantoEscreva(“Quantidade de Meses para a Dieta:” +Meses)

Fim

Page 14: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Exercícios

1 – O piloto de fórmula 1 1 – O piloto de fórmula 1 ““Fernando AlonsoFernando Alonso”” está está liderando o campeonato com 78 pontos. O liderando o campeonato com 78 pontos. O segundo colocado é o piloto segundo colocado é o piloto ““Felipe MassaFelipe Massa”” com com 35 pontos. Sabendo que o líder não poderá mais 35 pontos. Sabendo que o líder não poderá mais correr a temporada por problemas de saúde e correr a temporada por problemas de saúde e que em cada prova o vencedor soma 12 pontos, que em cada prova o vencedor soma 12 pontos, construa um algoritmo que informe quantas construa um algoritmo que informe quantas provas o Felipe Massa tem que ganhar para se provas o Felipe Massa tem que ganhar para se tornar o Líder do Campeonato.tornar o Líder do Campeonato.

Page 15: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Exercícios

2 - Entrar com as duas notas (1AV e 2AV) 2 - Entrar com as duas notas (1AV e 2AV) de N alunos da turma e mostre para cada de N alunos da turma e mostre para cada aluno, o seu nome, a sua média e a sua aluno, o seu nome, a sua média e a sua situação (aprovado ou recuperação).situação (aprovado ou recuperação).

Page 16: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Para (Iteração)

para v de i até f (incr p) faça A fimpara

A variável v deve ser do tipo int, assim como os valores de i,f e p. A variável v é iniciada com i e o comando A é executado repetidamente com v tomando os valores i, i+p, i+2p,... Até que seu valor exceda f.

Page 17: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Para (Iteração)

Por exemplo, para somar os 100 primeiros números inteiros e mostrar o resultado, podemos utilizar o seguinte algoritmo:

Algoritmo SomaCemVar soma,i : inteiroinício

soma 0;para i de 1 até 100 (incr 1) faça

soma soma + ifimparaescreva(‘O resultado é: ’+soma)

fim

Page 18: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Repetição

Exercícios

1 – Crie um Algoritmo que escreva os números 1 – Crie um Algoritmo que escreva os números pares no intervalo de 1 a 600.pares no intervalo de 1 a 600.

2 – Entre com nome, nota da AV1 e nota da 2 – Entre com nome, nota da AV1 e nota da AV2 de 12 alunos. Crie um Algoritmo que AV2 de 12 alunos. Crie um Algoritmo que imprima uma listagem contendo: nome, nota imprima uma listagem contendo: nome, nota da AV1, nota da AV2 e média de cada aluno. da AV1, nota da AV2 e média de cada aluno. Ao final, calcule a média geral da turma.Ao final, calcule a média geral da turma.

Page 19: Algoritmo e Programação Unidade II – Estruturas de Decisão e Repetição Prof. Msc. Julio Furtado julio.furtado@gmail.com

Estrutura de Decisão e Repetição Atividade Pontuada (2,5 Pontos)

1 – Elabore um algoritmo para ler três números inteiros, 1 – Elabore um algoritmo para ler três números inteiros, mostrando-os de forma ordenada ascendentemente. (0,5 pt)mostrando-os de forma ordenada ascendentemente. (0,5 pt)

2 – Elabore o algoritmo Tv_Cabo. O usuário deverá digitar o canal 2 – Elabore o algoritmo Tv_Cabo. O usuário deverá digitar o canal desejado (1-Globo, 2-SBT, 3-Record ou 4-Cultura). Caso o desejado (1-Globo, 2-SBT, 3-Record ou 4-Cultura). Caso o usuário digite a opção 1 o algoritmo deverá mostrar a usuário digite a opção 1 o algoritmo deverá mostrar a mensagem mensagem ““Você escolheu o canal GloboVocê escolheu o canal Globo””, e assim para os , e assim para os demais canais. Caso seja digitada uma opção diferente das 4 demais canais. Caso seja digitada uma opção diferente das 4 existentes o algoritmo deverá mostrar a mensagem: existentes o algoritmo deverá mostrar a mensagem: ““Canal Canal inválidoinválido””. (1,0 pt). (1,0 pt)

3 – Prepara um algoritmo que monte e mostre a tabuada de 3 – Prepara um algoritmo que monte e mostre a tabuada de qualquer número inteiro positivo, cujos multiplicadores vão de qualquer número inteiro positivo, cujos multiplicadores vão de 0 a 10, utilizando uma estrutura de repetição. (1,0 pt)0 a 10, utilizando uma estrutura de repetição. (1,0 pt)