Вы находитесь на странице: 1из 21

Estruturas de Repetio Enquanto..

faa

Estruturas de Repetio Enquanto..Faa Contadores e Acumuladores

Existem instrues que devem ser realizadas uma determinada quantidade de vezes para que a soluo seja alcanada;

Quando uma pessoa aperta um parafuso, ela gira a chave de fenda uma vez, duas vezes, N vezes at que o parafuso esteja apertado o suficiente; Durante a chamada feita por um professor, ele chama os nomes enquanto no terminar a lista; O aluno de Linguagem de Programao precisa escrever 100 vezes no caderno: Preciso praticar bastante para aprender;

Todos os exemplos tm uma caracterstica comum: Existe uma verificao de condio para determinar se a repetio prossegue ou no; Ao invs de realizar uma tarefa braal, executando uma mesma instruo vrias vezes, ser utilizada uma estrutura para representar a execuo de instrues quantas vezes for necessria;

Permitem que uma ou mais instrues sejam executadas um nmero definido de vezes OU enquanto uma determinada condio no alcanada; Tambm so chamadas de Laos ou Loops;

Condicional:

Contada:

Repetem at satisfazer a condio de repetio; So usadas quando no se sabe previamente quantas vezes deve-se executar as instrues do bloco de repetio; Repetem um nmero pr-definido de vezes; So usadas quando se sabe previamente quantas vezes deve-se executar as instrues do bloco de repetio;

Podem executar o teste condicional:


No Incio: No Fim:
Enquanto..Faa Repita..At

Utilizam uma varivel para controlar a quantidade de repeties: Para..Faa

Sintaxe:

enquanto (<expresso lgica>) faca < seqncia de comandos > fimenquanto

algoritmo "nmero" var n : inteiro inicio escreva("Informe um nmero: ") leia(n) enquanto (n <> 0) faca se (n > 0) entao escreval("nmero maior que 0") senao escreval("nmero menor que 0") fimse escreva("Informe um nmero: ") leia(n) fimenquanto escreva("nmero igual a 0") fimalgoritmo

Semntica:

Faz o teste no incio do lao; Se o resultado for verdadeiro a seqncia de comandos ser executada; Volta-se para o incio do lao e testa-se novamente a condio; Os passos anteriores so repetidos enquanto a condio de teste for verdadeira;

No se sabe quantas vezes o bloco de repetio ser executado (0, 1 ou n vezes); Testa a condio antes de entrar na estrutura de repetio; Repete a execuo do bloco de repetio toda vez que a condio for verdadeira; A execuo do bloco finalizada quando a condio for falsa;

Normalmente, a utilizao de uma estrutura de repetio requer o uso de dois tipos de variveis:
Contador; Acumulador;

inicializado antes da estrutura de repetio; Incrementado no interior da estrutura de repetio por um valor constante;

algoritmo inicio ... cont <- 0 < estrutura de repetio > ... cont <- cont + 1 ... < fim da estrutura de repetio > ... fimalgoritmo

Algoritmo "Calcular Media de 50 alunos " var n1, n2, n3, media : real cont : inteiro inicio cont <- 0 enquanto (cont < 50) faca escreval("Informe as trs notas do aluno: ") leia(n1,n2,n3) media <- (n1 + n2 + n3) / 3 se (media < 5) entao escreval("Reprovado") senao escreval("Aprovado") fimse cont <- cont + 1 fimenquanto fimalgoritmo

inicializado antes da estrutura de repetio; Incrementado no interior da estrutura de repetio por um valor varivel;

algoritmo inicio ... soma <- 0 < estrutura de repetio > ... Valor Varivel soma <- soma + varX ... < fim da estrutura de repetio > ... fimalgoritmo

Ler 100 nmeros e calcular soma e a mdia;

algoritmo "exemplo3" var contador : inteiro valor, soma, media : real inicio contador <- 0 soma <- 0 enquanto (contador < 100) faca escreva("Informe um valor : ") leia(valor) soma <- soma + valor contador <- contador + 1 fimenquanto media <- soma / contador escreval("Soma: ", soma) escreval("Mdia: ", media) fimalgoritmo

Вам также может понравиться