Algoritmo e Programação

16
Algoritmo e Algoritmo e Programação Programação Tathiana E. Silva ([email protected])

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 Presentation

Transcript of Algoritmo e Programação

Page 1: Algoritmo e Programação

Algoritmo e Algoritmo e ProgramaçãoProgramação

Tathiana E. Silva ([email protected])

Page 2: Algoritmo e Programação

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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