Esempi Python – In questa lezione faremo altri esempi in Python utilizzando il ciclo for, al fine di acquisire una comprensione più approfondita di come questo costrutto può essere utilizzato per iterare attraverso dati, eseguire operazioni ripetute e risolvere una vasta gamma di problemi di programmazione.
Proponiamo quindi alcuni algoritmi di esempio.
Esempi Python – Primo esempio in Python
Scrivere i numeri da 1 a N saltando i multipli di 3.
Quindi chiediamo di prendere in input un numero N, dopo utilizziamo un ciclo for con range da 1 fino ad N + 1.
All’interno del ciclo se l’indice i non è divisibile per 3 stampiamo il numero, altrimenti non facciamo nulla.
Ecco dunque una possibile risoluzione.
N = int(input('Inserire N: '))
for i in range(N+1):
if i % 3 != 0:
print(i)
Esempi Python – Secondo esempio
Dato un numero n scrivere i primi ‘n’ quadrati dei numeri interi.
Ad esempio se n = 5 i primi 5 quadrati sono 1, 4, 9, 16, 25.
Al solito chiediamo all’utente di inserire un numero interno N. Dopo con un ciclo for con indice i nel range tra 1 ed N+1, calcoliamo le potenze e le visualizziamo.
N = int(input('Inserire N: '))
for i in range(1, N+1):
i **= 2
print(i)
Esempi Python – Terzo esempio
Dati due numeri m ed n, scrivere, contare e sommare i numeri che sono divisori di entrambi.
Banner pubblicitario
Esempio con m = 20, n = 30 1 2 5 10 conteggio 4, somma 18
Quindi prendiamo in input m ed n e inizializziamo le variabili c ed s a 0.
La variabile c rappresenta il contatore dei divisori, mentre s rappresenta la somma dei divisori.
Dopo con un ciclo for con i nel range 1 ed m+1, dividiamo m ed n per i e, solo se entrambi verificano il criterio di divisibilità impostato, stampiamo i valori di i, incrementiamo c e sommiamo il divisore alla variabile s.
Infine visualizziamo i valori di c e di s.
Ecco dunque il codice completo:
m = int(input('Inserire m: '))
n = int(input('Inserire n: '))
c = s = 0
for i in range(1, m+1):
if m % i == 0 and n % i == 0:
print(i)
c += 1
s += i
print('I divisori in comune sono in totale: ', c)
print('La somma dei divisori in comune è: ', s)
Così facendo però se ad esempio m = 30 e n = 20 allora divideremo 20 per 30 e ciò non ha senso allora potrei fermarmi fissando un range al valore minimo tra i due. Ad esempio:
m = int(input('Inserire m: '))
n = int(input('Inserire n: '))
c = s = 0
for i in range(1, min(m,n)+1):
if m % i == 0 and n % i == 0:
print(i)
c += 1
s += i
print('I divisori in comune sono in totale: ', c)
print('La somma dei divisori in comune è: ', s)
Potrei anche calcolare prima del for il minimo tra i dei due numeri senza usare la funzione minimo.
Conclusioni
Gli esempi proposti illustrano in modo chiaro e pratico come utilizzare il ciclo for in Python per risolvere una varietà di problemi di programmazione. Il primo esempio dimostra come iterare attraverso una sequenza di numeri, saltando i multipli di 3, utilizzando l’operatore modulo per controllare la divisibilità. Il secondo esempio mostra come generare i primi quadrati dei numeri interi utilizzando un ciclo for e calcolando le potenze. Infine, il terzo esempio illustra come trovare, contare e sommare i divisori comuni di due numeri utilizzando un ciclo for e la logica dei divisori.
Questi esempi forniscono un’ottima base per comprendere le capacità del ciclo for e come può essere utilizzato per risolvere problemi reali.
Che l’esplorazione e l’apprendimento continuino, portando ad una maggiore padronanza della programmazione e alla risoluzione di sfide sempre più complesse! E non mancate di leggere il libro “50 Algortimi per imparare Python” disponibile su Amazon:
Questi erano solo alcuni esempi in Python, nelle prossime lezioni vedremo altre applicazioni.
Alcuni link utili
Indice tutorial sul linguaggio Python
1 – Introduzione al linguaggio Python
2 – Le variabili
3 – Operatori aritmetici e di assegnazione
4 – Stringhe
5 – Casting
6 – Input e print
8 – Errori in Python
9 – Script Python
10 – Scambio di variabili
11 – Modulo math
Commenti recenti