SlideShare une entreprise Scribd logo
1  sur  3
6.2 Repetição ou Ciclos
Em programação, uma sequência de instruções executada repetitivamente é chamada
de ciclo. Um ciclo é constituído por uma sequência de instruções, o corpo do
ciclo, e por uma estrutura que controla a execução dessas instruções,
especificando quantas vezes o ciclo deve ser executado.
Cada vez que as instruções que constituem o corpo do ciclo são executadas,
dizemos que se efectuou uma passagem pelo ciclo. As instruções que constituem o
corpo do ciclo podem ser executadas qualquer número de vezes (eventualmente
nenhuma), mas este número tem de ser finito. Há erros de semântica que podem
levar a execução interminável do corpo do ciclo, criando um ciclo infinito.
Neste webfolio, apresentaremos três instruções: "while", "repeat" e "for".
"WHILE"
A instrução "while" permite especificar a execução repetitiva de uma instrução
enquanto uma determinada expressão do tipo lógico tiver o valor verdadeiro.
Na definição sintáctica da instrução "while", instrução representa qualquer
instrução de Pascal e expressão representa uma expressão do tipo lógico.
A semântica da instrução "while" é a seguinte:
Ao encontrar a instrução "while <cond> do <inst>", o computador calcula o valor
de cond. Se o seu valor for "true", o computador efectua uma passagem pelo
ciclo, executando a instrução inst. Em seguida volta a calcular o valor de cond
e o processo repete-se enquanto o valor da cond for "true". Quando o valor de
cond for "false", a execução do ciclo termina.
A instrução que constitui o corpo do ciclo deve modificar o valor da expressão
que controla a execução do ciclo, caso contrário, o ciclo pode nunca terminar.
Exemplo de um programa que soma uma sequência de números inteiros. O fim da
sequência é determinado por um número negativo:
Program SomadeInteiros ;
var Soma, Numero : integer;
procedure Pergunte;
begin
writeln ('Escreva um número inteiro');
writeln ('Um número negativo termina a execução')
end; {pergunte}
Begin
Soma := 0;
Pergunte;
readln (Numero);
While Numero >= 0 do
begin
Soma := Soma + Numero;
Pergunte;
readln (Numero)
end;
writeln ('A soma é ' , Soma:3)
End.
"REPEAT"
A instrução "repeat" permite especificar a execução repetitiva de uma sequência
de instruções até que certa expressão do tipo lógico tenha o valor verdadeiro.
Na definição sintáctica da instrução "repeat", instrução representa qualquer
instrução em Pascal e expressão representa uma expressão do tipo lógico. Em
oposição à definição sintáctica de "while", a instrução "repeat" permite a
especificação de uma sequência de instruções a executar e não apenas de uma
instrução. Por esta razão, ao utilizarmos uma instrução "repeat" não
necessitamos de recorrer a uma instrução composta, quando o corpo do ciclo tem
mais de uma instrução. A razão desta decisão provém do facto de o corpo de ciclo
numa instrução "repeat" estar delimitado pelas palavras "repeat" e "until",
evitando assim qualquer tipo de ambiguidade quanto à determinação das instruções
que pertencem ao corpo do ciclo.
A semântica da instrução "repeat" é a seguinte:
Ao encontrar a instrução "repeat <instr> until <cond>", o computador começa por
executar as instruções que constituem o corpo do ciclo (instr), avaliando depois
a expressão cond. Se o seu valor for "false", o corpo do ciclo é executado de
novo e o processo repete-se. A execução do ciclo termina quando a cond produzir
um valor "true". Importa salientar que a execução do ciclo só termina após uma
passagem completa pelo ciclo.
Tal como acontece com a instrução "while", de um modo geral, o número de vezes
que o corpo de uma instrução "repeat" é executado não pode ser calculado de
antemão. Contudo, em oposição à instrução "while", o corpo do ciclo de uma
instrução "repeat" é sempre executado pelo menos uma vez, porque a expressão que
controla a execução do ciclo só é avaliada no fim do mesmo.
Exemplo de um programa com um ciclo "repeat".
Program Repeat ;
VAR
Num:INTEGER ;
Begin
Num:=100;
REPEAT
WRITE (Num,' ');
Num:=Num-2;
UNTIL (Num<1);
End.
"FOR"
Quando se pretende que um conjunto de instruções se repita um número de vezes
bem determinado, recorremos à instrução FOR.
A sintaxe desta instrução é a seguinte : FOR <variável> := <início> TO <fim> DO
A variável de ciclo mantém o número de repetições a efectuar, servindo de
contador. Esta variável pode ser qualquer tipo escalar, excepto REAL. De notar
que a variável de controlo do FOR nunca deve ser alterada dentro do ciclo, sob
pena de se perder por completo o número de execuções e chegarmos a resultados
bem diferentes dos pretendidos.
Exemplo correcto de utilização de um FOR :
Program ForExemplo;
VAR
valor : integer;
Begin
For valor := 1 to 10 do
Begin
Write ('Quadrado de ',valor,'=');
Writeln (valor * valor);
End;
Readln
End.
Exemplo incorrecto de utilização de um FOR :
Program ForExemplo;
VAR
valor : integer;
Begin
For valor := 1 to 10 do
Begin
Write ('Quadrado de ',valor,'=');
Writeln (valor * valor);
valor := valor + 1;
End;
Readln
End.
Saliente-se que o ciclo FOR pode assumir duas formas distintas de aplicação,
isto é, a variável de controlo pode ser incrementada a cada execução, como nos
exemplos anteriores, ou pode ser decrementada, sendo que neste caso a sintaxe
assume a forma :
FOR <variável> := <início> DOWNTO <fim> D

