Operatori Matematici e Logici in C++

Esegui operazioni matematiche e confronti fondamentali

Gli operatori in C++ consentono di eseguire operazioni matematiche e confronti fondamentali. Qui di seguito vediamo le tre categorie principali.

1. Operatori Aritmetici

➕ Addizione +

Somma due valori

➖ Sottrazione -

Sottrae il secondo valore dal primo

✖️ Moltiplicazione *

Moltiplica due valori

➗ Divisione /

Divide il primo valore per il secondo

📊 Modulo %

Restituisce il resto della divisione intera

⚠️ Attenzione: Se entrambi gli operandi sono interi, il risultato sarà anch’esso intero. Per ottenere una divisione in virgola mobile, almeno uno degli operandi deve essere di tipo float o double.

#include <iostream>
using namespace std;
int main() {
int

a = 10, b = 3;

cout << “Somma: “ << a + b << endl;
cout << “Differenza: “ << a – b << endl;
cout << “Moltiplicazione: “ << a * b << endl;
cout << “Divisione (intera): “ << a / b << endl;
cout << “Divisione (decimale): “ << (double)a / b << endl;
cout << “Modulo: “ << a % b << endl;
return 0;
}

Incremento (++) e Decremento (–)

L’operatore ++ incrementa una variabile di 1, mentre -- la decrementa di 1. Esistono due modalità:

🔼 Pre-incremento/decremento

++variabile o --variabile
La variabile viene modificata prima di essere usata

🔽 Post-incremento/decremento

variabile++ o variabile--
La variabile viene usata prima, poi modificata

int

a = 5, b;

b = ++a; // Pre-incremento: a diventa 6, poi b = 6
b = a++; // Post-incremento: b = 6, poi a diventa 7

Operatori di Assegnazione Composta

+=

num += 5;
Equivale a: num = num + 5;

-=

num -= 3;
Equivale a: num = num - 3;

2. Operatori di Confronto

Permettono di confrontare due valori e restituiscono un valore booleano (1 = vero, 0 = falso):

==

Uguale a

!=

Diverso da

>

Maggiore di

<

Minore di

>=

Maggiore o uguale

<=

Minore o uguale

int

x = 5, y = 10;

cout << “x < y: “ << (x < y) << endl; // Output: 1

3. Operatori Logici

Servono per combinare più condizioni:

🔗 AND logico &&

Vero solo se entrambe le condizioni sono vere

🔀 OR logico ||

Vero se almeno una condizione è vera

🔄 NOT logico !

Inverte il valore booleano

bool

c1 = true, c2 = false;

cout << (c1 && c2) << endl; // Output: 0 (false)

💡 Nota: Le espressioni booleane vengono stampate come numeri: 1 indica vero e 0 indica falso. Questo approccio è utile per chi è agli inizi e non ha ancora studiato strutture condizionali come l’if.

🎯 Esercitazioni Guidate

Esercizi pratici senza array e senza if

1. Calcolatrice Semplice

Scrivi un programma che chieda due numeri all’utente e stampi il risultato delle principali operazioni matematiche.

int

a, b;

cin >> a >> b;
cout << “Somma: “ << a + b;

2. Verifica Maggiore Età

Chiedi all’utente la sua età e stampa il risultato della condizione “maggiore o uguale a 18”.

int

eta;

cin >> eta;
cout << (eta >= 18); // 1=maggiorenne, 0=minorenne

3. Pari o Dispari

Chiedi un numero e stampa il risultato di numero % 2.

cout << (numero % 2); // 0=pari, 1=dispari

4. Login Semplice

Simula un login confrontando la password inserita con quella predefinita.

string

password;

cin >> password;
cout << (password == “abc123”); // 1=corretto

5. Operazioni su Voti Scolastici

Chiedi tre voti, calcola la media e verifica se è maggiore o uguale a 6.

float

media = (v1 + v2 + v3) / 3;

cout << (media >= 6); // 1=promosso

6. Conversione di Valuta

Converti un importo in Euro in Dollari utilizzando un tasso di cambio fisso (1€ = 1.1$).

#include <iostream>
using namespace std;
int main() {
double

euro;

const double

tassoCambio = 1.1;

cout << “Inserisci l’importo in Euro: “;
cin >> euro;
cout << “Equivalente in Dollari: “ << euro * tassoCambio << endl;
return 0;
}

7. Calcolo dell’Anno di Nascita

Chiedi l’età e calcola l’anno di nascita (anno corrente: 2025).

#include <iostream>
using namespace std;
int main() {
int

eta;

const int

annoCorrente = 2025;

cout << “Inserisci la tua età: “;
cin >> eta;
cout << “Anno di nascita: “ << annoCorrente – eta << endl;
return 0;
}

8. Calcolo dell’Indice di Massa Corporea (BMI)

Calcola il BMI e verifica se è compreso tra 18.5 e 24.9.

#include <iostream>
using namespace std;
int main() {
float

peso, altezza, bmi;

cout << “Inserisci il tuo peso (kg): “;
cin >> peso;
cout << “Inserisci la tua altezza (m): “;
cin >> altezza;
bmi = peso / (altezza * altezza);
cout << “BMI: “ << bmi << endl;
cout << “BMI nella norma? (1 = sì, 0 = no): “ << (bmi >= 18.5 && bmi <= 24.9) << endl;
return 0;
}

9. Calcolo Area e Perimetro Rettangolo

Chiedi base e altezza, calcola area e perimetro.

#include <iostream>
using namespace std;
int main() {
float

base, altezza;

cout << “Inserisci la base del rettangolo: “;
cin >> base;
cout << “Inserisci l’altezza del rettangolo: “;
cin >> altezza;
cout << “Area: “ << base * altezza << endl;
cout << “Perimetro: “ << 2 * (base + altezza) << endl;
return 0;
}

10. Differenza dei Quadrati

Chiedi due numeri e calcola a² – b².

#include <iostream>
using namespace std;
int main() {
int

a, b;

cout << “Inserisci due numeri interi: “;
cin >> a >> b;
cout << “Il risultato di a^2 – b^2 è: “ << (a * a) – (b * b) << endl;
return 0;
}

11. Verifica dei Multipli

Verifica se un numero è multiplo di 2 e di 3 contemporaneamente.

#include <iostream>
using namespace std;
int main() {
int

num;

cout << “Inserisci un numero: “;
cin >> num;
cout << “Il numero è multiplo di 2 e 3? (1 = sì, 0 = no): “
<< ((num % 2 == 0) && (num % 3 == 0)) << endl;
return 0;
}

Torna in alto