Skip to content

Esercizi Operatore Ternario in C++

Ecco degli esercizi semplici con soluzione per praticare l’uso dell’operatore ternario in C++

Esercizio 1

Chiedi all'utente di inserire un numero intero e stampa se è pari o dispari utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int numero;
cout << "Inserisci un numero: ";
cin >> numero;
string risultato = (numero % 2 == 0) ? "Il numero è pari." : "Il numero è dispari.";
cout << risultato << endl;
return 0;
}

Esercizio 2

Chiedi all'utente di inserire la propria età e stampa se è maggiorenne o minorenne utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int eta;
cout << "Inserisci la tua età: ";
cin >> eta;
string risultato = (eta >= 18) ? "Sei maggiorenne." : "Sei minorenne.";
cout << risultato << endl;
return 0;
}

Esercizio 3

Chiedi all'utente di inserire un numero intero e calcola il suo valore assoluto utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int numero;
cout << "Inserisci un numero: ";
cin >> numero;
int valoreAssoluto = (numero < 0) ? -numero : numero;
cout << "Il valore assoluto del numero è " << valoreAssoluto << endl;
return 0;
}

Esercizio 4

Chiedi all'utente di inserire un voto compreso tra 0 e 100 e stampa se è valido utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int voto;
cout << "Inserisci il voto: ";
cin >> voto;
string risultato = (voto >= 0 && voto <= 100) ? "Il voto è valido." : "Il voto non è valido.";
cout << risultato << endl;
return 0;
}

Esercizio 5

Chiedi all'utente di inserire un anno e stampa se è bisestile utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int anno;
cout << "Inserisci un anno: ";
cin >> anno;
string risultato = ((anno % 4 == 0 && anno % 100 != 0) || anno % 400 == 0) ? "L'anno è bisestile." : "L'anno non è bisestile.";
cout << risultato << endl;
return 0;
}

Esercizio 6

Chiedi all'utente di inserire un carattere e stampa se è una lettera maiuscola, una lettera minuscola o un numero utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
char carattere;
cout << "Inserisci un carattere: ";
cin >> carattere;
string risultato = (carattere >= 'A' && carattere <= 'Z') ? "Il carattere è una lettera maiuscola." :
(carattere >= 'a' && carattere <= 'z') ? "Il carattere è una lettera minuscola." :
(carattere >= '0' && carattere <= '9') ? "Il carattere è un numero." :
"Il carattere non è valido.";
cout << risultato << endl;
return 0;
}

Esercizio 7

Chiedi all'utente di inserire un numero intero e stampa se è divisibile per 3 e per 5 utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int numero;
cout << "Inserisci un numero: ";
cin >> numero;
string risultato = (numero % 3 == 0 && numero % 5 == 0) ? "Il numero è divisibile per 3 e per 5." : "Il numero non è divisibile per 3 e per 5.";
cout << risultato << endl;
return 0;
}

Esercizio 8

Chiedi all'utente di inserire due numeri interi e stampa il maggiore utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int numero1, numero2;
cout << "Inserisci il primo numero: ";
cin >> numero1;
cout << "Inserisci il secondo numero: ";
cin >> numero2;
int massimo = (numero1 > numero2) ? numero1 : numero2;
cout << "Il massimo tra i due numeri è " << massimo << endl;
return 0;
}

Esercizio 9

Chiedi all'utente di inserire tre numeri interi e calcola la somma dei numeri positivi utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int numero1, numero2, numero3;
cout << "Inserisci il primo numero: ";
cin >> numero1;
cout << "Inserisci il secondo numero: ";
cin >> numero2;
cout << "Inserisci il terzo numero: ";
cin >> numero3;
int sommaPositivi = (numero1 > 0 ? numero1 : 0) + (numero2 > 0 ? numero2 : 0) + (numero3 > 0 ? numero3 : 0);
cout << "La somma dei numeri positivi è " << sommaPositivi << endl;
return 0;
}

Esercizio 10

Chiedi all'utente di inserire un anno e stampa se è valido (compreso tra 1900 e 2099) utilizzando l'operatore ternario.
#include <iostream>
using namespace std;
int main() {
int anno;
cout << "Inserisci un anno: ";
cin >> anno;
string risultato = (anno >= 1900 && anno <= 2099) ? "L'anno è valido." : "L'anno non è valido.";
cout << risultato << endl;
return 0;
}