Module: cicli. Ciclo con parametro (per)


Problem

1/17

Loop nella programmazione

Theory Click to read/hide

Immagina una situazione in cui dobbiamo visualizzare la stessa parola sullo schermo, diciamo la parola "CIAO", 10 volte. Cosa dobbiamo fare?
Puoi prendere e scrivere il comando 10 volte writeln('HELLO');

Ma cosa succede se non hai bisogno di 10 volte, ma 20, 30, 40 volte? E se 200 volte? In questo caso, la copia richiederà molto tempo. E se è necessario che l'utente possa scegliere quante volte visualizzare le informazioni sullo schermo? 

Per far fronte a questo compito, possiamo usare una costruzione speciale chiamata LOOP

Un ciclo è una costruzione algoritmica in cui una determinata sequenza di comandi viene ripetuta più volte.


Nel linguaggio di programmazione Pascal, ci sono due tipi di cicli: un ciclo con una variabile (for) e un ciclo con una condizione (while)

Iniziamo la nostra conoscenza dei cicli dal primo tipo.

LOOP CON UNA VARIABILE O CON UN NUMERO DI PASSI NOTO (FOR)

Accade spesso che conosciamo il numero di ripetizioni di alcune azioni, oppure possiamo calcolare il numero di ripetizioni utilizzando i dati a noi noti. Alcuni linguaggi di programmazione hanno un comando che in russo suona come RIPETI (numero di volte), ovvero possiamo specificare il numero esatto di ripetizioni. 

È interessante vedere come funziona questo ciclo a livello di macchina:
1. una determinata cella di memoria viene allocata in memoria e vi viene scritto il numero di ripetizioni,
2. quando il programma esegue il corpo del ciclo una volta, il contenuto di questa cella (contatore) viene decrementato di uno.
3. l'esecuzione del ciclo termina quando questa cella è zero.

Nel linguaggio di programmazione Pascal non esiste tale costruzione, ma esiste una costruzione for.  

La forma generale dell'istruzione del ciclo for è la seguente:

for *start value* to *end value* do
inizio
      /*un'istruzione o un blocco di istruzioni - corpo del ciclo*/;
fine;
Questa costruzione richiede che noi
1. allocare esplicitamente una cella di memoria, che sarà un contatore, e impostarne il valore iniziale
2. Specifica come cambierà il valore in questa cella.
3. è stata scritta una condizione in base alla quale verrà eseguito il corpo del ciclo

Nella parte pratica proveremo a visualizzare la parola Ciao 10 volte. Nelle seguenti attività, analizzeremo questa costruzione in modo più dettagliato.

Problem

Il seguente programma visualizza la parola Ciao 10 volte.
Tieni presente che abbiamo completato 3 passaggi necessari

1. allocare esplicitamente una cella di memoria che sarà un contatore e inserirvi il valore iniziale  - i := 1 
2. indicato come cambierà il valore nella cella data  - in - dopo aver eseguito il corpo del ciclo, il valore della variabile i aumenterà di 1
3. registrato l'ultimo valore al quale verrà eseguito il corpo del ciclo - 10   - il corpo del ciclo (comando writeln) verrà eseguito finché i è minore o uguale a 10

ESEGUI IL PROGRAMMA, ASSICURATI CHE VISUALIZZI LA PAROLA "Ciao" 10 volte