libri-javascript-python

In quest’articolo studieremo il funzionamento dell’istruzione if else in C++.

Quando vogliamo eseguire un’istruzione al verificarsi di una certa condizione possiamo utilizzare infatti l’istruzione if … else.


Sintassi if else in C++

La sintassi è dunque questa:

if (espressione)

istruzioni_if

else

istruzioni_else

Se espressione è vera vengono eseguite le istruzioni_if, altrimenti se è falsa il programma esegue le istruzioni_else.

L’istruzione può anche essere una sola.

Nel caso di più istruzioni si usano le parentesi graffe.

Se non necessaria, l’istruzione else può anche essere omessa.


Facciamo subito un classico esempio per capire meglio il funzionamento dell’istruzione if else in C++.


Esempio con l’uso di if else in C++

Prendere in input l’età di una persona e controllare se è maggiorenne.

if (eta>=18) //se l’età è maggiore o uguale a 18
        cout<<“Maggiorenne “; //allora stampo a video : “Maggiorenne “
else  //altrimenti sè minore di 18
      cout<<“Minorenne “; //allora stampo a video : “Minorenne”


Per sviluppare l’esercizio ho utilizzato inoltre gli operatori di confronto.

Gli operatori di confronto ricordiamo si indicano in questo modo:

> maggiore

< minore

== uguale

>= maggiore o uguale

<= minore o uguale

!= diverso

Ecco il listato completo sull’uso dell’istruzione if else in C++:

#include <iostream>
using namespace std;

int main() {
    int eta;
    cout<<"Inserisci l'eta': ";
    cin>>eta;
    if(eta>=18)
	   cout<<"Maggiorenne ";
    else 
	   cout<<"Minorenne";

    return 0;
}


If annidati

All’interno delle istruzioni if ed else è possibile inserire altri if.

Esempio con l’uso degli if annidati

Facciamo anche qui un esempio per capire meglio:

#include <iostream>
using namespace std;

int main() {
    int voto;
    cout<<"Inserisci un numero: ";
    cin>>voto;
    if(voto<10)
	  if (voto<6)
	        cout<<"Mi spiace non sei sufficiente. Ti daro' possibilita' di recuperare! ";
	   else 
	       cout<<"Bravo!";
    return 0;
}

In questo esempio sull’utilizzo di if annidati, realizzato a scopo didattico, abbiamo dapprima valutato il voto e se tale voto è minore di 10 abbiamo valutato se è anche minore di 6 oppure no, dando in entrambi i casi un messaggio in output.

Quindi il secondo if, con tutte le sue istruzioni, non verrà valutato se il voto di partenza non è minore di 10.

Inoltre notate anche che non ho inserito l’else del primo if, in quanto in questo specifico esempio non era necessario.

Facciamo adesso un altro esempio.

Esempio 3

#include <iostream>
using namespace std;

int main() {
    int numero;
    cout<<"Inserisci un numero: ";
    cin>>numero;
    if(numero<100)
	 if (numero>0)
	       cout<<"Il numero e' minore 100 e maggiore di 0. ";
	 else 
	       cout<<"Il numero e' minore di 0.";
    else 
	 if (numero==100)
		cout<<"Il numero e' uguale a 100. ";
	else
		cout<<"Il numero e' maggiore di 100. ";	
	return 0;
}

In questo caso ho inserito l’else al primo if.


If else a cascata

Le decisioni a più vie possono essere risolte con l’uso di più if else a cascata.


Esempio 4

Prendere un numero e controllare se positivo, negativo o nullo.

Prendiamo un numero intero in input e con l’istruzione if controllo se il numero è negativo. Se la condizione è vera visualizzo in output che il numero è negativo, se è falsa allora controllo se il numero è nullo. Se quest’ultima condizione è vera stampo in ouptut che il numero è nullo, altrimenti il numero sarà positivo e visualizzo in output il relativo messaggio (è importante evitare di inserire un altro se!).

Opero in questo modo:

if (numero<0) //se il numero è negativo
        cout<<“Numero negativo “; //allora stampo a video : “Numero negativo”
else if (numero==0) //altrimenti se il numero è nullo
      cout<<“Numero nullo “; //allora stampo a video : “Numero nullo”
else //altrimenti se il numero è positivo
     cout<<“Numero positivo “; //allora stampo a video : “Numero positivo”

Ecco il listato compelo sull’esempio di if else a cascata in C++:

#include <iostream>
using namespace std;

int main() {
    int numero;
    cout<<"Inserisci un numero: ";
    cin>>numero;
    if(numero<0)
	cout<<"Numero negativo ";
    else if (numero==0)
	cout<<"Numero nullo ";
    else
	cout<<"Numero positivo ";
    return 0;
}

Questi sono solo alcuni semplici esempi di utilizzo di if else in C.

Alcuni link utili:

Indice argomenti linguaggio C++

1- Introduzione al linguaggio C++

2- Variabili in C++

3- Operatori di assegnazione in C++

4- Esempi in C++

5- Casting in C++

Successione di Fibonacci in C++