Module: ciclos. Loop com parâmetro (for)


Problem

1/17

Loops na programação

Theory Click to read/hide

Imagine uma situação em que precisamos exibir a mesma palavra na tela, digamos a palavra "HELLO", 10 vezes. O que devemos fazer?
Você pode pegar e escrever o comando 10 vezes writeln('HELLO');

Mas e se você precisar não 10 vezes, mas 20, 30, 40 vezes? E se 200 vezes? Nesse caso, a cópia levará muito tempo. E se for necessário que o usuário possa escolher quantas vezes deseja exibir as informações na tela? 

Para lidar com essa tarefa, podemos usar uma construção especial chamada LOOP

Um loop é uma construção algorítmica na qual uma determinada sequência de comandos é repetida várias vezes.


Na linguagem de programação Pascal, existem dois tipos de loops: um loop com uma variável (for) e um loop com uma condição (while)

Vamos começar nosso conhecimento dos ciclos do primeiro tipo.

LOOP COM VARIÁVEL OU COM NÚMERO CONHECIDO DE PASSOS (FOR)

Muitas vezes, sabemos o número de repetições de algumas ações ou podemos calcular o número de repetições usando os dados que conhecemos. Algumas linguagens de programação possuem um comando que em russo soa como REPEAT (número de vezes) - ou seja, podemos especificar o número exato de repetições. 

É interessante ver como esse ciclo funciona no nível da máquina:
1. uma determinada célula de memória é alocada na memória e o número de repetições é gravado nela,
2. quando o programa executa o corpo do loop uma vez, o conteúdo desta célula (contador) é decrementado em um.
3. a execução do loop termina quando esta célula é zero.

Na linguagem de programação Pascal, não existe essa construção, mas existe uma construção para.  

A forma geral da instrução de loop for é a seguinte: para *start value* to *end value* faça começar /*uma instrução ou bloco de instruções - corpo do loop*/; fim; Esta construção exige que
1. alocou explicitamente uma célula de memória, que será um contador, e defina seu valor inicial
2. Especifique como o valor nesta célula será alterado.
3. foi escrita uma condição sob a qual o corpo do loop será executado

Na parte prática, tentaremos exibir a palavra Hello 10 vezes. Nas tarefas a seguir, analisaremos essa construção com mais detalhes.

Problem

O programa a seguir exibe a palavra Hello 10 vezes.
Observe que concluímos 3 etapas necessárias

1. alocou explicitamente uma célula de memória que será um contador e colocou nela o valor inicial  - i := 1 
2. indicou como o valor na célula especificada mudará  - para - depois de executar o corpo do loop, o valor da variável i aumentará em 1
3. registrou o último valor em que o corpo do ciclo será executado - 10   - o corpo do loop (comando writeln) será executado desde que i seja menor ou igual a 10

EXECUTE O PROGRAMA, CERTIFIQUE-SE DE QUE EXISTE A PALAVRA "Hello" 10 vezes