Professora: Flávia Balbino da Costa
LINGUAGEM DE PROGRAMAÇÃO I
PARTE III
CONTEÚDO PROGRAMÁTICO:






Introdução à Programação
Estrutura de um algoritmo
Operadores e expressões
Estruturas de Decisão
Estruturas de Repetição
Procedures e Functions
ALGORITMOS DE ESTRUTURAS DE REPETIÇÃO

A repetição é a essência de muitas aplicações em
computadores. Um loop é uma estrutura de controle que
governa os processos de repetição num programa. Como as
estruturas de decisão, o loop delimita um bloco de comandos
para processamento especial.
ALGORITMOS DE ESTRUTURAS DE REPETIÇÃO
Três estruturas de repetição diferentes, cada qual com um
esquema diferente para o controle do processo de iteração
(repetição):

O loop PARA que especifica a priori o número de iterações;

O loop ENQUANTO que expressa uma condição sobre a qual o
loop continua. As iterações terminam quando a condição se
torna falsa;

O loop REPITA também contém uma expressão condicional de
controle, mas neste caso o loop continua até que a condição se
torne verdadeira (inverso do WHILE).
A ESTRUTURA DE REPETIÇÃO PARA...FAÇA

A Sintaxe da estrutura de repetição PARA .. FAÇA é a seguinte:
Para X de N até M [passo y] faça
<comando>
FimPara

O X é a variável que deve ser previamente declarada, o N é o
número que começará a contagem, M é o número até onde vai
a contagem, e o passo y só será necessário se você não quiser
que seja de 1 em 1.
PARA .. FAÇA
OBS: A estrutura de repetição PARA só é utilizada quando se
sabe quantas vezes será executada.
Exemplo:

Faça um programa que leia um valor para a variável X,
multiplique este valor por 3, guardando a resposta na variável
R. Repetir esta sequência por 5 vezes.
PARA .. FAÇA
Solução:
Programa Repetição
Var
I: Inteiro
X, R: Inteiro
Início
Para I de 1 até 5 passo 1 faça
Leia (X)
R← X*3
FimPara
Fim
PARA .. FAÇA
Exemplo2:

Faça um programa que escreva na tela todos os números
pares de 0 a 100.
PARA .. FAÇA
Solução:
Programa Pares
Var
I: Inteiro
Início
Para I de 0 até 100 passo 2 faça
Escreva (I)
FimPara
Fim
PARA .. FAÇA
Exemplo3:

Faça um programa que escreva na tela os números de 1 a
100 em ordem decrescente.

Para casa:
Faça um programa que calcule o fatorial do número 5. Use a
estrutura PARA.
PARA .. FAÇA
Solução:
Programa Decrescente
Var
I: Inteiro
Início
Para I de 100 até 1 passo -1 faça
Escreva (I)
FimPara
Fim
PARA .. FAÇA
Solução:
Algoritmo Fatorial
Var
I, fat: Inteiro
Início
fat ← 1
Para I de 1 até 4 passo 1 faça
fat ← fat * I
FimPara
Escreva (“Fatorial de 5 é:”, fat)
FimAlgoritmo
A ESTRUTURA DE REPETIÇÃO ENQUANTO

Diferentemente do loop PARA, ENQUANTO depende de uma
condição expressa para determinar a duração do processo de
repetição.

Num loop ENQUANTO a condição vem no início do mesmo e as
iterações continuam enquanto a condição é verdadeira. Dizemos
que o loop ENQUANTO testa a condição no início, se ela for falsa
no primeiro teste, não resultará nenhuma iteração.
ENQUANTO...FAÇA

A condição é uma expressão que é avaliada como verdadeiro
ou falso. A repetição continua enquanto a condição for
verdadeira. Normalmente, em algum ponto, a ação dentro do
loop comuta a condição para falso e o loop termina. Se a
condição não for alterada para falso teremos um loop infinito.
SINTAXE DA ESTRUTURA ENQUANTO...FAÇA
A Sintaxe da estrutura ENQUANTO é a seguinte:
Enquanto (condição) faça
<comando>
FimEnquanto


OBS: A estrutura de repetição ENQUANTO é utilizada quando
se sabe ou não quantas vezes será executada. Nesta
estrutura é necessária a leitura da variável de start (Ex:
cont:=1) antes do ENQUANTO e dentro dele é obrigatório
incrementar esta variável (Ex: cont:=cont+1).
ENQUANTO...FAÇA
Exemplo:

Faça um algoritmo para fazer a leitura de um valor para a
variável X, multiplicar esse valor por 3, guardar a resposta na
variável R. Repetir esta sequencia por 5 vezes.
ENQUANTO...FAÇA
Solução:
Algoritmo repetição
Var
X,R,Cont: Inteiro
Início
Cont ← 1
Enquanto (Cont <=5) faça
Leia (X)
R←X*3
Escreva (R)
Cont ← Cont + 1
FimEnquanto
FimAlgoritmo
A ESTRUTURA DE REPETIÇÃO REPITA

A declaração REPITA faz com que comandos sejam executados
repetidas vezes, até que certa condição seja satisfeita.

Como a condição é verificada no final do loop, todo loop REPITA
... ATÉ QUE é executado pelo menos uma vez.
REPITA...ATÉ QUE

