Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Comandos de Repetição Professor Daniel Aguiar daniel.aguiar@ifrn.edu.br 1 Roteiro Introdução Comandos de Repetição Comandos com teste no início; Comandos com teste no fim; Comparação entre os comandos Informática Aplicada 2 Introdução Aula passada estudamos comandos de desvio... Expressões lógicas... Vamos continuar com uma outra técnica em linguagens de programação: comandos de repetição; Informática Aplicada 3 Comandos de Repetição Usamos quando necessitamos que um determinado trecho de código se repita várias vezes; A quantidade de repetições pode ser fixa ou pode depender de alguma condição; Informática Aplicada 4 Comandos de Repetição As estruturas de repetição (também chamadas de laços de repetição) são classificadas em 3 tipos: Repetição com teste no início do laço; Repetição com teste no final do laço; Repetição com variável de controle; Informática Aplicada 5 Repetição com Teste no Início Utilizamos a estrutura “enquanto ... faça”; Esta estrutura repete uma sequencia de comandos enquanto uma determinada condição for verdadeira; Esta condição é determinada por um expressão lógica; Informática Aplicada 6 Repetição com Teste no Início Sintaxe: A expressão lógica é avaliada antes de cada repetição do laço; O fimenquanto representa o fim da sequencia de comandos. Informática Aplicada 7 enquanto <expressão lógica> faca <sequencia de comandos> fimenquanto Repetição com Teste no Início Sintaxe: Sempre que a execução atinge o fimenquanto retorna-se ao início do laço para que a expressão lógica seja avaliada novamente. Se o resultado dessa avaliação for VERDADEIRO, a sequencia de comandos será executada mais uma vez. Caso contrário, a execução prosseguirá a partir do primeiro comando após o fimenquanto; Informática Aplicada 8 enquanto <expressão lógica> faca <sequencia de comandos> fimenquanto Exemplo Crie um algoritmo para escrever 5 vezes a frase “Informática Aplicada!”. algoritmo “repeticao” var inicio escreval(“Informática Aplicada”) escreval(“Informática Aplicada”) escreval(“Informática Aplicada”) escreval(“Informática Aplicada”) escreval(“Informática Aplicada”) fimalgoritmo Informática Aplicada 9 Exemplo Se tivéssemos que escrever esta mensagem 1000 vezes? Neste caso, é mais apropriado usarmos um comando de repetição! Informática Aplicada 10 Exemplo algoritmo “repeticao” var contador: inteiro inicio contador := 1 enquanto (contador <= 1000) faca escreval (“Informática Aplicada”) contador := contador + 1 fimenquanto fimalgoritmo Informática Aplicada 11 Exemplo algoritmo “repeticao” var contador: inteiro inicio contador := 1 enquanto (contador <= 1000) faca escreval (“Informática Aplicada”) contador := contador + 1 fimenquanto fimalgoritmo Informática Aplicada 12 Primeiro, é preciso declarar uma variável para ser utilizada no teste da condição da repetição (variável de controle). Exemplo algoritmo “repeticao” var contador: inteiro inicio contador := 1 enquanto (contador <= 1000) faca escreval (“Informática Aplicada”) contador := contador + 1 fimenquanto fimalgoritmo Informática Aplicada 13 Em seguida, devemos inicializá-la. Exemplo algoritmo “repeticao” var contador: inteiro inicio contador := 1 enquanto (contador <= 1000) faca escreval (“Informática Aplicada”) contador := contador + 1 fimenquanto fimalgoritmo Informática Aplicada 14 Passo seguinte, identificar a condição de parada do laço. Exemplo algoritmo “repeticao” var contador: inteiro inicio contador := 1 enquanto (contador <= 1000) faca escreval (“Informática Aplicada”) contador := contador + 1 fimenquanto fimalgoritmo Informática Aplicada 15 Por fim, devemos atualizar o valor da variável de controle. Exemplo O que aconteceria se não atualizássemos a nossa variável de controle? Nosso laço seria infinito! O exemplo anterior possui um número fixo de repetições. E quando temos um número indeterminado de repetições? Por exemplo, um algoritmo para comer um cacho de uva. Informática Aplicada 16 Exemplo Algoritmo para comer um cacho de uva: Não se sabe ao certo quantas uvas tem no cacho; Sempre é preciso identificar se há ou não uvas no cacho para continuar comendo... Informática Aplicada 17 Exemplo algoritmo “cacho_de_uva” var ha_uvas_no_cacho: logico inicio escreval (“Há uvas no cacho? Digite verdadeiro ou falso: ”) leia (ha_uvas_no_cacho) enquanto (ha_uvas_no_cacho) faca escreval (“Retire uma uva.”) escreval (“Ainda há uvas no cacho? Digite verdadeiro ou falso: ”) leia (ha_uvas_no_cacho) fimenquanto escreval (“Não há mais uvas...”) fimalgoritmo Informática Aplicada 18 Repetição com Teste no Fim Estrutura “Repita ... até”; Sintaxe: Repita indica o início do laço; Ate <expressão lógica> indica o fim da sequencia de comandos a serem repetidos; Informática Aplicada 19 repita <sequencia de comandos> ate <expressão lógica> Repetição com Teste no Fim Estrutura “Repita ... até”; Sintaxe: A cada momento que a execução do programa chega no comando Ate <expressão lógica>, a expressão lógica é avaliada. Se ela for FALSO, a execução retorna para o início do repita; Caso contrário, a execução continua com o primeiro comando após esta linha; Informática Aplicada 20 repita <sequencia de comandos> ate <expressão lógica> Exemplo Crie um algoritmo que escreva os números de 1 a 5. algoritmo “numeros_de_1_a_5” var num : inteiro inicio num := 1 repita escreval (num) num := num +1 ate num > 5 fimalgoritmo Informática Aplicada 21 Exemplo Crie um algoritmo que escreva os números de 1 a 5. algoritmo “numeros_de_1_a_5” var num : inteiro inicio num := 1 repita escreval (num) num := num +1 ate num > 5 fimalgoritmo Informática Aplicada 22 Declarar uma variável de controle. Exemplo Crie um algoritmo que escreva os números de 1 a 5. algoritmo “numeros_de_1_a_5” var num : inteiro inicio num := 1 repita escreval (num) num := num +1 ate num > 5 fimalgoritmo Informática Aplicada 23 Devemos inicializá-la. Exemplo Crie um algoritmo que escreva os números de 1 a 5. algoritmo “numeros_de_1_a_5” var num : inteiro inicio num := 1 repita escreval (num) num := num +1 ate num > 5 fimalgoritmo Informática Aplicada 24 Devemos atualizá-la dentro dos comandos do repita. Exemplo Crie um algoritmo que escreva os números de 1 a 5. algoritmo “numeros_de_1_a_5” var num : inteiro inicio num := 1 repita escreval (num) num := num +1 ate num > 5 fimalgoritmo Informática Aplicada 25 Por fim, verificamos a condição. Comparação... Enquanto ... faça; Teste no Início; A sequencia de comandos é repetida zero ou mais vezes; Repita ... até; Teste no Fim; A sequencia de comandos é repetida 1 ou mais vezes; Informática Aplicada 26 Repetição com variável de controle Sabe-se o número de vezes que o trecho de código será repetido; Utilizamos uma variável de controle e fixamos os valores iniciais e finais para ela; Estrutura “para ... faça”; Informática Aplicada 27 Repetição com variável de controle Sintaxe: Informática Aplicada 28 para <variável> de <início> ate <limite> [passo <incremento >] faca <sequencia de comandos> fimpara <variável> É um contador (do tipo inteiro)que controla o número de repetições do laço. <início> Expressão que determina o valor inicial da variável antes da primeira repetição. Repetição com variável de controle Sintaxe: Informática Aplicada 29 para <variável> de <início> ate <limite> [passo <incremento >] faca <sequencia de comandos> fimpara <limite> Expressão que determina o valor máximoda variável. passo<incremento> É opcional.É uma expressão que determina o incremento que será acrescentado à variável de controle. Quando omitida, o valor é 1. Repetição com variável de controle Sintaxe: Informática Aplicada 30 para <variável> de <início> ate <limite> [passo <incremento >] faca <sequencia de comandos> fimpara fimpara É o fim da sequencia de comandos. Quando o programa alcança este ponto, é acrescentado a variável o valor<incremento>e comparado a<limite>. Se a variável for menor ou igual, a sequencia de comandos será executada mais uma vez. Caso contrário, prossegue-se para o primeiro comando após ofimpara. Exemplo Crie um algoritmo para escrever os número de 1 a 5. Informática Aplicada 31 algoritmo “De_um_a_Cinco” var numero : inteiro inicio para numero de 1 ate 5 faca escrava (numero) fimpara fimalgoritmo Exemplo Crie um algoritmo para escrever os números pares entre 0 e 20. Informática Aplicada 32 algoritmo “numeros_pares” var numero : inteiro inicio para numero de 0 ate 20 passo 2 faca escrava (numero) fimpara fimalgoritmo Dúvidas? Exercícios! Aviso: Aula dia 09/12/2013: tira-dúvidas. 1ª Prova 16/12/2013 (Última aula antes do recesso). Informática Aplicada 33
Compartilhar