mercoledì 15 ottobre 2025

Corso di Python: 3 – Operatori e Strutture di Controllo

3 – Operatori e Strutture di Controllo

📌 1. Operatori in Python

Gli operatori sono strumenti fondamentali per manipolare dati. Possiamo distinguerli in più categorie:

1.1 Operatori aritmetici

Agiscono su valori numerici.

OperatoreSignificatoEsempioRisultato
+Addizione5 + 38
-Sottrazione5 - 32
*Moltiplicazione5 * 315
/Divisione (float)5 / 22.5
//Divisione intera5 // 22
%Modulo (resto)5 % 21
**Potenza2 ** 38

👉 Esempio pratico:

a = 10 b = 3 print(a // b) # 3 print(a % b) # 1 print(a ** b) # 1000

1.2 Operatori di confronto

Restituiscono valori booleani (True o False).

OperatoreSignificatoEsempioRisultato
==Uguale a5 == 5True
!=Diverso da5 != 3True
>Maggiore5 > 3True
<Minore5 < 3False
>=Maggiore o uguale5 >= 5True
<=Minore o uguale3 <= 5True

👉 Esempio:

x = 7 y = 10 print(x > y) # False print(x != y) # True

1.3 Operatori logici

Servono a combinare condizioni logiche.

OperatoreSignificatoEsempioRisultato
andVero se entrambe le condizioni sono vere(5 > 3 and 8 > 6)True
orVero se almeno una condizione è vera(5 > 10 or 8 > 6)True
notInverte il valorenot(5 > 3)False

👉 Esempio:

eta = 20 studente = True print(eta > 18 and studente) # True print(eta < 18 or studente) # True print(not studente) # False

📌 2. Strutture di Controllo

2.1 Condizioni: if, elif, else

Consentono di eseguire blocchi di codice in base a condizioni logiche.

👉 Esempio:

x = 15 if x > 20: print("Maggiore di 20") elif x == 20: print("Uguale a 20") else: print("Minore di 20")

✅ Output: Minore di 20

2.2 Ciclo for

Il ciclo for in Python serve a iterare su sequenze (liste, stringhe, range, ecc.).

👉 Esempio con range:

for i in range(5): print(i)

✅ Output: 0 1 2 3 4

👉 Esempio con lista:

frutti = ["mela", "pera", "banana"] for frutto in frutti: print(frutto)

2.3 Ciclo while

Il ciclo while ripete un blocco finché la condizione è vera.

👉 Esempio:

n = 1 while n <= 5: print(n) n += 1

✅ Output: 1 2 3 4 5

⚠️ Attenzione: se la condizione non diventa mai falsa, il ciclo è infinito.

📌 3. Esercizio pratico: Programma che stampa i numeri primi

Un numero primo è divisibile solo per 1 e per sé stesso.

Approccio logico

  1. Prendere un intervallo di numeri.

  2. Per ogni numero > 1, verificare se ha divisori oltre a 1 e sé stesso.

  3. Se non ha divisori → è primo.

Codice Python

# Programma: numeri primi da 2 a 50 for num in range(2, 51): primo = True for i in range(2, int(num ** 0.5) + 1): if num % i == 0: primo = False break if primo: print(num, end=" ")

Output:

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47

Esempio svolto passo-passo

Verifichiamo se 29 è primo:

  1. Calcoliamo √29 ≈ 5.38 → basta controllare i divisori da 2 a 5.

  2. 29 % 2 = 1 → non divisibile.

  3. 29 % 3 = 2 → non divisibile.

  4. 29 % 4 = 1 → non divisibile.

  5. 29 % 5 = 4 → non divisibile.

👉 Nessun divisore → 29 è primo

📌 4. Applicazioni pratiche

  • Controllo di accesso: if per verificare password corrette.

  • Analisi di dati: cicli for per scorrere grandi dataset.

  • Simulazioni fisiche: while per iterare fino a raggiungere una condizione di equilibrio.

  • Numeri primi → crittografia e sicurezza informatica.

📍 Riepilogo Modulo

  • ✅ Imparati operatori aritmetici, logici e di confronto.

  • ✅ Condizioni if-elif-else.

  • ✅ Cicli for e while.

  • ✅ Esercizio: stampa dei numeri primi con algoritmo ottimizzato.

Nessun commento:

Posta un commento

Corso Fondamenti di Informatica e Reti: 6 Reti di computer e Internet

Reti di computer e Internet Introduzione Prova a pensare alla vita quotidiana senza reti informatiche: niente messaggi WhatsApp, niente m...