Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
In generale ogni comando del C++ deve essere terminato con il carattere punto-virgola (cioè “;”).
Le Diramazioni if e if . . . else
La forma più semplice del comando if dice al computer di eseguire un comando solo se un certo criterio è
soddisfatto:
if ( condizione ) corpo-sı̀
Il computer valuta condizione; se risulta vera, allora esegue corpo-sı̀, altrimenti non fa niente.
La forma più evoluta del comando sceglie fra due azioni diverse secondo un dato criterio:
if ( condizione ) corpo-sı̀ else corpo-no
Il computer valuta condizione; se risulta vera, allora esegue corpo-sı̀, altrimenti esegue corpo-no.
I Cicli
L’atto di eseguire una volta il corpo di un ciclo si dice anche “fare un’iterazione”.
Il Ciclo while
Il ciclo while è quello con la sintassi più semplice:
while ( condizione ) corpo
Praticamente il computer ripete iterazioni fino a quando condizione diventa falsa. Nota importante: la con-
dizione viene controllata prima di ogni iterazione, quindi è possibile che nessuna iterazione avvenga.
Il Ciclo for
Il ciclo for è il più usato, si adatta bene al caso dove serve un “contatore di iterazioni” (p.es. per scorrere gli
elementi di un array). L’intestazione del ciclo comprende l’inizializzazione, la condizione, e l’aggiornamento:
for ( iniz ; condizione ; aggiorn ) corpo
Le tre componenti fra parentesi sono facoltative e possono essere omesse (ma i caratteri “;” sono obbligatori);
generalmente sono presenti tutte.
L’esecuzione del ciclo è come segue. Il computer esegue prima iniz. Poi controlla condizione. Se risulta falsa,
allora il comando for termina; altrimenti esegue corpo. Dopo avere completato il corpo, esegue aggiorn. Poi
torna a ricontrollare condizione per la prossima iterazione. Eccetera.
1
La Diramazione switch
Il comando if ci consente di scegliere fra due percorsi di istruzioni diversi, invece il comando switch ci consente
di indicare qualunque numero di percorsi alternativi. La scelta viene indicata da un valore intero. Il comando
switch è piuttosto complesso: la sintassi è la seguente.
switch ( espressione )
{
case costante1 : comandi break;
case costante2 : comandi break;
case costante3 : comandi break;
...
default: comandi
}
Il computer calcola il valore (di tipo intero) di espressione. Poi confronta questo valore con ciascuna delle
costanti. Se il valore risulta uguale a una delle costanti elencate, allora esegue i comandi successivi (fino al
break). Invece, se il valore di espressione è diverso da tutte le costanti elencate, allora esegue i comandi dopo
la voce default.
Il compilatore non esige nessun ordinamento particolare per le costanti, ma controlla che tutte le costanti
siano diverse. Ribadisco che le costanti devono assolutamente essere dei valori interi.
Procedure e funzioni
Definizione di una Procedura
Una procedura è un blocco di comandi che svolge un compito ben definito. A differenza di una funzione,
una procedura non dà al chiamante nessun risultato. Un esempio di procedura è fill della libreria standard
di C++ che “riempie” le caselle indicate con un valore fisso. La sintassi generale per definire una procedura è:
Il Comando return
Il comando return si usa nel corpo di una funzione o di una procedura; può anche comparire più volte. Il
comando return indica al computer di uscire immediatamente dalla procedura/funzione, e tornare a seguire
le istruzioni del chiamante, partendo da quella subito dopo la chiamata. In una funzione il comando return
indica anche il valore da dare al chiamante: la sintassi è: return espressione; dove espressione è il valore da
passare. Invece in una procedura, la sintassi è semplicemente return;.