Massimo tra N numeri in Python

Massimo tra N numeri in Python

Realizziamo un algoritmo che calcola il massimo tra N numeri in Python, cioè che determini il valore maggiore dei numeri inseriti da tastiera.

La prima cosa da fare è dunque chiedere quanti numeri si vogliono inserire e si assegna questo valore ad N.

Si chiede dunque il primo numero e si assegna il valore appena inserito alla variabile massimo.

Si imposta la condizione: i<N-1 perché il primo numero è già stato inserito.

Dopo per ogni numero inserito si effettua il confronto: se n è maggiore di massimo si assegna a massimo il valore appena inserito.

Infine visualizziamo il valore massimo.

i=0

N=int(input(‘Quanti numeri vuoi inserire?:  ‘))

massimo=int(input(‘Inserisci il primo numero?:  ‘))

while i<N-1:

n=int(input(‘Inserisci un numero:  ‘))

if n>massimo:

massimo=n;

i+=1

print(‘Il massimo è: ‘, massimo)

Potremmo fare un controllo sul valore N, in modo tale che se l’utente inserisce un valore inferiore o uguale a zero dia un messaggio di errore.

i=0

N=int(input(‘Quanti numeri vuoi inserire?:  ‘))

if N>0:

massimo=int(input(‘Inserisci il primo numero?:  ‘))

while i<N-1:

n=int(input(‘Inserisci un numero:  ‘))

if n>massimo:

massimo=n;

i+=1

print(‘Il massimo è: ‘, massimo)

else:

print(‘Devi inserire una quantità pari almeno ad uno!’)

Nei prossimi tutorial torneremo ancora su quest’argomento, proponendo altre soluzioni alla ricerca del massimo tra N numeri in Python.

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

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math

12 – Operatori di confronto e booleani

13 – If else

14 – If elif else

15 – If annidati

Esempi ciclo while in Python

Esempi ciclo while in Python

In questa lezione propongo degli esempi pratici sul ciclo while in Python, al fine di consolidare l’uso delle iterazioni nei nostri algoritmi.

Esempi ciclo while in Python – pari e dispari

Vogliamo risolvere questo algoritmo:

Dati in input 10 numeri contare quanti numeri pari e quanti dispari sono stati inseriti.

Per contare i numeri pari e dispari utilizziamo quindi due variabili. Le chiamiamo ad esempio contap e contad. Le variabili sono inizializzate a 0 e se inseriamo un numero pari incrementiamo contap, altrimenti incrementiamo contad. Per verificare se un numero è pari controlliamo se il resto della divisione del numero per 2 è uguale a zero. Se il resto è zero, allora il numero è pari; altrimenti, è dispari. Utilizzando l’operatore modulo %, possiamo ottenere il resto della divisione. Se n % 2 è uguale a zero, allora n è pari.

Quindi l’algoritmo proposto si potrebbe risolvere in questo modo:

contap = contad = i = 0

while i < 10:
    n = int(input('Inserisci un numero: '))
    if n % 2 == 0:
        contap += 1
    else:
        contad += 1
    i += 1

print('I numeri pari inseriti sono:', contap)
print('I numeri dispari inseriti sono:', contad)

Ipotizziamo adesso di voler escludere il numero zero dal conteggio dei numeri pari, semplicemente a scopo didattico, in quanto comunque zero è considerato un numero pari. Come possiamo modificare l’algoritmo? Ecco di seguito una possibile implementazione:

contap = contad = i = 0

while i < 10:
    n = int(input('Inserisci un numero: '))
    if n != 0:
        if n % 2 == 0:
            contap += 1
        else:
            contad += 1
    i += 1

print('I numeri pari inseriti sono:', contap)
print('I numeri dispari inseriti sono:', contad)

Facciamo un’ulteriore modifica contando adesso quanti numeri uguali a zero sono stati inseriti.

contap = contan = contaz = i = 0

while i < 10:
    n = int(input('Inserisci un numero: '))
    if n == 0:
        contaz += 1
    elif n % 2 == 0:
        contap += 1
    else:
        contan += 1
    i += 1