Contenu connexe

Tendances

Linguagem de Programação - aula 03
Linguagem de Programação - aula 03Linguagem de Programação - aula 03
Linguagem de Programação - aula 03Willian Carvalho
 
Shell Scripting
Shell ScriptingShell Scripting
Shell Scriptingdcarneir
 
Curso de shell
Curso de shellCurso de shell
Curso de shellTiago
 
Conceitos e técnicas de programação aula 5
Conceitos e técnicas de programação aula 5Conceitos e técnicas de programação aula 5
Conceitos e técnicas de programação aula 5Robson Ferreira
 
Processos e comando kill - Bóson Treinamentos
Processos e comando kill - Bóson TreinamentosProcessos e comando kill - Bóson Treinamentos
Processos e comando kill - Bóson TreinamentosFábio dos Reis
 
2 controle fluxo
2 controle fluxo2 controle fluxo
2 controle fluxoprofwtelles
 
Trabalho sobre o enchimento e o vacuo e como fazer
Trabalho sobre o enchimento e o vacuo e como fazerTrabalho sobre o enchimento e o vacuo e como fazer
Trabalho sobre o enchimento e o vacuo e como fazerrubennobre
 

Tendances (12)

Linguagem de Programação - aula 03
Linguagem de Programação - aula 03Linguagem de Programação - aula 03
Linguagem de Programação - aula 03
 
Shell Scripting
Shell ScriptingShell Scripting
Shell Scripting
 
Pilhas
PilhasPilhas
Pilhas
 
Algoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - LacosAlgoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - Lacos
 
Curso de shell
Curso de shellCurso de shell
Curso de shell
 
Conceitos e técnicas de programação aula 5
Conceitos e técnicas de programação aula 5Conceitos e técnicas de programação aula 5
Conceitos e técnicas de programação aula 5
 
Processos e comando kill - Bóson Treinamentos
Processos e comando kill - Bóson TreinamentosProcessos e comando kill - Bóson Treinamentos
Processos e comando kill - Bóson Treinamentos
 
2 controle fluxo
2 controle fluxo2 controle fluxo
2 controle fluxo
 
Escalonamento
EscalonamentoEscalonamento
Escalonamento
 
Shell script
Shell scriptShell script
Shell script
 
Cursor
CursorCursor
Cursor
 
Trabalho sobre o enchimento e o vacuo e como fazer
Trabalho sobre o enchimento e o vacuo e como fazerTrabalho sobre o enchimento e o vacuo e como fazer
Trabalho sobre o enchimento e o vacuo e como fazer
 

Similaire à Instruçao repeat

Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Thalles Anderson
 
Java básico - Módulo 05 - Estruturas de Repetição
Java  básico - Módulo 05 - Estruturas de RepetiçãoJava  básico - Módulo 05 - Estruturas de Repetição
Java básico - Módulo 05 - Estruturas de RepetiçãoProfessor Samuel Ribeiro
 
Aula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfAula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfCarlosCarlos73688
 
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlex Camargo
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
 
Laços de repetição em C.
Laços de repetição em C.Laços de repetição em C.
Laços de repetição em C.SchoolByte
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0César Augusto Pessôa
 
Estruturas de Repetição - FOR, WHILE e DO WHILE
Estruturas de Repetição - FOR, WHILE e DO WHILEEstruturas de Repetição - FOR, WHILE e DO WHILE
Estruturas de Repetição - FOR, WHILE e DO WHILENeto Côrtes
 
Sebenta Ling Prog Cptig MóDulo Iii Carla
Sebenta Ling Prog Cptig   MóDulo Iii CarlaSebenta Ling Prog Cptig   MóDulo Iii Carla
Sebenta Ling Prog Cptig MóDulo Iii CarlaCarla Silva
 
Conceitos base de programação - parte 2
Conceitos base de programação - parte 2Conceitos base de programação - parte 2
Conceitos base de programação - parte 2João Piedade
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++thiagodp
 
