max di una lista

Max di una lista

Dopo aver creato una funzione che legga il contenuto di una lista, mostra a schermo il numero più grande contenuto in essa.

Analisi

Come capiamo dal testo del problema, dobbiamo realizzare due funzioni:

  • riempi_lista
  • max_in_lista

La prima delle due ci permette di riempire, con numeri interi, la lista che, solo successivamente, andremo ad analizzare indice per indice alla ricerca del massimo.

Per max di una lista intendiamo infatti il numero più grande contenuto all’interno della stessa.

Per un’analisi molto dettagliata dobbiamo considerare il maggior numero di situazioni che potrebbero avvenire durante l’esecuzione dell’algoritmo. Intendo, in questo caso, la possibilità che l’utente inserisca come lunghezza della lista un numero negativo o lo zero. Infatti, per una migliore gestione del programma ho deciso di far leggere all’utente finale il numero degli elementi che la lista andrà a contenere. Ovviamente, grazie alla malleabilità degli algoritmi, abbiamo la possibilità di far terminare la lettura dei numeri interi dopo l’inserimento di un determinato carattere o un numero specifico.

Risoluzione

Grazie alla dettagliata analisi che abbiamo appena stilato, realizzare l’algoritmo diventa un gioco da ragazzi. Come indicato in precedenza dobbiamo stare attenti ad eventuali errori durante l’esecuzione. Per questo motivo, al momento della scelta da parte dell’utente della lunghezza della lista, dobbiamo eseguire un controllo tramite l’istruzione condizionale if – else in modo da terminare il programma in caso di inserimento di un numero negativo o zero.

if lunghezza ! = 0 and lunghezza > 0:
      istruzioni ....
else:
      exit ...

Per quanto rigurda, invece, il max di una lista utilizzeremo un ciclo for per scorrere la lista e confrontare i numeri contenuti in essa con la variabile max che inizializzeremo a 0. Max modificherà il proprio valore nel momento in cui verrà trovato un numero più grande.

Leggi articolo   COVID-19 Dataset Test - Machine Learning

Implementazione algoritmo - max di una lista

def riempi_lista():
    lista = []
    l = int(input('Lunghezza della lista: '))
    if l != 0 and l > 0:
        for i in range(l):
            lista.append(int(input('Inserisci numero in lista: ')))
    else:
        exit('lista vuota o nulla, riprova')
    return lista

def max_in_lista(lista):
    max = 0
    for i in range(len(lista)):
        if (lista[i] > max):
            max = lista[i]
    return max

l = riempi_lista()
print('Il numero più grande nella lista è', max_in_lista(l))

Per testare il funzionamento dell’algoritmo consiglio di scaricare un editor di testo come Visual Studio Code o usufruire degli editor online gratis che permettono, senza scaricare alcun tipo di file, di realizzare algoritmi e testarli. Dopo averne valutati alcuni, ho deciso di affidarmi a Repl.it, semplice, affidabile e potente.

Buon Coding : )

Condividi il post

Condividi su facebook
Condividi su google
Condividi su twitter
Condividi su email
Condividi su whatsapp