Programmazione – Lezione 3 – Prendere decisioni

Decisioni

Ci stiamo addentrando nei meandri caotici della programmazione. Il computer non si limita ad effettuare calcoli matematici, ma è anche in grado di prendere decisioni. Un esempio attuale, le macchine che si guidano da sole, per ora sono stati realizzati dei prototipi in fase di test, ma tra non molto noi staremo comodamente seduti in auto a leggere un giornale mentre questa ci porta a lavoro. Dietro tale tecnologia ovviamente ci sta un computer molto sofisticato e dei programmi estremamente complessi, che sono in grado di fare prendere delle decisioni all’auto e, ad esempio,  capire quando fermarsi se c’è il semaforo rosso o deviare in caso di un ostacolo.

Noi, con semplici esempi, cercheremo di capire come il nostro programma possa prendere delle decisioni ed optare per un percorso o un’altro.

L’istruzione, nel linguaggio C, ma in genere in tutti i linguaggi, è attribuita ad IF….ELSE.

Esempio generico :

if (espressione)
   istruzione1
else
   istruzione2

L’istruzione IF permette di fare dei confronti e grazie a questi confronti verrano prese le decisioni.

Se ad esempio abbiamo due variabili A e B, l’istruzione IF permette di confrontare il loro contenuto, per cui possiamo avere che:

A = B

A > B

A < B

A diverso da B

Ma anche

A > o = B

A < o = B

Ad esempio:

int A = 5;
int B = 1;
if (A == B)
   istruzione1
else
   istruzione2

In questo caso l’istruzione IF verifica se A è uguale a B, se lo è allora esegue l’istruzione 1, se non lo è, come nel nostro caso, esegue l’istruzione 2 in quanto la condizione A = B è falsa.

Alla fine il tutto si traduce nel determinare se una condizione è VERA o FALSA.

La sintassi delle espressioni da utilizzare con IF è la seguente:

A è uguale a B : A == B

A è maggiore di B : A > B

A è minore di B : A < B

A è maggiore o uguale a B : A >= B (badate scrivere => è sbagliato ed otterrete un errore)

A è minore o uguale a B : A <= B (badate scrivere =< è sbagliato ed otterrete un errore)

A è diverso da B : A != B (badate scrivere =! è sbagliato ed otterrete un errore)

Vediamo di mettere su un poco di codice sorgente da provare nel nostro compilatore online.

int A = 12;
int B = 45;
if (A > B)
   printf("A è maggiore di B");
else
   printf("A è minore di B");

Per provare nel compilatore suggerito, andate in basso a sinistra e scegliete come linguaggio C++ 14

Compilatore1

Per inserire il vostro codice sorgente, e fare delle prove, iniziate a scrivere al posto del commento // your code goes here

Risultato IF

Noi chiediamo al computer di verificare se A è maggiore di B, se la condizione è vera allora scriverà che “A è maggiore di B”, se non lo è scriverà che “A è minore di B”.

Ed ecco che il compilatore ci darà come risultato che A è minore di B, infatti A = 12, mentre B = 45 per cui 12 > 45 è una condizione falsa e verrà eseguita la linea di codice subito sotto ELSE.

Provate anche voi a fare delle prove e sbizzarrirvi Smile-Ammicca

Se ti è piaciuto l'articolo e apprezzi il mio lavoro potresti aiutarmi con una piccola donazione, tramite PayPal, offrendomi un cappuccino.
Grazie di cuore!
Dona