marco.zanaboni10
Ominide
2 min. di lettura
Vota 3 / 5

Concetti Chiave

  • L'iterazione permette l'esecuzione ripetuta di una sequenza di operazioni basata su una condizione specifica.
  • Esistono quattro varianti di strutture iterative: due basate su "mentre" e due su "ripeti fino a quando".
  • Nel "mentre" con test iniziale, l'esecuzione del ciclo dipende dalla verifica iniziale della condizione.
  • Nel "mentre" con test finale, il ciclo viene eseguito almeno una volta, poiché il test è posto alla fine.
  • Nel "ripeti fino a quando", il ciclo continua fino a quando la condizione diventa vera, con due varianti di test.

Struttura di controllo iterativa

L'iterazione è una struttura di controllo che permette di eseguire una sequenza più volte.

Per determinare quante volte l'operazione deve essere eseguita si inserisce una condizione, detta anche Test.

Ci sono due tipi diversi di test: il mentre e il ripeti fino a quando, ciascuno dei quali propone due varianti di scrittura. In totale abbiamo quindi quattro possibilità di scelta, la quale dovrà però essere effettuata con criterio.

Mentre - Test iniziale

Mentre (test/condizione)
{
sequenza di operazioni da ripetere
}

Questo tipo di iterazione la possiamo descrivere così: mentre la condizione è verificata, esegui la sequenza di istruzioni. In questo caso l'algoritmo, una volta letta la condizione, deciderà se entrare nel ciclo iterativo e eseguire le operazioni o se saltarlo completamente e proseguire con il resto dell'algoritmo, in base alla verifica della condizione precedentemente effettuata.

Mentre - Test finale

esegui
{
sequenza di operazioni da ripetere
}
MENTRE (test/condizione)

Questo tipo di iterazione la possiamo descrivere così: Esegui la sequenza di istruzioni mentre la condizione è verificata. Con questo tipo di iterazione, l'algoritmo entra per forza di cose nel ciclo iterativo e una volta eseguita la prima parte e arrivato alla condizione, se questa risulterà vera allora ripeterà di nuovo il ciclo, altrimenti uscirà dall'iterazione.

Tra queste due varianti dell'iterazione "MENTRE" c'è una differenza radicale. Nel primo caso, nel testi iniziale, l'algoritmo, leggendo la condizione, potrebbe anche saltare completamente tutto il ciclo iterativo in caso trovasse falsa la condizione. Nel secondo caso, invece, la sequenza iterativa viene eseguita almeno una volta, proprio perchè il test viene posto alla fine della sequenza di operazioni da svolgere.

Ripeti fino a quando - Test iniziale

ripeti fino a quando (test/condizione)
{
sequenza di operazioni da ripetere
}

Questo tipo di iterazione la possiamo descrivere così: Ripeti la sequenza di istruzioni fino a quando la condizione non risulta verificata. Il "ripeti fino a quando" lavora mentre la condizione risulta falsa al test e una volta verificata, uscirà dall'iterazione.

Ripeti fino a quando - Test finale

esegui
{
sequenza di operazioni da ripetere
}
e ripeti fino a quando (test/condizione)

In questo caso, la descrizione è uguale a quella del test iniziale, ma tra le due c'è la stessa differenza che caratterizza le strutture iterative con "Mentre".

Domande da interrogazione

  1. Qual è la differenza principale tra le varianti "Mentre - Test iniziale" e "Mentre - Test finale"?
  2. La differenza principale è che nel "Mentre - Test iniziale" l'algoritmo può saltare completamente il ciclo iterativo se la condizione è falsa, mentre nel "Mentre - Test finale" la sequenza iterativa viene eseguita almeno una volta poiché il test è posto alla fine.

  3. Come funziona l'iterazione "Ripeti fino a quando - Test iniziale"?
  4. L'iterazione "Ripeti fino a quando - Test iniziale" ripete la sequenza di istruzioni fino a quando la condizione non risulta verificata. Il ciclo continua finché la condizione è falsa e si interrompe quando diventa vera.

  5. In che modo le varianti "Ripeti fino a quando" differiscono dalle varianti "Mentre"?
  6. Le varianti "Ripeti fino a quando" differiscono dalle varianti "Mentre" principalmente nel modo in cui gestiscono la condizione: "Ripeti fino a quando" continua finché la condizione è falsa, mentre "Mentre" continua finché la condizione è vera. Inoltre, entrambe le strutture hanno una variante con test iniziale e una con test finale, influenzando quando la sequenza viene eseguita.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community