SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Algoritmos e 
Programação 
Prof. Marcos Saúde 
marcosr@pitagoras.com.br
Estruturas de Repetição 
 Há ocasiões em que é necessário 
repetir um trecho do programa um 
determinado número de vezes; 
 Comandos apropriados para repetir 
determinados trechos de programa 
quantas vezes forem necessárias; 
 Exemplo: Algoritmo para somar os 
números de 1 a 100 - como fazer isso ?
Estruturas de Repetição 
 Teste Lógico no Início do Laço 
 É uma estrutura que faz um teste lógico no 
início de um laço, verificando se é 
permitido executar o trecho subordinado a 
esse laço; 
 enquanto (condição) faça ... fim enquanto;
Estruturas de Repetição 
 Verificação da condição é feita no início 
 Executa repetidamente enquanto a codificação for 
verdadeira 
 Exemplo: 
Algoritmo xxx; 
total, i:inteiro; 
inicio 
total = 0; 
i = 1; 
enquanto (i <= 10) faça 
total = total + i; 
i = i + 1; 
fimEnquanto; 
fim.
Estruturas de Repetição 
Exemplo no Pascal: 
Program xxx; 
var total, i :integer; 
begin 
total := 0; 
i := 1; 
while (i <= 10) do 
begin 
total = total + i; 
i = i + 1; 
end; 
end.
Exercícios 
 1) Faça um programa que leia dois números inteiros, o primeiro 
é o valor inicial de um contador, e o segundo é o valor final do 
contador (o valor inicial fornecido é inferior ao valor final). 
Usando o comando WHILE, escreva na tela uma contagem 
que comece no primeiro número lido, escreva os números 
seguintes colocando apenas um número em cada nova linha da 
tela, até chegar ao valor final indicado. 
 Exemplo de tela de saída: 
 Entre com o numero inicial da contagem: 5 
 Entre com o numero final da contagem: 9 
 5 
 6 
 7 
 8 
 9
Exercícios 
 2) Ler o nome de um aluno e suas duas 
notas A e B, e após calcular a média 
ponderada entre estas notas (A tem peso 1 e 
B tem peso 2). Repetir este procedimento 
para uma turma composta por três alunos, 
usando o comando WHILE. 
 Exemplo de tela de saída: 
 Entre com o nome do aluno: Joao da Silva 
 Entre com a nota A: 5.0 
 Entre com a nota B: 6.0 
 O aluno João da Silva tem uma média: 5.66 
 ... fazer o mesmo acima para mais dois alunos;
Estruturas de Repetição 
 Teste Lógico no Final do Laço 
 É uma estrutura que realiza um teste 
lógico no fim de um laço; 
 repita ... até (condição);
Estruturas de Repetição 
 Teste Lógico no Final do Laço 
 Verificação da condição é feita no final; 
 Executa repetidamente até a condição ser verdadeira; 
 Executa pelo menos uma vez o bloco de comandos; 
 Exemplo: 
Algoritmo yyy; 
total,i:inteiro; 
inicio 
total = 0; 
i = 1; 
repita 
total = total + i; 
i = i + 1; 
até (i > 10); 
fim.
Estruturas de Repetição 
 Exemplo no Pascal: 
Program yyy; 
total,i:integer; 
begin 
total := 0; 
i := 1; 
repeat 
total := total + i; 
i := i + 1; 
until (i > 10); 
end.
Exercícios 
 3) Fazer um programa que calcule e imprima o 
fatorial de um número fornecido pelo usuário, usando 
o comando WHILE. O fatorial de um número inteiro 
positivo é definido como o número multiplicado por 
ele menos 1, menos 2, etc até o valor 1. Por 
exemplo, o fatorial de 4 é 4x3x2x1=24. Por fim, 
aperfeiçoe o programa para que calcula o fatorial de 
um número até que o usuário digite não (use do ... 
while (condição);). 
 Exemplo de tela de saída: 
 Entre com um número: 5 
 O fatorial de 5 é 120 
 Outro número (sim/não) ? não (se responder sim, repete a 
operação, se não - sai do programa)
Exercícios 
 4) Faça um programa que leia dois números 