TDD em C++
TDD em C++TDD em C++
TDD em C++thiagodp
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetiçãoTácito Graça
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_javaMirlem Pereira
 
Aula 05 - Estrutura de Controle em PHP.pdf
Aula 05 - Estrutura de Controle em PHP.pdfAula 05 - Estrutura de Controle em PHP.pdf
Aula 05 - Estrutura de Controle em PHP.pdfAntonioSvio1
 

Similaire à Instruçao repeat (20)

Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 08 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)Alg   aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
Alg aula 05-1 - estruturas de-repeticao tp1 (repita e enquanto)
 
Java básico - Módulo 05 - Estruturas de Repetição
Java  básico - Módulo 05 - Estruturas de RepetiçãoJava  básico - Módulo 05 - Estruturas de Repetição
Java básico - Módulo 05 - Estruturas de Repetição
 
Aula 3 AEDI.pdf
Aula 3 AEDI.pdfAula 3 AEDI.pdf
Aula 3 AEDI.pdf
 
02 controle de fluxo
02   controle de fluxo02   controle de fluxo
02 controle de fluxo
 
Aula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdfAula 05 - Comandos de repeticao - JAVA.pdf
Aula 05 - Comandos de repeticao - JAVA.pdf
 
Estrutura de repetição
Estrutura de repetiçãoEstrutura de repetição
Estrutura de repetição
 
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetição
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
Laços de repetição em C.
Laços de repetição em C.Laços de repetição em C.
Laços de repetição em C.
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0
 
Estruturas de Repetição - FOR, WHILE e DO WHILE
Estruturas de Repetição - FOR, WHILE e DO WHILEEstruturas de Repetição - FOR, WHILE e DO WHILE
Estruturas de Repetição - FOR, WHILE e DO WHILE
 
Sebenta Ling Prog Cptig MóDulo Iii Carla
Sebenta Ling Prog Cptig   MóDulo Iii CarlaSebenta Ling Prog Cptig   MóDulo Iii Carla
Sebenta Ling Prog Cptig MóDulo Iii Carla
 
Conceitos base de programação - parte 2
Conceitos base de programação - parte 2Conceitos base de programação - parte 2
Conceitos base de programação - parte 2
 
DOJO - TDD com C++
DOJO - TDD com C++DOJO - TDD com C++
DOJO - TDD com C++
 
TDD em C++
TDD em C++TDD em C++
TDD em C++
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetição
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 
Algoritmos Aula 09
Algoritmos Aula 09Algoritmos Aula 09
Algoritmos Aula 09
 
Aula 05 - Estrutura de Controle em PHP.pdf
Aula 05 - Estrutura de Controle em PHP.pdfAula 05 - Estrutura de Controle em PHP.pdf
Aula 05 - Estrutura de Controle em PHP.pdf
 

Dernier

atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfAutonoma
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdfmarlene54545
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa paraAndreaPassosMascaren
 
Falando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introdFalando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introdLeonardoDeOliveiraLu2
 
AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022LeandroSilva126216
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Centro Jacques Delors
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxJustinoTeixeira1
 
Apresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaApresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaCentro Jacques Delors
 
Expansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XVExpansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XVlenapinto
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptxJssicaCassiano2
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Centro Jacques Delors
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Centro Jacques Delors
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docPauloHenriqueGarciaM
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...azulassessoria9
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.denisecompasso2
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*Viviane Moreiras
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxFlviaGomes64
 

Dernier (20)

atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa para
 
Falando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introdFalando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introd
 
AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022AULÃO de Língua Portuguesa para o Saepe 2022
AULÃO de Língua Portuguesa para o Saepe 2022
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptx
 
Apresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaApresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União Europeia
 
Expansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XVExpansão Marítima- Descobrimentos Portugueses século XV
Expansão Marítima- Descobrimentos Portugueses século XV
 
Novena de Pentecostes com textos de São João Eudes
Novena de Pentecostes com textos de São João EudesNovena de Pentecostes com textos de São João Eudes
Novena de Pentecostes com textos de São João Eudes
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 