print('I numeri pari inseriti sono:', contap, 'I numeri dispari inseriti sono:', contan, 'I numeri uguali a zero sono:', contaz)

Disponibile il libro su Python “50 Algoritmi per imparare Python”


Esempi ciclo while in Python – tabellina

In questo esempio vogliamo eseguire questo algoritmo:

Calcolare e visualizzare la tabellina del 2.

Un primo procedimento che fa uso di una sola variabile può essere questo:

i = 0

while i <= 20:
    print(i)
    i += 2

Abbiamo inizializzato la variabile i a 0 e l’abbiamo incrementata di due ad ogni iterazione finché la condizione i <= 20 è vera.

Ma possiamo anche pensare ad un’altra possibile soluzione dove utilizziamo una variabile i che moltiplichiamo per due.

Questa variabile si incrementa per ogni operazione di 1 fino ad arrivare a 10.

i = 0

while i <= 10:
    n = i * 2
    print(2, 'x', i, '=', n)
    i += 1

Potremmo anche definire un valore costante così da modificare facilmente la tabellina.

i = 0
t = 2

while i <= 10:
    n = i * t
    print(t, 'x', i, '=', n)
    i += 1

Modificando il valore di t, possiamo generare facilmente le tabelline di qualsiasi numero desiderato.

Conclusioni

In conclusione, abbiamo esaminato alcuni esempi pratici sull’utilizzo del ciclo while in Python per consolidare la comprensione delle iterazioni. Nel primo esempio, abbiamo sviluppato un programma per contare i numeri pari e dispari inseriti dall’utente, inclusa la gestione del numero zero ed il conteggio dei numeri pari e dispari. Nel secondo esempio, abbiamo esplorato diverse metodologie per generare e visualizzare la tabellina di un numero specifico, evidenziando come un singolo valore costante possa essere modificato per ottenere tabelline di diversi numeri.

Questi esempi illustrano il potenziale del ciclo while per automatizzare operazioni ripetitive e risolvere problemi in modo efficiente. Inoltre, abbiamo sottolineato l’importanza della comprensione dell’operatore modulo % per identificare i numeri pari e la flessibilità nel modificare un valore costante per adattare il programma a diverse esigenze.

Con una buona comprensione di questi concetti e una pratica continua, è possibile utilizzare il ciclo while in modo efficace per risolvere una vasta gamma di problemi di programmazione. Continuando a esplorare ulteriori esempi e applicazioni, è possibile migliorare le proprie capacità di programmazione e diventare più sicuri nell’uso di Python per risolvere problemi reali.

Seguite le prossime lezioni dove affronteremo ancora altri esempi sul ciclo while in Python.

Alcuni link utili

Corso in diretta su Python

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

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math

Python while

Python while

Nella lezione su Python di oggi approfondiremo il ciclo while attraverso una serie di esempi pratici. Questo ci consentirà di rafforzare la comprensione di questo fondamentale concetto di programmazione, già introdotto nella precedente sessione.

Python while – Conto alla rovescia

Realizzare un algoritmo che effettua un conto alla rovescia, cioè visualizzi, ad esempio, in ordine decrescente i numeri da 10 a 1.

Chiaramente in questo caso non c’è alcun valore in input da inserire, si parte da una variabile che chiamiamo n e che inizializziamo a 10 e dopo la decrementiamo ogni volta di uno.

Ecco dunque il codice in Python:

n = 10
while n > 0:
    print(n)
    n -= 1


Python while – Ciclo infinito

Introdurremo ora il concetto di ciclo infinito, partendo proprio dall’esempio di conto alla rovescia. Se commettiamo un errore di indentazione come mostrato di seguito:

Ecco dunque un possibile loop infinito:

n = 10
while n > 0:
    print(n)
n -= 1

In questo caso, l’istruzione n -= 1 non verrà mai eseguita, poiché la condizione “n > 0” rimane costantemente vera e il ciclo continuerà all’infinito. Se eseguiamo lo script, vedremo sempre stampato il valore 10, poiché non usciremo mai dal ciclo. In poche parole, l’istruzione print(n) è eseguita finchè n > 0 e questa condizione è sempre vera.

