Semplice guida per il C++ che tratta gli argomenti del flusso di controllo, dei costrutti condizionali e dei cicli.
Costrutto if-else: esegue un insieme di istruzioni se la condizione specificata è vera:
Sintassi:
if () { statement1; statement 2; …. statement n; } else { statement1;statement 2;….statement n; }
In questo: se la condizione specificata è vera, allora le istruzioni comprese nelle prime parentesi graffe saranno eseguite, altrimenti saranno eseguite le istruzioni nelle parentesi graffe seguenti.
Alcuni punti da notare:
•se c’è solo una istruzione che segue l’if, dovrà essere eseguita solo quella se la condizione specificata è vera, quindi le parentesi graffe sono opzionali. Stessa cosa anche per le istruzionoi che seguono l’else.
•L’else è opzionale nel costrutto.
•Un else, senza un if non ha significato.
I costrutti if-else eseguono istruzioni basate su condizioni, ma come facciamo a scrivere queste condizioni? Per scrivere le condizioni abbiamo bisogno degli Operatori Relazionali. Gli operatori Relazionali o Comparativi sono usati per confrontare i valori.
Ritornano il valore booleano Vero o Falso (1 o 0) alle istruzioni in cui si trovano.
<, <=,>,=>, !=, == esempio: if (a>b) cout<Nel costrutto di sopra, se la condizione è vera, cioè se a è maggiore di b, allora l’operatore relazionale > ritorna il valore Vero (o 1) all’istruzione in cui si trova, cioè nell’if e quindi verrà mostrato il valore della variabile a. Se la condizione è falsa (cioè a è minore o uguale a b), allora l’operatore relazionale ritorna un valore Falso (o 0) all’istruzione if e il controllo va all’istruzione dopo l’else, e verrà mostrato il valore della variabile b.
Nota: Attenzione che per comparare due valori uguali deve essere utilizzato ==, perchè = è l’operatore di assegnamento!
Per scrivere più di una condizione usiamo gli Operatori Logici. Questi sono &&, ||, !
&&-ANDTutte le condizioni legate dall’operatore AND devono essere vere per far considerare l’istruzione vera.
Esempio: if ((a>b)&&(a>c))
cout<b)||(a>c))
cout<b)
cout< if () { statement1; …. statement n; } else if ( )// se la precedente condizione era falsa, allora un nuovo costrutto inizia { // basato su un’altra condizione statement1; …. statement n; } else if ( ) { statement1; …. statement n; } …….// Questo può continuare per un qualsiasi numero di volte else if ( ) { statement1; …. statement n; } else { statement1; …. statement n; }
Nota: L’ultimo else è opzionale
Cicli: Usati per l’esecuzione ripetuta di un insieme di istruzioni finché la condizione data è vera.
Ciclo while - esegue un insieme di istruzioni finché la condizione specificata all’inizio è vera. La condizione è valutata all’inizio del ciclo, quindi deve essere vera all’inizio per eseguire un’altra volta le istruzioni.
Sintassi:
while() { statement1; … statement n; }
Nota: In modo simile all’istruzione if, le parentesi graffe sono opzionali se c’è solo un’istruzione nel ciclo
esempio:
int a=1;while(a<=3) { cout<Nell’esempio precedente, finché la condizione continua ad essere vera (cioè finché a è minore o uguale a 3), l’istruzione nel ciclo continuerà ad essere eseguita ancora ed ancora.
Ciclo do-while-è simile al ciclo while tranne per il fatto che la condizione è alla fine del ciclo. Come conseguenza, il ciclo è eseguito sempre una volta, senza tener conto del valore booleano della condizione.
Nota: Un punto e virgola alla fine e le parentesi graffe sono sempre richieste.
Sintassi:do { statement 1; .. statement n; }while(); L’output è lo stesso del ciclo while di sopra. La differenza è quando la condizione è falsa all’inizio stesso. Esempio se noi abbiamo assegnato ad ‘a’ un valore 6 all’inzio invece di 1, il ciclo while non avrebbe eseguito nemmeno una volta le istruzioni, ma il ciclo do-while eseguira almeno una volta (6 verrà mostrato) poiché la condizione è valutata solo alla fine della prima iterazione.
Ciclo for-è usato per eseguire un insieme di istruzioni finché la condizione specificata è vera.
Esempiofor(i=1;i<=4;i++) { cout<• i=1 è chiamata espressione di inizializzazione, ed è valutata solo la prima volta quando il ciclo è contato per la prima volta. Imposta il valore della variabile i ad 1
• i<=4 è chiamata condizione, o espressione di test ed è valutata prima di ogni interazione del ciclo. Finché la condizione rimane vera, il ciclo continua ad essere eseguito • i++ è chiamato espressione di incremento o decremento, ed è eseguita alla fine di ogni iterazione del ciclo. Se non c’è alcuna espressione di incremento o decremento, allora il ciclo si trasforma in un ciclo infinito. • Le parentesi graffe sono opzionali se il ciclo ha una sola istruzione L’inizializzazione e l’espressione di incremento possono essere lasciate vuote, e le operazioni che dovrebbero fare possono essere fatte rispettivamente fuori e dentro il ciclo. Esempio int i=1; for( ; i<=4; ) { cout<