Esercizi operatore ternario in C
Codegrind Team•Jul 22 2023
Ecco degli esercizi semplici con soluzione per praticare le basi dell’operatore ternario in C.
Esercizio 1
Chiedere all'utente di inserire un numero e verificare se è positivo o negativo utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
(numero >= 0) ? printf("Il numero è positivo.\n") : printf("Il numero è negativo.\n");
return 0;
}
Esercizio 2
Chiedere all'utente di inserire un numero e verificare se è pari o dispari utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
(numero % 2 == 0) ? printf("Il numero è pari.\n") : printf("Il numero è dispari.\n");
return 0;
}
Esercizio 3
Chiedere all'utente di inserire un anno e verificare se è bisestile utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int anno;
printf("Inserisci un anno: ");
scanf("%d", &anno);
((anno % 4 == 0 && anno % 100 != 0) || (anno % 400 == 0)) ? printf("L'anno è bisestile.\n") : printf("L'anno non è bisestile.\n");
return 0;
}
Esercizio 4
Chiedere all'utente di inserire un numero e calcolarne il valore assoluto utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
int valoreAssoluto = (numero < 0) ? -numero : numero;
printf("Il valore assoluto del numero è: %d\n", valoreAssoluto);
return 0;
}
Esercizio 5
Chiedere all'utente di inserire un carattere e verificare se è una lettera maiuscola, minuscola o un numero utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
char carattere;
printf("Inserisci un carattere: ");
scanf(" %c", &carattere);
(carattere >= 'A' && carattere <= 'Z') ? printf("Il carattere è una lettera maiuscola.\n") :
(carattere >= 'a' && carattere <= 'z') ? printf("Il carattere è una lettera minuscola.\n") :
(carattere >= '0' && carattere <= '9') ? printf("Il carattere è un numero.\n") :
printf("Il carattere non è una lettera o un numero.\n");
return 0;
}
Esercizio 6
Chiedere all'utente di inserire due numeri e determinare il massimo tra i due utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int numero1, numero2;
printf("Inserisci il primo numero: ");
scanf("%d", &numero1);
printf("Inserisci il secondo numero: ");
scanf("%d", &numero2);
int massimo = (numero1 > numero2) ? numero1 : numero2;
printf("Il massimo tra i due numeri è: %d\n", massimo);
return 0;
}
Esercizio 7
Chiedere all'utente di inserire un anno e verificare se è un secolo (anno divisibile per 100) utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int anno;
printf("Inserisci un anno: ");
scanf("%d", &anno);
(anno % 100 == 0) ? printf("L'anno è un secolo.\n") : printf("L'anno non è un secolo.\n");
return 0;
}
Esercizio 8
Chiedere all'utente di inserire un numero e verificare se è multiplo di 5 e/o di 7 utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
(numero % 5 == 0 && numero % 7 == 0) ? printf("Il numero è multiplo di 5 e di 7.\n") :
(numero % 5 == 0) ? printf("Il numero è multiplo di 5.\n") :
(numero % 7 == 0) ? printf("Il numero è multiplo di 7.\n") :
printf("Il numero non è multiplo né di 5 né di 7.\n");
return 0;
}
Esercizio 9
Chiedere all'utente di inserire l'età di una persona e verificare se è maggiorenne (età >= 18) utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int eta;
printf("Inserisci l'età: ");
scanf("%d", &eta);
(eta >= 18) ? printf("La persona è maggiorenne.\n") : printf("La persona è minorenne.\n");
return 0;
}
Esercizio 10
Chiedere all'utente di inserire la durata di una chiamata telefonica in minuti e calcolarne il costo, sapendo che ogni minuto costa 0.50 euro, utilizzando l'operatore ternario.
#include <stdio.h>
int main() {
int durataChiamata;
float costoChiamata;
printf("Inserisci la durata della chiamata telefonica in minuti: ");
scanf("%d", &durataChiamata);
costoChiamata = durataChiamata * 0.50;
printf("Il costo della chiamata è: %.2f euro\n", costoChiamata);
return 0;
}