Loop Definite vs Loop indefinito
Un ciclo è un blocco di codice che si ripeterà per un numero specificato di volte o finché alcune condizioni non saranno soddisfatte. Un ciclo definito è un ciclo in cui il numero di volte che deve essere eseguito è noto in anticipo prima di entrare nel ciclo. In un ciclo indefinito, il numero di volte che sta per essere eseguito non è noto in anticipo e verrà eseguito fino a quando alcune condizioni non saranno soddisfatte.
Cos'è un ciclo definito?
Un ciclo definito è un ciclo in cui il numero di volte che deve essere eseguito è noto in anticipo prima di entrare nel ciclo. Il numero di iterazioni che sta per ripetere verrà tipicamente fornito attraverso una variabile intera. In generale, i loop sono considerati come loop definiti. Di seguito è riportato un esempio di un ciclo definito implementato utilizzando un ciclo for (in linguaggio di programmazione Java).
per (int i = 0; i < num; i++)
// corpo del ciclo for
Il ciclo precedente eseguirà il suo corpo un numero di volte fornito dalla variabile num. Questo potrebbe essere determinato dal valore iniziale della variabile i e dalla condizione del ciclo.
Mentre i loop possono essere utilizzati anche per implementare loop definiti come mostrato sotto (in Java).
int i = 0;
mentre io
// corpo del ciclo
i ++;
Anche se questo utilizza un ciclo while, questo è anche un ciclo definito, poiché è noto in anticipo che il ciclo eseguirà il numero di volte fornito dalla variabile num.
Cos'è un loop indefinito?
In un ciclo indefinito, il numero di volte che sta per essere eseguito non è noto in anticipo. Tipicamente, un ciclo indefinito verrà eseguito fino a quando alcune condizioni saranno soddisfatte. Mentre loop e loop do-while sono comunemente usati per implementare cicli indefiniti. Anche se non esiste un motivo specifico per non utilizzare i loop per la costruzione di cicli indefiniti, i loop indefiniti potrebbero essere organizzati ordinatamente utilizzando i cicli while. Alcuni esempi comuni di implementazione di cicli indefiniti richiedono la lettura di un input fino a quando l'utente inserisce un numero intero positivo, leggendo una password fino a quando l'utente inserisce la stessa password due volte di seguito, ecc..
Qual è la differenza tra Definite Loop e Indefinite Loop?
Un ciclo definito è un ciclo in cui il numero di volte che viene eseguito è noto in anticipo prima di entrare nel ciclo, mentre un ciclo indefinito viene eseguito fino a quando alcune condizioni sono soddisfatte e il numero di volte che sta per essere eseguito non è noto in anticipo. Spesso, i loop definiti vengono implementati usando loop per cicli indefiniti e implementati usando loop while e loop di do-while. Ma non vi è alcun motivo teorico per non utilizzare loop per cicli indefiniti e cicli while per loop definiti. Ma i loop indefiniti potrebbero essere organizzati ordinatamente con cicli while, mentre i loop definiti potrebbero essere organizzati ordinatamente con i loop.