Algoritmo 2 – Aula 3<br />MA12N<br />Prof Eder SamaniegoVillalba<br />
Estruturas de Repetição (Parte 01)<br />Enquanto... Faça<br />Repita até<br />
Enquanto... Faça<br />
Enquanto... Faça<br />Na estrutura enquanto..faca, a expressão lógica é avaliada e, se ela for verdadeira, a lista de coma...
Enquanto... Faça<br />1. algoritmo “comEnquanto”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. i 3<br />6. enqua...
Repita... Até...<br />
Repita... Até...<br />Nessa estrutura, todos os comandos da lista são executados e uma expressão lógica é avaliada. Isto s...
Repita... Até...<br />1. algoritmo “comRepita”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. i  3<br />6. repita...
Exercícios... Exercícios...<br />
Algoritmo que escreve os números de 1 a 10.<br />1. algoritmo "DemonstraRepeticao"<br />2. VAR<br />3. i: INTEIRO<br />4. ...
Algoritmo que escreve os números pares de 10 a 2.<br />1. algoritmo "DecrementoNumerosPares"<br />2. var<br />3. i: inteir...
Algoritmo com erro (Loop Infinito)<br />1. algoritmo “laçoInfinito”<br />2. VAR<br />3. Contador: numerico<br />4. inicio<...
Algoritmo Consertado<br />1. algoritmo “laçoInfinito Consertado”<br />2. VAR<br />3. Soma: REAL<br />4. inicio<br />5. Som...
Exemplo de Menu<br />1. algoritmo "Menu"<br />2. VAR<br />3. opcao: inteiro<br />4. inicio<br />5. repita<br />6. escreval...
Algoritmo que lê diversos números positivos e escreve, para cada um, sua raiz quadrada.<br />Usando estrutura Enquanto<br ...
Upcoming SlideShare
Loading in...5
×

Aula 03 - Estruturas de repetição

2,007

Published on

