1. In questa terza lezione impereremo a creare le tabelline con Python. Avete capito bene, torneremo ad essere bambini ….

Vediamo come funzionano le tabelline!

Dati tre numeri (interi) a, b ed n, tali che

a x n = b,

diremo che b è il multiplo n-simo di a.

Così 8 è il terzo multiplo di 2. Ovvero 8 diviso 2 restituisce 3.

La tabellina del due, ad esempio, funziona in modo simile

2 x 1 = 2

2 x 2 = 4

2 x 3 = 6

e così via…

Generare una tabellina siffatta da un punto di vista logico non è complicata, si tratta di far variare il numero n in un certo intervallo (da 1 a 10 ad esempio), in questo modo:

Inserisci il numero a

ripeti per 10 volte la seguente operazione

a x i (restituendo a schermo il valore)

dove i varia da 1 a 10 appunto!

Semplice vero?

Per farlo utilizzeremo un comando (metodo) particolare che su Python si chiama format. 

Il metodo format permette di etichettare gli ooggetti e di organizzarli in una scrittura più leggibile

Supponiamo di avere 3 fiori così indicizzati

nome1 = rosa

nome2 = giglio

nome3 = margherita

posso utilizzare il metodo format nel modo seguente:

print(‘al mercato ho acquistato i seguenti fiori { 0} { 1} {2 }’.format(nome1,nome2,nome3))

e a schermo apparirà la scitta

al supermercato ho acquistato i seguenti fiori rosa giglio margherita

 

Definisco la seguente funzione allora:

 

def multi_table(a):
    for i in range(1,21):
        print(‘{0} x {1} = {2}’.format(a, i, a*i))
if __name__ == ‘__main__’:
        a = input(‘inserisci numero: ‘)
        multi_table(float(a))
Si noti che il valore i varia da 1 a 20 , mentre a viene inserito a schermo.
In questo programma abbiamo incontrato un nuovo comando che è :
 if __name__ == ‘__main__’:
funzione()
Discutiamone!!
Questo comando assicura che  ciò che è dichiarato viene svolto solo quando il programma viene eseguito.
Un altro esempio con il ciclo for: il fattoriale di un numero
Ecco il codice:
def fact(n):
   p=1
   for i in range(1,n+1):
            p=p*i
   return p
 if __name__ == ‘__main__’:
     n=int(input(‘inserisci un numero intero per trovare il suo fattoriale’))
     f=fact(n)
     print(‘il fattoriale di {0} : {1} ‘.format(n,f))
CONVERSIONE TRA UNITA’ DI MISURA
Mi capita spesso di trovare studenti che in prima superiore hanno enormi difficoltà nel convertire differenti unità di misura.
Come passare da km a metri? o da libbre a chili?
Non è una cosa da poco, perchè in Fisica, ad esempio, le unità di misura vengono scritte tutte secondo quelle che sono nel Sistema Internazionale di pesi e Misure. in pratica non possiamo usare i km o le miglia per comunicare tra noi, ma occorre convertire tutto in metri!!
Vediamo come realizzare un programma che permette di passare da metri al secondo a km/h e viceversa
COsa fa il programma:
prima di tutto ci chiede se vogliamo passare da m/s a km/h o viceversa
poi ci chiede di inserire il valore numerico da convertire
infine stampa a schermo la conversione nella opportuna unità di misura.
Più facile a farsi che a dirsi!!
def print_menu():
    print(‘1. da m/s a km/h’)
    print(‘2. da km/h a m/s’)
def km_metri():
    km = float(input(‘inserire velocita in km/h : ‘))
    metri = km/3.6
    print(‘velocita in m/s: {0}’.format(metri))
def metri_km():
    metri = float(input(‘inserire velocita in m/s : ‘))
    km = metri*3.6
    print(‘velocita in km/h: {0}’.format(km))
while True:
    if __name__ == ‘__main__’:
          print_menu()
          scelta = input(‘che conversione vuoi fare?: ‘)
    if scelta == ‘1’:
              metri_km()
    if scelta == ‘2’:
              km_metri()
    risposta = input(‘vuoi uscire? s per si       ‘)
    if risposta == ‘s’:
        break
qui abbiamo trovato alcuni comandi nuovi quali
while True
che è un  ciclo che si ripete per sempre
e break
che ferma tutto
Gli if permettono di scegliere tra le varie opzioni, definite nelle funzioni iniziali!
Provate a convertire da celsius a Kelvin
Sapreste poi scrivere un programma per trovare le soluzionidi una equazione di primo o di secondo grado??
 Riassumento:
il costrutto di ripetizione  permette di ripetere un insieme di istruzione un dato numero di volte. In questa lezione abbiamo incontrato il costrutto for
Per i che varia da 1 a 10 allora
scrivi ciao
scriverà 10 volte il valore ciao
Alla prossima lezione
Vai alla barra degli strumenti