Python while – Ciclo mai eseguito

Facciamo adesso un esempio di un ciclo che non verrà mai eseguito. Supponiamo ad esempio di sbagliare condizione e di scrivere n < 0.

Il valore di partenza è 10 e non è minore di 0, quindi in questo caso il ciclo non verrà mai eseguito.

Ecco dunque il codice sotto:

n = 10
while n < 0:
    print(n)
    n -= 1

In questo caso, poiché il valore di partenza è 10 e non è minore di 0, il ciclo non verrà mai eseguito.

Disponibile il libro su Python “50 Algoritmi per imparare Python”

Conclusioni

In questa lezione abbiamo svolto alcuni esempi basilari in Python dell’utilizzo del ciclo while. Vi invito a condividere le vostre considerazioni e domande nei commenti sottostanti. Continuate ad esplorare le potenzialità di questa struttura di controllo fondamentale nella programmazione Python e a seguire gli articoli del blog che propongono una vasta gamma di esercizi con il ciclo while!

Alcuni link utili

Corso in diretta su Python

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

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math

Ciclo while Python

Ciclo while Python

In questa lezione esamineremo attentamente il ciclo while in Python, una potente struttura di controllo che consente di eseguire una sequenza di istruzioni fintanto che una determinata condizione risulta vera.

Un ciclo while, quindi, continua ad eseguire le istruzioni finché la condizione specificata rimane vera. Una volta che la condizione diventa falsa, il ciclo viene interrotto e l’esecuzione del programma procede oltre.

Gestione degli Errori e Cicli Infiniti

È importante prestare attenzione per evitare cicli infiniti, dove la condizione del ciclo non diventa mai False. Ciò potrebbe verificarsi se la condizione non viene aggiornata correttamente all’interno del ciclo. Inoltre, è essenziale considerare la gestione degli errori per evitare che il programma si blocchi o vada in loop infinito in caso di input non valido.

Sintassi ciclo while Python

La sintassi del ciclo while in Python è dunque la seguente:

while condizione:
    istruzioni

Dove “condizione” è un’espressione booleana che viene valutata ad ogni iterazione. Se la condizione è True, le istruzioni all’interno del blocco vengono eseguite. L’indentazione delle istruzioni è fondamentale in Python e indica che tali istruzioni fanno parte del corpo del ciclo while.

L’indentazione delle istruzioni è fondamentale e indica che tali istruzioni sono parte integrante del ciclo while. Il carattere due punti (:) dopo la condizione segna l’inizio del blocco di istruzioni da eseguire mentre la condizione rimane vera.

Il ciclo while rappresenta un costrutto pre-condizionale, poiché il controllo della condizione avviene prima dell’esecuzione delle istruzioni all’interno del ciclo. Se la condizione è falsa fin dall’inizio, le istruzioni non verranno eseguite nemmeno una volta.

Disponibile il libro su Python “50 Algoritmi per imparare Python”

Esempio while in Python

Esempio Pratico con il Ciclo While

Vediamo un semplice esempio per comprendere meglio il funzionamento del ciclo while:

Prendere in input 10 numeri e sommarli.

Per realizzare questo programma usiamo una variabile contatore, che chiamiamo ad esempio i ed inizializziamo a 0. Dopo, per ogni numero inserito, la incrementiamo di 1 (i+=1).

Dunque il ciclo dovrà continuare finché i sarà uguale a 9 (da 0 a 9 sono 10 numeri). Allora la nostra condizione sarà questa: i < 10.

Inizializziamo anche la somma a zero perché la prima volta che eseguiamo questa operazione: somma = somma + n, somma non ha un valore definito. Dunque essendo 0 l’elemento neutro della somma, faccio quest’assegnazione.

Ecco dunque un semplice esempio di sviluppo del programma utilizzando il ciclo while in Python:

i = somma = 0

while i < 10:
    n = int(input("Inserisci un numero: "))
    somma += n
    i += 1

print("La somma è:", somma)