Instruçao repeat

  • 1. 6.2 Repetição ou Ciclos Em programação, uma sequência de instruções executada repetitivamente é chamada de ciclo. Um ciclo é constituído por uma sequência de instruções, o corpo do ciclo, e por uma estrutura que controla a execução dessas instruções, especificando quantas vezes o ciclo deve ser executado. Cada vez que as instruções que constituem o corpo do ciclo são executadas, dizemos que se efectuou uma passagem pelo ciclo. As instruções que constituem o corpo do ciclo podem ser executadas qualquer número de vezes (eventualmente nenhuma), mas este número tem de ser finito. Há erros de semântica que podem levar a execução interminável do corpo do ciclo, criando um ciclo infinito. Neste webfolio, apresentaremos três instruções: "while", "repeat" e "for". "WHILE" A instrução "while" permite especificar a execução repetitiva de uma instrução enquanto uma determinada expressão do tipo lógico tiver o valor verdadeiro. Na definição sintáctica da instrução "while", instrução representa qualquer instrução de Pascal e expressão representa uma expressão do tipo lógico. A semântica da instrução "while" é a seguinte: Ao encontrar a instrução "while <cond> do <inst>", o computador calcula o valor de cond. Se o seu valor for "true", o computador efectua uma passagem pelo ciclo, executando a instrução inst. Em seguida volta a calcular o valor de cond e o processo repete-se enquanto o valor da cond for "true". Quando o valor de cond for "false", a execução do ciclo termina. A instrução que constitui o corpo do ciclo deve modificar o valor da expressão que controla a execução do ciclo, caso contrário, o ciclo pode nunca terminar. Exemplo de um programa que soma uma sequência de números inteiros. O fim da sequência é determinado por um número negativo: Program SomadeInteiros ; var Soma, Numero : integer; procedure Pergunte; begin writeln ('Escreva um número inteiro'); writeln ('Um número negativo termina a execução') end; {pergunte} Begin Soma := 0; Pergunte; readln (Numero); While Numero >= 0 do begin Soma := Soma + Numero; Pergunte; readln (Numero) end; writeln ('A soma é ' , Soma:3) End. "REPEAT"
  • 2. A instrução "repeat" permite especificar a execução repetitiva de uma sequência de instruções até que certa expressão do tipo lógico tenha o valor verdadeiro. Na definição sintáctica da instrução "repeat", instrução representa qualquer instrução em Pascal e expressão representa uma expressão do tipo lógico. Em oposição à definição sintáctica de "while", a instrução "repeat" permite a especificação de uma sequência de instruções a executar e não apenas de uma instrução. Por esta razão, ao utilizarmos uma instrução "repeat" não necessitamos de recorrer a uma instrução composta, quando o corpo do ciclo tem mais de uma instrução. A razão desta decisão provém do facto de o corpo de ciclo numa instrução "repeat" estar delimitado pelas palavras "repeat" e "until", evitando assim qualquer tipo de ambiguidade quanto à determinação das instruções que pertencem ao corpo do ciclo. A semântica da instrução "repeat" é a seguinte: Ao encontrar a instrução "repeat <instr> until <cond>", o computador começa por executar as instruções que constituem o corpo do ciclo (instr), avaliando depois a expressão cond. Se o seu valor for "false", o corpo do ciclo é executado de novo e o processo repete-se. A execução do ciclo termina quando a cond produzir um valor "true". Importa salientar que a execução do ciclo só termina após uma passagem completa pelo ciclo. Tal como acontece com a instrução "while", de um modo geral, o número de vezes que o corpo de uma instrução "repeat" é executado não pode ser calculado de antemão. Contudo, em oposição à instrução "while", o corpo do ciclo de uma instrução "repeat" é sempre executado pelo menos uma vez, porque a expressão que controla a execução do ciclo só é avaliada no fim do mesmo. Exemplo de um programa com um ciclo "repeat". Program Repeat ; VAR Num:INTEGER ; Begin Num:=100; REPEAT WRITE (Num,' '); Num:=Num-2; UNTIL (Num<1); End. "FOR" Quando se pretende que um conjunto de instruções se repita um número de vezes bem determinado, recorremos à instrução FOR. A sintaxe desta instrução é a seguinte : FOR <variável> := <início> TO <fim> DO A variável de ciclo mantém o número de repetições a efectuar, servindo de contador. Esta variável pode ser qualquer tipo escalar, excepto REAL. De notar que a variável de controlo do FOR nunca deve ser alterada dentro do ciclo, sob pena de se perder por completo o número de execuções e chegarmos a resultados bem diferentes dos pretendidos.
  • 3. Exemplo correcto de utilização de um FOR : Program ForExemplo; VAR valor : integer; Begin For valor := 1 to 10 do Begin Write ('Quadrado de ',valor,'='); Writeln (valor * valor); End; Readln End. Exemplo incorrecto de utilização de um FOR : Program ForExemplo; VAR valor : integer; Begin For valor := 1 to 10 do Begin Write ('Quadrado de ',valor,'='); Writeln (valor * valor); valor := valor + 1; End; Readln End. Saliente-se que o ciclo FOR pode assumir duas formas distintas de aplicação, isto é, a variável de controlo pode ser incrementada a cada execução, como nos exemplos anteriores, ou pode ser decrementada, sendo que neste caso a sintaxe assume a forma : FOR <variável> := <início> DOWNTO <fim> D