Se a condição nunca assumir o valor true, o loop só para de
ser
executado
quando
o
programa
é
interrompido
manualmente (Ctrl+C ou Ctrl+Break). Por esse motivo, dentro
do loop deve ter um comando que tome a condição
verdadeira pelo menos uma vez.
SINTAXE DA ESTRUTURA REPITA...ATÉ QUE
A Sintaxe da estrutura ENQUANTO é a seguinte:
Repita
<comando>
Até que (condição)


OBS: Na estrutura de repetição REPITA o teste lógico é
executado no fim da estrutura. Isto significa que o loop será
executado pelo menos uma vez, antes de verificar a validade.
Nesta estrutura é necessária a leitura da variável de start (Ex:
cont:=1) antes do REPITA e dentro dele é obrigatório
incrementar esta variável (Ex: cont:=cont+1).
REPITA...ATÉ QUE
Exemplo:

Faça um algoritmo para fazer a leitura de um valor para a
variável X, multiplicar esse valor por 3, guardar a resposta na
variável R. Repetir esta sequencia por 5 vezes.
REPITA...ATÉ QUE
Solução:
Algoritmo repetição
Var
X,R,Cont: Inteiro
Início
Cont ← 0
Repita
Leia (X)
R←X*3
Escreva (R)
Cont ← Cont + 1
Até que (Cont=5)
FimAlgoritmo
Exercícios I:
1.
2.
3.
Faça um algoritmo que leia as notas de A1 e A2 de cinco
alunos. Depois calcule a média aritmética e mostre o
resultado em seguida. Utilize o comando PARA, ENQUANTO E
REPITA.
Faça um algoritmo que leia o modelo e a cor de 100 carros.
Depois deverá ser mostrada a quantidade de carros da cor
azul que foram lidos. Utilize o comando PARA.
Faça um algoritmo que leia as médias finais de uma turma
de 70 alunos. Depois calcule a média geral da turma. Se
este resultado for maior que 7, escreva na tela: “Parabéns à
turma!”. Caso a média geral seja menor que 7, escreva na
tela: “A turma precisa se empenhar mais!”. Utilize o
comando ENQUANTO.
Solução do exercício 1 – comando PARA
Algoritmo alunos
Var
I: Inteiro
A1, A2, Media: Real
Início
Para I de 1 até 5 passo 1 faça
Leia (A1, A2)
Media← (A1 + A2)/2
Escreva (Media)
FimPara
FimAlgoritmo
Solução do exercício 1 – comando ENQUANTO
Algoritmo alunos
Var
Cont: Inteiro
A1, A2, Media: Real
Início
Cont←1
Enquanto (Cont<=5) faça
Leia (A1, A2)
Media← (A1 + A2)/2
Escreva (Media)
Cont←Cont + 1
FimEnquanto
FimAlgoritmo
Solução do exercício 1 – comando REPITA
Algoritmo alunos
Var
Cont: Inteiro
A1, A2, Media: Real
Início
Cont←1
Repita
Leia (A1, A2)
Media← (A1 + A2)/2
Escreva (Media)
Cont←Cont + 1
Até que (Cont=5)
FimAlgoritmo
Solução do exercício 2 – comando PARA
Algoritmo carros
Var
Modelo, Cor: Literal
I, quant: Inteiro
Início
Para I de 1 até 100 passo 1 faça
Leia (Modelo)
Leia (Cor)
Se (Cor=‘Azul’) então
quant ← quant + 1
FimSe
FimPara
Escreva (quant)
FimAlgoritmo
Solução do exercício 3 – comando ENQUANTO
Algoritmo turma
Var
Media, TotalNotas, MediaGeral: Real
Cont: Inteiro
Início
Cont← 1
Enquanto (Cont<=70) faça
Leia (Media)
TotalNotas←TotalNotas + Media
Cont←Cont + 1
FimEnquanto
MediaGeral←TotalNotas / 70
Se (MediaGeral > 7) então
Escreva (‘Parabéns à turma!”)
Senão
Escreva (‘A turma precisa se empenhar mais!’)
FimSe
FimAlgoritmo
Exercícios II:
1.
2.
Faça um algoritmo que leia uma determinada quantidade de
nomes e notas de alunos. A leitura deverá ser interrompida
quando for digitada a palavra FIM no lugar do nome. Utilize
o comando Enquanto.
Dado um número indeterminado de funcionários, onde é
fornecido o Nome, número de dependentes e o número de
horas trabalhadas. Pede-se que seja impresso, para cada
funcionário, o seu Nome, salário bruto, salário líquido e o
valor descontado. A empresa, paga R$ 40,00 por hora de
trabalho, e R$ 125,55 por dependente, e ainda faz um
desconto de 12% sobre o salário bruto. Pede-se ainda que
seja impresso o total de funcionários da empresa, o total
gasto com salários, e o total descontado.
Exercícios II:
3.
Um hotel cobra R$ 300,00 por diária e mais uma taxa
adicional de serviços. Se a diária for menor que 15 a taxa é
de R$ 20,00. Se o número de diárias for igual a 15 a taxa é
de R$ 14,00 e se o número for maior que 15 a taxa é de R$
12,00. Considerando-se que se tenha 200 pessoas e para
cada pessoa tenha-se um registro contendo seu nome e o
número de diárias.
Solução do exercício 1 – comando ENQUANTO
Algoritmo Leitura
Var
Cont: Inteiro
Nome: Literal
Nota: Real
Início
Leia (Nome)
Enquanto (Nome<>’Fim’) faça
Leia (Nota)
Leia (Nome)
FimEnquanto
FimAlgoritmo
Download

Solução - Universidade Castelo Branco