Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Algoritmos 01 - Semana 08 - Estruturas de repetição

920 views

Published on

Algoritmos 01 - Semana 08 - Estruturas de repetição

Published in: Education
  • Be the first to comment

Algoritmos 01 - Semana 08 - Estruturas de repetição

  1. 1. Algoritmo 1 Semana 08 ESTRUTURAS DE REPETIÇÃO 1
  2. 2. Estruturas de Repetição (Parte 01) ENQUANTO... FAÇA REPITA ATÉ
  3. 3. Enquanto... Faça
  4. 4. Enquanto... Faça  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: enquanto <expressão lógica ou relacional> faca <lista de comandos> fimenquanto  Vamos ver um exemplo....
  5. 5. Enquanto... Faça 1. algoritmo “comEnquanto” 2. var 3. i: numerico 4. inicio 5. i  3 6. enquanto i >=0 faca 7. escreva (i*2) 8. i  i - 1 9. fimenquanto 10. fimalgoritmo I = 3 6 I = 2 4 I = 1 2 I = 0 0 I = -1
  6. 6. Repita... Até...
  7. 7. Repita... Até...  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 é: repita <lista de comandos> ate <expressão lógica ou relacional>
  8. 8. Repita... Até... 1. algoritmo “comRepita” 2. var 3. i: numerico 4. inicio 5. i  3 6. repita 7. se i >=0 entao 8. escreva (i*2) 9. fimse 10 i  i-1 11. ate i<=0 12. fimalgoritmo I = 3 6 I = 2 4 I = 1 2 I = 0
  9. 9. Exercícios... Exercícios...
  10. 10. Algoritmo que escreve os números de 1 a 10. 1. algoritmo "DemonstraRepeticao" 2. VAR 3. i: INTEIRO 4. inicio 5. i 1 6. repita 7. escreva (i) 8. I  i + 1 9. ate i > 10 10. fimalgoritmo 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.
  11. 11. Algoritmo que escreve os números pares de 10 a 2. 1. algoritmo "DecrementoNumerosPares" 2. var 3. i: inteiro 4. inicio 5. i <- 10 6. Repita 7. escreva (i) 8. i <- i - 2 9. ate i = 0 10. Fimalgoritmo
  12. 12. Algoritmo com erro (Loop Infinito) 1. algoritmo “laçoInfinito” 2. VAR 3. Contador: numerico 4. inicio 5. repita 6. Contador <- 1 7. Contador <- Contador + 1 8. ate Contador = 10 9. fimalgoritmo 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. 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.
  13. 13. Algoritmo Consertado 1. algoritmo “laçoInfinito Consertado” 2. VAR 3. Soma: REAL 4. inicio 5. Soma <- 1 6. repita 7. Soma <- Soma + 2 8. ate Soma > 10 9. escreva (soma) 10. fimalgoritmo Quando ocorrer laço infinito no Visualg você ficará sem comunicação. Procure dar Ctrl+ALT+DEL e 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. 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. 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.
  14. 14. Exemplo de Menu  1. algoritmo "Menu"  2. VAR  3. opcao: inteiro  4. inicio  5. repita  6. escreval ("Cadastro de clientes")  7. escreval ("1-Incluir")  8. escreval ("2-Alterar")  9. escreval ("3-Consultar")  10. escreval ("4-Excluir")  11. escreval ("5-Sair")  12. leia(opcao)  13. ate opcao = 5  14. fimalgoritmo
  15. 15. Algoritmo que lê diversos números positivos e escreve, para cada um, sua raiz quadrada. Usando estrutura Enquanto Usando estrutura Repita 1. algoritmo “comEnquanto” 2. var 3. i: numerico 4. inicio 5. leia (i) 6. enquanto i >=0 faca 7. escreva (i^0.5) 8. leia (i) 9. fimenquanto 10. fimalgoritmo 1. algoritmo “comRepita” 2. var 3. i: numerico 4. inicio 5. repita 6. leia (i) 7. se i >=0 entao 8. escreva (i^0.5) 9. fimse 10. ate i<0 11. fimalgoritmo
  16. 16. Exercicio  Faça um algoritmo que leia indefinidos números inteiros dados pelo usuário até que ele digite 0.  Imprima:  Total de números digitados  Soma dos números digitados  Media dos números digitados 16

×