Module: cicli. Ciclo con parametro (per)


Problem

10/17

Intestazione del ciclo for - ripetizione N volte

Theory Click to read/hide

Tutti i programmi con un ciclo for che abbiamo scritto finora non possono essere definiti universali. Perché impostiamo noi stessi il numero di ripetizioni del corpo del loop. 
Ma cosa succede se il numero di ripetizioni dipende da qualche altro valore? Ad esempio, l'utente stesso desidera impostare il numero di ripetizioni del ciclo.
Cosa fare in questo caso?
Tutto è molto semplice. Invece di valori iniziali e finali numerici, possiamo utilizzare qualsiasi variabile che può essere calcolata o impostata dall'utente.

Ad esempio, abbiamo bisogno di visualizzare i quadrati dei numeri da 1 a n, dove il valore della variabile n viene inserito dalla tastiera dall'utente.
Il programma avrà questo aspetto:
 

var i, n :intero; // io – variabile loop, n - il numero massimo per il quale calcoliamo il quadrato
inizio
 leggi(n); // inserisci n dalla tastiera
 for i := 1 to n do // loop: for all i from 1 to n - la variabile i assumerà in sequenza valori da 1 a n
  writeln('Kvadrat chisla ', i, ' corvo ', i * i); // Emissione del quadrato di un numero in un formato specifico e passaggio a una nuova riga
FINE.

Quando si entra nel ciclo, viene eseguita l'istruzione i := 1, quindi la variabile i viene incrementata di uno (to) ad ogni passaggio. Il ciclo viene eseguito mentre la condizione i <= n è vera. Nel corpo del ciclo, l'unica istruzione di output stampa il numero stesso e il suo quadrato sullo schermo secondo il formato specificato.
Per la quadratura o altri esponenti bassi, è meglio usare la moltiplicazione.

Esegui il programma e guarda il risultato del suo lavoro con diversi valori della variabile n.

Problem

Esegui il programma per l'esecuzione, guarda il risultato del suo lavoro con diversi valori della variabile n
Analizza l'output nella finestra dei risultati del test del programma

Notare che per n=0 (test #4) il programma non restituisce nulla perché 1 è immediatamente maggiore di 0, quindi il corpo del ciclo non viene mai eseguito!