e apresente na tela as seguites opções para 
o usuário escolher: 
 [1] Soma dos números; 
 [2] Multiplicação dos números; 
 [3] Média dos números; 
 [4] Finalizar o programa; 
 O programa só deve ser finalizado quando o 
usuário escolher a opção 4, caso contrário o 
programa deve continuar apresentando as 
opções ao usuário;
Exercícios 
 5) O processo de localizar o valor maior 
(o valor máximo de um grupo de 
valores) é freqüentemente utilizado em 
aplicativos de computador. Implemente 
um aplicativo que receba como entrada 
uma série de 10 números e como saída 
apresente o maior valor entre os 
números inseridos;
Exercícios 
 6) Uma companhia de pulverização utiliza aviões para pulverizar lavouras. Os 
custos de pulverização dependem do tipo de praga e da área contratada, 
conforme o esquema: 
 Tipo 1: pulverização contra ervas daninhas, R$ 50,00 por acre; 
 Tipo 2: pulverização contra gafanhotos, R$ 100,00 por acre; 
 Tipo 3: pulverização contra broca, R$ 150,00 por acre ; 
 Tipo 4: pulverização contra tudo acima, R$ 250,00 por acre. 
 Se a área a ser pulverizada é maior que 100 acres, o fazendeiro recebe um 
desconto de 10%; 
 Preparar um programa que leia uma série de dados contendo as informações: 
 Numero de inscrição do fazendeiro, tipo de pulverização (código de 1 a 
4) e a área a ser pulverizada ( inteiro); 
 Exemplo: 10201 3 950 
 Para cada dado lido, calcular o custo total para o fazendeiro e imprimir seu 
número de inscrição seguido da sua conta. 
 O algoritmo termina quando o numero de inscrição 9999 for digitado.
Exercícios 
 7) Para realizar a totalização dos votos de uma eleição para um 
cargo majoritário com 3 candidatos, leia os votos de cada 
seção até que seja digitado número de seção 0 (zero) – que 
finalizará o programa; 
 Para cada seção são informados: o número de votos do candidato 
A, B, C, o número de votos brancos e nulos. Então determine: 
 a. O número de votantes 
 b. O total de votos de cada candidato 
 c. O total de votos brancos e de votos nulos 
 d. O total de votos válidos 
 e. O candidato com maior votação 
 f. Se a eleição foi válida e para isso o total de votos brancos mais votos 
nulos deve ser menor que o total de votos válidos; 
 g. Se haverá segundo turno, para não haver segundo turno basta que 
o total de votos do candidato vencedor seja maior que 50% dos votos 
válidos;
Exercícios 
 8) Faça um programa para exibir todos 
os números ímpares situados na faixa 
de 0 a 100. Para verificar se o número 
é ímpar, o programa deverá checar se 
o resto da divisão do número por 2 é 
igual a zero.
Exercícios 
 9) Uma agência bancária possui vários tipos de 
investimentos com rendimentos mensais, conforme a 
tabela abaixo: 
 Faça um programa que leia o valor que o cliente 
deseja investir e calcule e exiba os tipos de aplicação 
que ele pode fazer e qual será sua rentabilidade 
(lucro) em cada uma delas (se for mais de uma). O 
programa termina quando for digitado um valor de 
investimento nulo ou negativo;
Exercícios 
 10) Analise o seguinte algoritmo: 
Algoritmo Prova01; 
A, B, C, D, E, F :inteiro; 
Inicio ler(B); 
E ← 0; 
F ← 1; 
C ← 1; 
A ← 1; 
repita 
escrever(F); 
D ← F; 
F ← F + E; 
E ← D; 
D ← F * F; 
C ← C + D; 
A ← A + 1; 
até (A >= B); 
Fim. 
 Com base no algoritmo acima, e supondo que o valor fornecido para “B” na linha “ler(B)” 
seja 7, qual sequencia de valores o algoritmo apresentará como saída na linha 
“escrever(F)”?

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Algop - aula 05
Algop - aula 05Algop - aula 05
Algop - aula 05
 