Le istruzioni all’interno del ciclo vengono eseguite finché i è minore di 10. Ogni volta che inseriamo un numero, incrementiamo sia il contatore i che la somma dei numeri inseriti. Una volta che abbiamo inserito tutti i 10 numeri, la somma viene stampata a schermo. Difatti, l’istruzione print viene eseguita dopo il ciclo while.

In molti altri linguaggi di programmazione siamo abituati ad incrementare la variabile con i++ ma in Python questo non è possibile.

Conclusioni

Questo esempio sul ciclo while in Python fornisce solo un’introduzione basilare, nelle prossime lezioni, esploreremo casi più complessi, come i cicli infiniti e quelli mai eseguiti, per approfondire ulteriormente la nostra comprensione di questa potente struttura di controllo di flusso. Il ciclo while è una potente struttura di controllo che fornisce flessibilità nell’iterazione attraverso un blocco di istruzioni basato su una condizione specifica. È ampiamente utilizzato per implementare algoritmi di loop, iterare su dati dinamici e risolvere una vasta gamma di problemi computazionali. Continuate da esplorare gli altri articoli del blog per diventare sempre più esperti nell’uso del ciclo while in Python e degli altri costrutti iterativi. Nelle prossime lezioni seguiranno infatti tantissimi esempi su queste strutture!

Alcuni link utili

Corso in diretta su Python

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

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math

Esempi istruzioni condizionali in Python

Esempi istruzioni condizionali in Python

In questa lezione affronteremo alcuni esempi sulle istruzioni condizionali in Python, al fine di consolidare gli argomenti studiati finora.

Primo esempio sulle istruzioni condizionali in Python

Stabilire se un angolo è acuto, ottuso o retto.

L’algoritmo si risolve molto facilmente, infatti ad esempio nella prima condizione ci chiediamo: l’angolo è uguale a 90 gradi?

Se è vero allora si tratta di un angolo retto. Altrimenti se non è vero si controlla se l’angolo è inferiore a 90 gradi. Altrimenti se neanche questo è vero vuol dire, per esclusione, che l’angolo è ottuso.

Chiaramente potevamo ragionare anche diversamente, ad esempio inserendo come prima condizione angolo < 90 e così via.

Possiamo implementare questo algoritmo in Python come segue:

angolo = int(input('Inserisci l\'angolo: '))

if angolo == 90:
    print('L\'angolo è retto')
elif angolo < 90:
    print('L\'angolo è acuto')
else:
    print('L\'angolo è ottuso')

Disponibile il libro su Python “50 Algoritmi per imparare Python”

Secondo esempio

Realizziamo adesso un secondo algoritmo sugli angoli in Python.

Stabilire se un angolo è retto, piatto, giro o qualsiasi.

Anche questo l’algoritmo è abbastanza semplice da realizzare, possiamo ad esempio partire dalla condizione: angolo==90.

Se tale condizione è vera, allora l’angolo è retto. Altrimenti verifico se è uguale a 180 e visualizzo che l’angolo è piatto. Altrimenti controllo se l’angolo è uguale a 360 ed in questo caso visualizzo che l’angolo è giro. Se tutte le condizioni precedenti non sono verificate allora si tratta di un angolo qualunque.

Ecco come possiamo implementare questo algoritmo in Python:

angolo = int(input('Inserisci l\'angolo: '))

if angolo == 90:
    print('L\'angolo è retto')
elif angolo == 180:
    print('L\'angolo è piatto')
elif angolo == 360:
    print('L\'angolo è giro')
else:
    print('L\'angolo è qualunque')

In entrambi gli esempi d’uso delle istruzioni condizionali in Python, abbiamo presentato algoritmi semplici ma significativi che dimostrano l’efficacia delle istruzioni condizionali nel risolvere problemi di logica. La flessibilità delle istruzioni condizionali ci consente di adattare facilmente il codice a una vasta gamma di situazioni.

Sperimentate altre possibili soluzioni e proponete eventuali osservazioni o alternative nei commenti qui sotto. Continuiamo ad esplorare e approfondire le nostre competenze in Python insieme nelle prossime lezioni.

Alcuni link utili

Corso in diretta su Python

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

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math

12 – Operatori di confronto e booleani