prima di iniziare a guardare il video vi ricordo se non lo siete già di iscrivervi al canale attivare la campanella delle notifiche lasciare un like e leggere sempre la descrizione del video benvenuti tutti ragazzi in questo nuovo video oggi affronteremo le strutture di controllo definite wylford e dwight queste tre istituzioni vengono chiamate istruzioni di iterazione perché data una condizione e fintanto che essa rimane vera continuano i comandi presenti al loro interno il ciclo avrà termine nel caso la condizione risulti falsa oppure tramite particolari istruzioni che vedremo nella prossima lezione i cicli risultano estremamente utili quando
è necessario ripetere una serie di istruzioni più volte senza doverle riscrivere ciò significa che se per esempio si vuole mostrare in output serie di numeri che vanno dall 1 fino al 10 piuttosto di scrivere 10 output sia automatizza il processo mediante un ciclo la prima istruzione leggiamo è il wine la quale ha descritto formalmente a sinistra tra le parentesi tonde va inserita una condizione che viene valutata dal programma se risulta essere vera allora il ciclo eseguirà i comandi presenti all'interno delle parentesi graffe questa zona è definita corpo del ciclo altrimenti se risulta falsa di conseguenza
non verrà eseguito il corpo del ciclo ma il programma proseguirà con le istruzioni inserite dopo il ciclo stesso facciamo un esempio pratico a destra e poniamo che il programma chiede all'utente di inserire un numero intero da tastiera per poi mostrare in output tutti i valori partendo dall 1 fino ad arrivare al valore inserito dall'utente per fare ciò si deve dichiarare una variabile che possiederà al suo interno i numeri da visualizzare partendo dal 1 quindi si assegna un valore iniziale a una variabile definita contatore enel ciclo si inserisce come condizione che la variabile contatore sia minore
o uguale al numero inserito dall'utente in questo modo finché la condizione vera verranno eseguite le istruzioni appartenenti al corpo del ciclo nel corpo verrà quindi inserito il comando di output che mostrerà il contenuto della variabile contatore e successivamente si incrementa di più uno il valore contenuto a un certo punto il ciclo si interromperà perché la variabile contatore supererà il valore inserito dall'utente rendendo falsa la condizione e terminando così il programma vi indico un campanello d'attenzione ossia quello di fare in modo che la condizione di 20 falsa prima o poi affinché si esca dal ciclo se
nell'esempio mostrato a destra avessi dimenticato di incrementarla variabile contatore innanzitutto non avrei creato un programma efficace al problema ma soprattutto non ci sarebbe mai stata una fine al ciclo perché la condizione non sarebbe mai risultata falsa i cicli che non si concludono mai sono definiti cicchi infiniti che si possono certamente creare ma sono considerati sbagliati nel mondo della programmazione quindi bisogna sempre avere una conclusione del programma e non lasciarla in balia di cicli infiniti senza vie di fuga la seconda istruzione di teheran realizziamo è il four che presenta con il wild un punto in comune
e degli aspetti e gentili il punto in comune è che entrambe le istruzioni sono definite pre condizionali dunque primo si valuta la condizione è solo se è vera si esegue il corpo del ciclo mentre gli aspetti aggiuntivi sono la presenza di tre campi all'interno delle parentesi tonde a sinistra ed è scritto formalmente il ciclo for come ben notate sono presenti tre campi che sono opzionali e dopo spiegherò anche senso per il momento analizziamo il primo campo che esprime la dichiarazione di una o più variabili che possono essere impiegate all'interno del corpo del ciclo o altrimenti
sempre in questo campo si possono inizializzare variabili già esistenti dichiarata inizio il programma il secondo campo è dedicato alla condizione l'acqua è come per il wild deve essere vera affinché venga eseguito il corpo del ciclo il terzo campo è riservato alle operazioni che si vuole far ripetere a ogni ripetizione come per esempio incrementare i contatori dichiarati o inizializzati nel primo campo detto tutto ciò torniamo al fattore opzionale ovvero che nessuno dei tre campi è obbligatorio quindi si potrebbe lasciare vuoto e inserire solo il punto e virgola che delimita i campi nel caso non si inserisse
nulla all'interno dei tre campi si otterrebbe un ciclo infinito poiché sempre con condizione è sottintesa bera bisogna fare attenzione anche qui altra cosa la prima è quella di creare un ciclo in modo tale da non renderlo perpetuo quindi rendere falsa la condizione nel momento corretta la seconda è quella di prestare attenzione alle variabili dichiarate nel primo campo il loro utilizzo esiste solo localmente in quel foro e non si possono utilizzare al di fuori al contrario se la variabile è stata dichiarata ainis programma continua a essere disponibile anche dopo il ciclo creato infine il terzo aspetto
è quello di sapere che si possono usare le variabili del tipo più adeguata all'uso del ciclo se per esempio devo gestire caratteri posso dichiarare una variabile chat o se devo gestire solo valori positivi posso usare lance hind int oppure si preferisce utilizzare come tipo di dato per valori sempre positivi il tipo di dato size t che vi descrivo a sinistra del video a destra v opposto allo stesso esempio fatto con il wine ma impostato con il fuoco come vedete io ho preferito dichiarare la variabile contatore nel primo campo perform il risultato è identico nel caso
avesse voluto dichiararla ha inizio al programma l'unica differenza sta che s'è dichiarata nel forum non posso usare quella variabile al di fuori del ciclo la terza e ultima estrazione di questa lezione è il 2 è a sinistra è descritta formalmente a differenza delle due precedenti istruzioni il dual è un ciclo a post condizionale questo significa che il programma entra direttamente nel corpo del ciclo e solo dopo valuta la condizione inserita quindi il corpo è eseguito sempre almeno una volta lo scopo di questo ciclo è quello di fare da controllore di inserimenti facciamo un esempio a
destra già visto nel video delle istruzioni di selezione che finalmente si può ottimizzare chiediamo all'utente di inserire il numero dei suoi anni valutando se maggiorenne o minorenne il problema che ci eravamo posti in passato era quello che se l'utente inseriva netta negativa bisognava creare un ulteriore controllo che avvisava l'età errata ora con il dual possiamo forzare l'utente a inserire il numero di anni corretti essendo che bisogna controllare il valore ottenuto dallo ska nef questo va inserito nel corpo del dual è nella condizione ha proposto che l'età deve essere minore di 0 in questo modo dato
che continua a ciclare sul vero se si inserisce un numero negativo risulta verificare la condizione e quindi verrà richiesto l'input non appena si inserisce un valore positivo la condizione risultata falsa e quindi il programma proseguirà avanti uscendo dal ciclo bisogna stare dunque attenti alle condizioni che si inseriscono all'interno delle parentesi tonde perché per chi è alle prime armi possono ingannare inoltre preciso che questo è un esempio di utilizzo e nel video dedicato agli esercizi e vedremo nel dettaglio i ragionamenti gli usi durante la costruzione dei programmi tutti e tre cicli interscambiabile questo significa che è
possibile realizzare gli stessi programmi e ottenere gli stessi risultati con ognuna delle tre istruzioni presentate però in quanto programmatori e giusto e corretto fare sempre un uso adeguato di ciò che a disposizione come visto poco fa il ciclo dual è ottimale per controllare gli inserimenti in input da tastiera sfruttando la caratteristica post condizionale allo stesso modo si possono delineare 2 usi delle interazioni legate più e cicli wild and for la prima modalità e l'iter azione controllata da contatore definita talvolta interazione definita perché sappiamo in anticipo quante volte verrà eseguito il ciclo come negli esempi presentati
prima per il wylford dove venivano stampati i valori dell'uno fino al numero inserito dall'utente in questa modalità è perciò presente una variabile definita contatore che segnerà volta per volta il conteggio di ripetizioni l'interazione controllata da contatore si avvicina di più all'uso del forum perché è più comodo creare gestire il contatore direttamente nelle parentesi tonde a fianco alla condizione ma ciò non toglie che sia utilizzabile anche queste modalità nel ciclo wilde e dwight tramite alcuni accorgimenti la seconda modalità è l'interazione controllata da sentinella definita volta i trazione indefinita perché non si sa in anticipo quante volte
verrà eseguito il ciclo questa modalità si avvicina di più al while ma pur sempre utilizzabile nel forest wild con appositi accorgimenti facciamo un esempio con questa modalità per comprendere al meglio come opera poniamo caso che il programma chieda in input numeri interi e li sommi fino a quando non viene inserito il numero zero che interrompe la somma in mostra in output il risultato finale come vedete non si sa quando l'utente inserirà allo zero quindi è indefinita la ripetizione che si fa all'interno del ciclo come ultima parte del video è sempre corretto dare delle buone indicazioni
all'uso che si deve fare delle istruzioni quindi ricordatevi bene questi seguenti punti al fine di creare programmi corretti primo punto ripeto che si devono evitare cicli infiniti che non prevedono una via d'uscita secondo punto i cicli possono essere usati all'interno di altri cicli come abbiamo visto per l'istruzione di selezione iv si possono annidare tra loro un ciclo dentro un altro ciclo si definisce annidamento e la soglia consentita è quella di tre livelli cioè un ciclo contenuto in un altro ciclo contenuto anch'esso in un altro ciclo ancora superare il terzo livello rende il programma difficile da
comprendere e da gestire terzo punto ricordatevi che le variabili dichiarate nell'intestazione del ciclo four non sono utilizzabili al di fuori di essa se vi serve lavorare con il valore ottenuto dal ciclo vi consiglio di dichiarare la variabile ha inizio il programma quarto punto attenti agli errori of by one quando in una condizione si vuole arrivare tramite contatore a una certa soglia per concludere si nel ciclo while e il four possono omettere le parentesi graffe quando si lavora con una sola istruzione inoltre in alcuni rari casi è possibile che non ci siano istruzioni nel corpo del
ciclo e quindi si può semplicemente inserire a capo mediante la tabulazione il punto e virgola questo indicherà l'assenza di comandi nel corpo e quindi verrà solo eseguita la condizione la prossima lezione riguarderà solamente esercizi relativi a queste istruzioni vi ricordo inoltre che nella descrizione di quel video troverete gli esercizi svolti più alcuni lasciati a voi da eseguire autonomamente la lezione è conclusa se avete qualcosa da chiedere fatelo pure nei commenti e cercherò di rispondervi se non siete già iscritti al canale iscrivetevi seguitemi su telegram e su instagram e noi ci vediamo un prossimo video ciao
ragazzi