Algop - aula 03
Algop - aula 03Algop - aula 03
Algop - aula 03
 
Aula03 repeticao
Aula03   repeticaoAula03   repeticao
Aula03 repeticao
 
Algoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em CAlgoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em C
 
Aula 3 algoritmos
Aula 3   algoritmosAula 3   algoritmos
Aula 3 algoritmos
 
Lista c
Lista cLista c
Lista c
 
Listaexerc algoritmos repeticao_b_solucao
Listaexerc algoritmos repeticao_b_solucaoListaexerc algoritmos repeticao_b_solucao
Listaexerc algoritmos repeticao_b_solucao
 
Algop - aula 07
Algop - aula 07Algop - aula 07
Algop - aula 07
 
Alguns algoritmos resolvidos
Alguns algoritmos resolvidosAlguns algoritmos resolvidos
Alguns algoritmos resolvidos
 
Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2
 
Exercicios resolvidos visuAlg
Exercicios resolvidos visuAlgExercicios resolvidos visuAlg
Exercicios resolvidos visuAlg
 
1ª lista de_algoritmos
1ª lista de_algoritmos1ª lista de_algoritmos
1ª lista de_algoritmos
 
Exercicios c
Exercicios cExercicios c
Exercicios c
 
05 repeticao
05 repeticao05 repeticao
05 repeticao
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
2ª lista avaliativa (1)
2ª lista   avaliativa (1)2ª lista   avaliativa (1)
2ª lista avaliativa (1)
 
Algoritmo e lógica de programação - aula 5
Algoritmo e lógica de programação - aula 5Algoritmo e lógica de programação - aula 5
Algoritmo e lógica de programação - aula 5
 
Lista Exercicios 05
Lista Exercicios 05Lista Exercicios 05
Lista Exercicios 05
 
Aula 3 - 06/04/11
Aula 3 - 06/04/11Aula 3 - 06/04/11
Aula 3 - 06/04/11
 
Relatorio de Estrutura de Dados
Relatorio de Estrutura de DadosRelatorio de Estrutura de Dados
Relatorio de Estrutura de Dados
 

Ähnlich wie Algop - aula 06

[Curso Java Basico] Exercicios Aulas 16 17
[Curso Java Basico] Exercicios Aulas 16 17[Curso Java Basico] Exercicios Aulas 16 17
[Curso Java Basico] Exercicios Aulas 16 17Loiane Groner
 
Laços de Repetição - C++
Laços de Repetição - C++Laços de Repetição - C++
Laços de Repetição - C++profjr
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)Thalles Anderson
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetiçãoTácito Graça
 
Algoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptAlgoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptRobertoPereiradePaiv
 
Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]Matheus Alves
 
mod2-mecanismos
mod2-mecanismosmod2-mecanismos
mod2-mecanismosdiogoa21
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_javaMirlem Pereira
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9Felipe Santos
 
03 Algoritmos - Exercicios.pdf
03 Algoritmos - Exercicios.pdf03 Algoritmos - Exercicios.pdf
03 Algoritmos - Exercicios.pdfEufrazinoPauloSoma
 
Aula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfAula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfCarlosCarlos73688
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfEnio Filho
 

Ähnlich wie Algop - aula 06 (20)

Algoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - LacosAlgoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - Lacos
 
[Curso Java Basico] Exercicios Aulas 16 17
[Curso Java Basico] Exercicios Aulas 16 17[Curso Java Basico] Exercicios Aulas 16 17
[Curso Java Basico] Exercicios Aulas 16 17
 
Laços de Repetição - C++
Laços de Repetição - C++Laços de Repetição - C++
Laços de Repetição - C++
 
logica-while.pptx
logica-while.pptxlogica-while.pptx
logica-while.pptx
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
 
Algoritmos Aula 08
Algoritmos Aula 08Algoritmos Aula 08
Algoritmos Aula 08
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetição
 
Algoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.pptAlgoritmos-SlidesA1_2016_03_01.ppt
Algoritmos-SlidesA1_2016_03_01.ppt
 
Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]Linguagem C - Comandos condicionais [exercícios]
Linguagem C - Comandos condicionais [exercícios]
 
