Baixe o app para aproveitar ainda mais
Prévia do material em texto
18/10/2017 1 Comandos de Repetição Profa. Ana Rubélia Declaração de variáveis e constantes Comandos Sequenciais ◦ Entrada ◦ Saída ◦ Atribuição Comandos Condicionais ◦ Se...Então...Senão... ◦ Escolha...Caso... Comandos de Repetição ◦ Para ... de... até...Faça ◦ Enquanto ... Faça ◦ Repita ... Até Os Comandos de Repetição permitem que um conjunto de instruções seja executado repetidamente até que uma determinada condição de interrupção seja satisfeita. Eles são utilizados quando se deseja executar um determinado conjunto de instruções um número definido ou indefinido de vezes, ou enquanto um determinado estado prevalecer ou até este ser alcançado. Para número DEFINIDO de repetições e TESTE NO INÍCIO ◦ PARA ... FAÇA ◦ em Pascal: FOR ... DO ... TO Para número INDEFINIDO de repetições e TESTE NO INÍCIO ◦ ENQUANTO ... FAÇA ◦ em Pascal: WHILE ... DO Para número INDEFINIDO de repetições e TESTE NO FINAL ◦ REPITA ... ATÉ ◦ em Pascal: REPEAT ... UNTIL É utilizado quando se sabe o número de vezes que um conjunto de instruções deve ser repetido. O teste de condição é feito no início de sua estrutura. ◦ assim se a condição não for satisfeita logo na primeira comparação, nenhuma instrução dentro da estrutura PARA (FOR) será executada. Para número definido de repetições e teste no início inicio ... comandos valorInical > valorFinal ? ... fim SIM NAO 18/10/2017 2 Em Pascal: {Programa para imprimir valores de 1 até 10} Program cmdRepeticaoFOR; var i:integer; Begin FOR i:=1 TO 10 DO writeln('valor de i:', i) End. i é a variável contador Program tabuada; var i, tab: integer; Begin writeln ('Digite um número para ter a tabuada'); write ('Tabuada do: '); read (tab); FOR i:=1 TO 10 DO writeln (tab , ‘X‘ ,i, '= ‘ , tab*i); End. Para número DEFINIDO de repetições e TESTE NO INÍCIO ◦ PARA ... FAÇA ◦ em Pascal: FOR ... DO ... TO Para número INDEFINIDO de repetições e TESTE NO INÍCIO ◦ ENQUANTO ... FAÇA ◦ em Pascal: WHILE ... DO Para número INDEFINIDO de repetições e TESTE NO FINAL ◦ REPITA ... ATÉ ◦ em Pascal: REPEAT ... UNTIL É utilizado quando não se sabe o número de vezes que um conjunto de instruções deve ser repetido. Como no comando PARA, o teste de condição do comando ENQUANTO também fica logo no início de sua estrutura. ◦ Assim, se a condição não for satisfeita logo na primeira comparação, nenhuma instrução dentro da estrutura ENQUANDO (WHILE) será executada. Para número indefinido de repetições e teste no início inicio ... comandos condição ... fim F V 18/10/2017 3 {Programa para imprimir valores de 1 até 10} Program CmdRepeticaoWHILE; var i: integer; Begin i:=0; WHILE (i<=10) DO begin writeln ('O valor de i é: ', i); i:=i+1; end; End. Inicializar a variável contador i Program tabuada; var i, tab: integer; Begin writeln('Digite um número para ter a tabuada'); write('TABUADA DO: '); readln(tab); i:=1; WHILE i <=10 DO begin writeln(tab, 'x', i, '= ', i*tab); i:=i+1; end; End. Para número DEFINIDO de repetições e TESTE NO INÍCIO ◦ PARA ... FAÇA ◦ em Pascal: FOR ... DO ... TO Para número INDEFINIDO de repetições e TESTE NO INÍCIO ◦ ENQUANTO ... FAÇA ◦ em Pascal: WHILE ... DO Para número INDEFINIDO de repetições e TESTE NO FINAL ◦ REPITA ... ATÉ ◦ em Pascal: REPEAT ... UNTIL No comando de REPITA executa-se primeiro um conjunto de instruções e somente depois é realizado o teste de condição. Se a condição for verdadeira, o fluxo do programa continua normalmente. Caso contrário é processado novamente os comandos antes do teste da condição Note que os comandos são executados, e Só depois é feito o teste da condição. ◦ Se a condição for verdadeira, os comandos são executados novamente, ◦ caso seja falso é encerrado o comando. Para número indefinido de repetições e teste no final inicio ... comandos condição ... fim F V 18/10/2017 4 Program escrever_ate_10_REPEAT; var i:integer; Begin i:=1; REPEAT writeln ('Valor de i: ',i); i:=i+1; UNTIL (i=10); End. Inicializar a variável contador i Program tabuada; var i, tab: integer; Begin writeln('Digite um número para ter a tabuada'); write('Tabuada do: '); readln(tab); i:=1; REPEAT writeln(tab, 'x', i, '= ', i*tab); i:=i+1; UNTIL (i >10); End.
Compartilhar