Algoritmo 2
MA12N

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,007
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
67
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Aula 03 - Estruturas de repetição

  1. 1. Algoritmo 2 – Aula 3<br />MA12N<br />Prof Eder SamaniegoVillalba<br />
  2. 2. Estruturas de Repetição (Parte 01)<br />Enquanto... Faça<br />Repita até<br />
  3. 3. Enquanto... Faça<br />
  4. 4. Enquanto... Faça<br />Na estrutura enquanto..faca, a expressão lógica é avaliada e, se ela for verdadeira, a lista de comandos é executada. Isso se repete até que a condição seja falsa. Veja a sua forma geral:<br />enquanto <expressão lógica ou relacional> faca<br /><lista de comandos><br />fimenquanto<br />Vamos ver um exemplo....<br />
  5. 5. Enquanto... Faça<br />1. algoritmo “comEnquanto”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. i 3<br />6. enquanto i >=0 faca<br />7. escreva (i*2)<br />8. i i - 1<br />9. fimenquanto<br />10. fimalgoritmo<br />I = 3 <br />6<br />I = 2 <br />4<br />I = 1 <br />2<br />I = 0 <br />0<br />I = -1 <br />
  6. 6. Repita... Até...<br />
  7. 7. Repita... Até...<br />Nessa estrutura, todos os comandos da lista são executados e uma expressão lógica é avaliada. Isto se repete até que a avaliação da condição resulte em FALSO, quanto então o próximo comando a ser executado é o comando imediatamente após o ate. Cada repetição da lista de comandos também é chamada de iteração e essa estrutura também é chamada de laço de repetição. Sua forma geral é:<br />repita<br /><lista de comandos><br />ate <expressão lógica ou relacional><br />
  8. 8. Repita... Até...<br />1. algoritmo “comRepita”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. i  3<br />6. repita<br />7. se i >=0 entao<br />8. escreva (i*2)<br />9. fimse<br />10 i  i-1<br />11. ate i<=0<br />12. fimalgoritmo<br />I = 3 <br />6<br />I = 2 <br />4<br />I = 1 <br />2<br />I = 0 <br />
  9. 9. Exercícios... Exercícios...<br />
  10. 10. Algoritmo que escreve os números de 1 a 10.<br />1. algoritmo "DemonstraRepeticao"<br />2. VAR<br />3. i: INTEIRO<br />4. inicio<br />5. i1<br />6. repita<br />7. escreva (i)<br />8. I i + 1<br />9. ate i > 10<br />10. fimalgoritmo<br />No exemplo, a variável i controla o número de repetições do laço. Normalmente, a variável de controle do laço recebe um valor inicial, é incrementada (ou decrementada) de um valor constante no laço e tem seu valor testado no final do laço. Ao chegar a um determinado valor, o laço é interrompido. A inicialização da variável contadora deve acontecer fora do laço, antes do seu início.<br />
  11. 11. Algoritmo que escreve os números pares de 10 a 2.<br />1. algoritmo "DecrementoNumerosPares"<br />2. var<br />3. i: inteiro<br />4. inicio<br />5. i <- 10<br />6. Repita<br />7. escreva (i)<br />8. i <- i - 2<br />9. ate i = 0<br />10. Fimalgoritmo<br />
  12. 12. Algoritmo com erro (Loop Infinito)<br />1. algoritmo “laçoInfinito”<br />2. VAR<br />3. Contador: numerico<br />4. inicio<br />5. repita<br />6. Contador <- 1<br />7. Contador <- Contador + 1<br />8. ate Contador = 10<br />9. fimalgoritmo<br />Um cuidado fundamental que o construtor do algoritmo deve ter é o de certificar-se que a condição para que sejam mantidas as iterações torne-se, em algum momento, falsa, para que o algoritmo não entre em um laço infinito.<br />No exemplo, a execução do algoritmo entra em um laço infinito porque a inicialização da variável Contador (instrução Contador <- 1) deveria ser feita antes do comando repita, ou seja, antes do laço. No exemplo, ela sempre voltará a ser 1 e nunca alcançará o valor 10.<br />
  13. 13. Algoritmo Consertado<br />1. algoritmo “laçoInfinito Consertado”<br />2. VAR<br />3. Soma: REAL<br />4. inicio<br />5. Soma <- 1<br />6. repita<br />7. Soma <- Soma + 2<br />8. ate Soma > 10<br />9. escreva (soma)<br />10. fimalgoritmo<br />Quando ocorrer laço infinito no Visualg você ficará sem comunicação. Procure dar Ctrl+ALT+DELe selecionar o programa Visualg e clicar no botão finalizar. Não se preocupe com seu algoritmo, pois quando ocorre isso o Visualg salva automaticamente.<br />Para recuperar seu algoritmo basta abrir Visualg novamente que mostrará uma janela, perguntando se deseja recuperar ou não o algoritmo perdido no laço infinito.<br />Se você sabe que vai ocorrer um laço infinito e mesmo assim quer executar seu algoritmo, procura executar passo a passo pressionando a tecla F8 para não trancar.<br />
  14. 14. Exemplo de Menu<br />1. algoritmo "Menu"<br />2. VAR<br />3. opcao: inteiro<br />4. inicio<br />5. repita<br />6. escreval ("Cadastro de clientes")<br />7. escreval ("1-Incluir")<br />8. escreval ("2-Alterar")<br />9. escreval ("3-Consultar")<br />10. escreval ("4-Excluir")<br />11. escreval ("5-Sair")<br />12. leia(opcao)<br />13. ate opcao = 5<br />14. fimalgoritmo<br />
  15. 15. Algoritmo que lê diversos números positivos e escreve, para cada um, sua raiz quadrada.<br />Usando estrutura Enquanto<br />Usando estrutura Repita<br />1. algoritmo “comEnquanto”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. leia (i)<br />6. enquanto i >=0 faca<br />7. escreva (i^0.5)<br />8. leia (i)<br />9. fimenquanto<br />10. fimalgoritmo<br />1. algoritmo “comRepita”<br />2. var<br />3. i: numerico<br />4. inicio<br />5. repita<br />6. leia (i)<br />7. se i >=0 entao<br />8. escreva (i^0.5)<br />9. fimse<br />10. ate i<0<br />11. fimalgoritmo<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×