Estrutura de repetição
Estrutura de repetiçãoEstrutura de repetição
Estrutura de repetição
 
mod2-mecanismos
mod2-mecanismosmod2-mecanismos
mod2-mecanismos
 
Exercicios facebook
Exercicios facebookExercicios facebook
Exercicios facebook
 
02 while
02 while02 while
02 while
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 
Lista exercícios
Lista exercíciosLista exercícios
Lista exercícios
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 
03 Algoritmos - Exercicios.pdf
03 Algoritmos - Exercicios.pdf03 Algoritmos - Exercicios.pdf
03 Algoritmos - Exercicios.pdf
 
Cea030.lista.04
Cea030.lista.04Cea030.lista.04
Cea030.lista.04
 
Aula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfAula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdf
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
 

Algop - aula 06

  • 1. Algoritmos e Programação Prof. Marcos Saúde marcosr@pitagoras.com.br
  • 2. Estruturas de Repetição  Há ocasiões em que é necessário repetir um trecho do programa um determinado número de vezes;  Comandos apropriados para repetir determinados trechos de programa quantas vezes forem necessárias;  Exemplo: Algoritmo para somar os números de 1 a 100 - como fazer isso ?
  • 3. Estruturas de Repetição  Teste Lógico no Início do Laço  É uma estrutura que faz um teste lógico no início de um laço, verificando se é permitido executar o trecho subordinado a esse laço;  enquanto (condição) faça ... fim enquanto;
  • 4. Estruturas de Repetição  Verificação da condição é feita no início  Executa repetidamente enquanto a codificação for verdadeira  Exemplo: Algoritmo xxx; total, i:inteiro; inicio total = 0; i = 1; enquanto (i <= 10) faça total = total + i; i = i + 1; fimEnquanto; fim.
  • 5. Estruturas de Repetição Exemplo no Pascal: Program xxx; var total, i :integer; begin total := 0; i := 1; while (i <= 10) do begin total = total + i; i = i + 1; end; end.
  • 6. Exercícios  1) Faça um programa que leia dois números inteiros, o primeiro é o valor inicial de um contador, e o segundo é o valor final do contador (o valor inicial fornecido é inferior ao valor final). Usando o comando WHILE, escreva na tela uma contagem que comece no primeiro número lido, escreva os números seguintes colocando apenas um número em cada nova linha da tela, até chegar ao valor final indicado.  Exemplo de tela de saída:  Entre com o numero inicial da contagem: 5  Entre com o numero final da contagem: 9  5  6  7  8  9
  • 7. Exercícios  2) Ler o nome de um aluno e suas duas notas A e B, e após calcular a média ponderada entre estas notas (A tem peso 1 e B tem peso 2). Repetir este procedimento para uma turma composta por três alunos, usando o comando WHILE.  Exemplo de tela de saída:  Entre com o nome do aluno: Joao da Silva  Entre com a nota A: 5.0  Entre com a nota B: 6.0  O aluno João da Silva tem uma média: 5.66  ... fazer o mesmo acima para mais dois alunos;
  • 8. Estruturas de Repetição  Teste Lógico no Final do Laço  É uma estrutura que realiza um teste lógico no fim de um laço;  repita ... até (condição);
  • 9. Estruturas de Repetição  Teste Lógico no Final do Laço  Verificação da condição é feita no final;  Executa repetidamente até a condição ser verdadeira;  Executa pelo menos uma vez o bloco de comandos;  Exemplo: Algoritmo yyy; total,i:inteiro; inicio total = 0; i = 1; repita total = total + i; i = i + 1; até (i > 10); fim.
  • 10. Estruturas de Repetição  Exemplo no Pascal: Program yyy; total,i:integer; begin total := 0; i := 1; repeat total := total + i; i := i + 1; until (i > 10); end.
  • 11. Exercícios  3) Fazer um programa que calcule e imprima o fatorial de um número fornecido pelo usuário, usando o comando WHILE. O fatorial de um número inteiro positivo é definido como o número multiplicado por ele menos 1, menos 2, etc até o valor 1. Por exemplo, o fatorial de 4 é 4x3x2x1=24. Por fim, aperfeiçoe o programa para que calcula o fatorial de um número até que o usuário digite não (use do ... while (condição);).  Exemplo de tela de saída:  Entre com um número: 5  O fatorial de 5 é 120  Outro número (sim/não) ? não (se responder sim, repete a operação, se não - sai do programa)
  • 12. Exercícios  4) Faça um programa que leia dois números e apresente na tela as seguites opções para o usuário escolher:  [1] Soma dos números;  [2] Multiplicação dos números;  [3] Média dos números;  [4] Finalizar o programa;  O programa só deve ser finalizado quando o usuário escolher a opção 4, caso contrário o programa deve continuar apresentando as opções ao usuário;
  • 13. Exercícios  5) O processo de localizar o valor maior (o valor máximo de um grupo de valores) é freqüentemente utilizado em aplicativos de computador. Implemente um aplicativo que receba como entrada uma série de 10 números e como saída apresente o maior valor entre os números inseridos;
  • 14. Exercícios  6) Uma companhia de pulverização utiliza aviões para pulverizar lavouras. Os custos de pulverização dependem do tipo de praga e da área contratada, conforme o esquema:  Tipo 1: pulverização contra ervas daninhas, R$ 50,00 por acre;  Tipo 2: pulverização contra gafanhotos, R$ 100,00 por acre;  Tipo 3: pulverização contra broca, R$ 150,00 por acre ;  Tipo 4: pulverização contra tudo acima, R$ 250,00 por acre.  Se a área a ser pulverizada é maior que 100 acres, o fazendeiro recebe um desconto de 10%;  Preparar um programa que leia uma série de dados contendo as informações:  Numero de inscrição do fazendeiro, tipo de pulverização (código de 1 a 4) e a área a ser pulverizada ( inteiro);  Exemplo: 10201 3 950  Para cada dado lido, calcular o custo total para o fazendeiro e imprimir seu número de inscrição seguido da sua conta.  O algoritmo termina quando o numero de inscrição 9999 for digitado.
  • 15. Exercícios  7) Para realizar a totalização dos votos de uma eleição para um cargo majoritário com 3 candidatos, leia os votos de cada seção até que seja digitado número de seção 0 (zero) – que finalizará o programa;  Para cada seção são informados: o número de votos do candidato A, B, C, o número de votos brancos e nulos. Então determine:  a. O número de votantes  b. O total de votos de cada candidato  c. O total de votos brancos e de votos nulos  d. O total de votos válidos  e. O candidato com maior votação  f. Se a eleição foi válida e para isso o total de votos brancos mais votos nulos deve ser menor que o total de votos válidos;  g. Se haverá segundo turno, para não haver segundo turno basta que o total de votos do candidato vencedor seja maior que 50% dos votos válidos;
  • 16. Exercícios  8) Faça um programa para exibir todos os números ímpares situados na faixa de 0 a 100. Para verificar se o número é ímpar, o programa deverá checar se o resto da divisão do número por 2 é igual a zero.
  • 17. Exercícios  9) Uma agência bancária possui vários tipos de investimentos com rendimentos mensais, conforme a tabela abaixo:  Faça um programa que leia o valor que o cliente deseja investir e calcule e exiba os tipos de aplicação que ele pode fazer e qual será sua rentabilidade (lucro) em cada uma delas (se for mais de uma). O programa termina quando for digitado um valor de investimento nulo ou negativo;
  • 18. Exercícios  10) Analise o seguinte algoritmo: Algoritmo Prova01; A, B, C, D, E, F :inteiro; Inicio ler(B); E ← 0; F ← 1; C ← 1; A ← 1; repita escrever(F); D ← F; F ← F + E; E ← D; D ← F * F; C ← C + D; A ← A + 1; até (A >= B); Fim.  Com base no algoritmo acima, e supondo que o valor fornecido para “B” na linha “ler(B)” seja 7, qual sequencia de valores o algoritmo apresentará como saída na linha “escrever(F)”?