algoritmo e programação
DESCRIPTION
Algoritmo e Programação. Tathiana E. Silva ([email protected]). Estruturas de Repetição. Para repetir um conjunto de procedimentos até que determinado objetivo seja atingido, que é quando a repetição se encerra. - PowerPoint PPT PresentationTRANSCRIPT
![Page 2: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/2.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Para repetir um conjunto de procedimentos até que determinado objetivo seja atingido, que é quando a repetição se encerra.Todas as estruturas de repetição tem em comum o fato de haver uma condição de controle (expressão lógica) que é testada em cada ciclo para determinar se a repetição prossegue ou não.
Ex: calcule a média aritmética das notas de 30 alunos; calcule a média aritmética de vários valores digitados até que o número 0 seja digitado; calcular a expressão Sn = 11 + 22 + 33 + ... + nn.
![Page 3: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/3.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Existem 3 estruturas de repetição e a diferença básica entre elas é o momento no qual a condição de controle será executada:
para-faça tem embutida um mecanismo de controle para determinar quando a repetição deverá ser terminada;
enquanto-faça primeiro testa a condição para depois realizar o bloco de comando;
repita-até primeiro executa o bloco para depois realizar o teste.
![Page 4: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/4.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Para casos onde se deseja executar os comandos um número fixo de vezes, onde este número já é conhecido, existe a estrutura para-faça:
para <variável> de <valor-inicial> ate <valor-limite> faca <seqüência-de-comandos>fimpara
A <seqüência-de-comandos> será executada cada vez que a variável receber um valor, começando com o <valor-inicial> e indo até o <valor-limite>, sendo incrementada de um em um.
![Page 5: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/5.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex1: criar um algoritmo que escreva os números de 1 a 10 em oredem crescente.
algoritmo "exemplo1"var j: inteiroinicio para j de 1 ate 10 faca escreva (j:3) fimparafimalgoritmo
![Page 6: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/6.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex2: criar um algoritmo que leia 5 nomes e escreva-os na ordem em que foram lidos.
algoritmo "exemplo2"var nome : caracter I : inteiroinicio para I de 1 ate 5 faca escreval (“Entre com o nome: “) leia(nome) escreval (I,” - “,nome) fimparafimalgoritmo
![Page 7: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/7.jpg)
Estruturas de Estruturas de CondiçãoCondição
Execução:
Número Nome Impressão
1 José 1 - José
2 Antônio 2 - Antônio
3 João 3 - João
4 Maria 4 - Maria
5 Júlia 5 - Júlia
![Page 8: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/8.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Para casos onde se deseja que o incremento seja feito de valores diferentes de 1 deve-se utilizar a opção passo no comando:
para <variável> de <valor-inicial> ate <valor-limite> passo <incremento> faca <seqüência-de-comandos>fimpara
O incremento é o valor será acrescentado à variável contadora em cada repetição. Pode-se definir um valor negativo também.
![Page 9: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/9.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex3: criar um algoritmo que escreva os números de 1 a 10 em oredem decrescente.
algoritmo "exemplo3"var j: inteiroinicio para j de 10 ate 1 passo -1 faca escreva (j:3) fimparafimalgoritmo
![Page 10: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/10.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Quando não se sabe de antemão quantas repetições serão realizadas pode-se utilizar outra estrutura de repetição:
enquanto <condição-controle> faca <seqüência-de-comandos>fimenquanto
Antes de entrar na repetição, a <condição-controle> é avaliada, caso seja verdadeira, a <sequencia-de-comandos> será executada. Ao final avalia-se a <condição-controle> novamente. Caso seja falso, o algoritmo sai da estrutura de repetição.
![Page 11: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/11.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex4: criar um algoritmo que escreva os números de 1 a 10 em oredem crescente.
algoritmo "exemplo4"var j: inteiroinicio j <- 1 enquanto j <= 10 faca escreva (j:3) j <- J + 1 fimenquantofimalgoritmo
![Page 12: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/12.jpg)
Estruturas de Estruturas de CondiçãoCondição
Como essa estrutura testa sua condição de parada antes de executar sua seqüência de comandos, esta seqüência poderá ser executada zero ou mais vezes.
Ex5: criar um algoritmo que multiplique todos os valores lidos até que o número 0 (zero) seja digitado.
![Page 13: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/13.jpg)
Estruturas de Estruturas de CondiçãoCondição
algoritmo “exemplo5”var MULT, NUM: realinicio MULT <- 1 escreva (“Entre com um número (0 - sai): “) leia (NUM) enquanto NUM <> 0 faça MULT <- MULT*NUM escreva (“Entre com um número (0 - sai): “) leia (NUM) fim-enquanto escreva (“O produto dos valores lidos é: “, MULT)fimalgoritmo
![Page 14: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/14.jpg)
Estruturas de Estruturas de RepetiçãoRepetição
Existe outra forma de realizar repetições sem saber de antemão quantas serão realizadas:
repita <seqüência-de-comandos>ate <condição-controle>
Como essa estrutura testa sua condição de parada depois de executar sua seqüência de comandos, esta seqüência poderá ser executada uma ou mais vezes.
![Page 15: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/15.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex6: criar um algoritmo que escreva os números de 1 a 10 em oredem crescente.
algoritmo "exemplo6"var j: inteiroinicio j <- 1 repita escreva (j:3) j <- J + 1 ate j > 10fimalgoritmo
![Page 16: Algoritmo e Programação](https://reader036.vdocuments.com.br/reader036/viewer/2022082404/56813954550346895da0f4e4/html5/thumbnails/16.jpg)
Estruturas de Estruturas de CondiçãoCondição
Ex7: criar um algoritmo que multiplique todos os valores lidos até que o número 0 (zero) seja digitado.
algoritmo “exemplo7”var MULT, NUM: realinicio MULT <- 1 repita escreva (“Entre com um número (0 - sai): “) leia (NUM) se NUM <> 0 entao MULT <- MULT*NUM fimse ate NUM <> 0 escreva (“O produto dos valores lidos é: “, MULT)fimalgoritmo