...
...
Una cosa interessante che non abbiamo ancora approfondito rispetto ai nomi delle variabili, è appunto che il loro contenuto può essere variato mentre il programma si svolge: cioè il nome può essere associato ad un diverso contenuto.
Se scrivessimo il comando dieci=11 cosa dobbiamo aspettarci? Esattamente quello che pensate, ovvero che ogni volta che useremo la variabile ‘dieci’ il valore sarà 11, e quindi otterremo degli errori di calcolo negli esempi precedenti.
Figura 12
Così print(dieci+2)
stamperà una riga con il valore 13, mentre print(dieci+dieci)
stamperà una riga con il numero 22.
Abbiamo visto che per definire il valore di un nome o,
se preferite, potremmo dire assegnare il valore ad una variabile, si usa il
comando: nome=valore. Un modo
alternativo e molto interessante è quello di usare il comando input().
Input è un
nome riservato di Python (un comando) con cui è possibile immettere con la
tastiera valori in un programma. Ecco due esempi:
nome=input()
eta=input(“Quanti
anni hai? “)
Figura 13
Il primo “nome= input()” fa apparire sullo schermo una
riga vuota con il cursore lampeggiante e rimane in attesa che venga digitato
del testo seguito da Invio. (Figura
13)
Il testo digitato viene immesso nella variabile che precede il comando
=input(), nel nostro caso nome.
Il secondo eta=input(“quanti anni hai?”) stampa una
riga con il testo della domanda “quanti anni hai?” e si mette in attesa che
venga digitato qualche cosa sulla tastiera.
In alternativa è possibile usare print(“”) per
stampare una riga con la domanda e poi input() per attendere che venga immessa
una stringa.(Figura 15).
Figura 14Ecco in Figura 15 un altro semplice esempio che combina print e input, facendo anche uso dell’operatore + per concatenare parti di testo e comporre la riga.
Una cosa importante su input() è che i valori digitati e immessi nelle variabili sono
sempre stringhe, anche se abbiamo digitato simboli numerici.
Così in Figura
15
l’età immessa non è il valore numerico 55 ma la stringa “55”.
In base a questo
è possibile usare il + per concatenare il testo del print() dell’ultima riga.
...
...
Ora la domanda che sento materializzarsi nelle vostre teste è: “OK mi hai convinto! Ma allora come faccio ad immettere dei numeri?”
Esistono nel linguaggio Python alcuni comandi (parole riservate) fatte proprio per
questo, cime int ecco un esempio:
eta=int(input(“Ciao,
quanti anni hai? “))
In questa riga il comando int(), trasforma in un
numero intero la stringa dell’input e lo assegna alla variabile eta.
Figura 16Quindi possiamo eseguire dei calcoli sui numeri che altrimenti sulle stringhe non sarebbero possibili.
Figura 17
In Figura 17,
dopo aver fatto l’input dell’anno attuale, con l’operatore – (meno) facciamo
una sottrazione ed otteniamo l’anno di nascita.
Oltre al comando Int() esistono anche: float(); str();
per convertire il valore di una variabile in un altro formato.
Se volessimo rendere appena più brillante questa
conversazione fatta con Python potremmo modificare qualche cosa nel programma e
aggiungere almeno una istruzione condizionale: (Figura 18)
Figura 18
Il programma così modificato ci mostra un'istruzione
condizionale if e la corrispondente else mediante le quali vengono eseguite
sequenze di istruzioni diverse in base alla condizione eta<60 (che si legge
eta minore di 60).
Figura 19
Ecco lo stesso programma modificato:
Figura 20
Figura 21
...
...
Quando parliamo di programmazione è normale
considerarla un’attività con la quale si definiscono delle regole e
comportamenti del computer, finalizzati al raggiungimento di un obiettivo. In
parole più semplici: la programmazione ci permette di far fare al computer
quello che vogliamo.
Ad esempio potremmo scrivere un programma per giocare alla
tombola (estrarre i numeri e controllare le cartelle dei giocatori), oppure
raccogliere dei dati organizzati in tabelle, oppure interagire con grandezze
del mondo reale, come ad esempio luce, colori, suoni, umidità, contatto, per
comandare le azioni di dispositivi predisposti allo scopo.
Per esempio se il mio prato non è abbastanza umido (si
utilizza un igrometro per la misura dell’umidità del terreno), oppure la
temperatura della serra non è quella ottimale, intervengo aprendo e chiudendo dei
dispositivi per irrigare, o per far passare aria nel locale della coltivazione.
La domanda che ci poniamo è quindi: come fa il
computer a prendere decisioni?
In generale esistono delle istruzioni condizionali,
che svolgono una serie di comandi solo se si verificano una o più condizioni.
La parola riservata usata da Python per questi casi è if (se), con un argomento di tipo booleano, cioè vero o falso, accompagnata da else (altrimenti) e elif
(altrimenti se).
Vediamo un esempio dalla Figura 20.
Alla sesta riga del programma fino alla nona,
compaiono questi comandi (in arancio le Parole Riservate Condizionali; in
viola altre Parole Riservate).
Figura 22
Si nota immediatamente il comando IF (SE) con cui il programma Python si chiede se la variabile eta, che contiene l’età
dell’interlocutore, contenga un valore < (minore) di 60. Attenzione a questi simboli : >
significa Maggiore (più grande) di; < significa Minore
(più piccolo) di; == significa Uguale a.
Il commando successivo print(“Bene… “) viene eseguito quando la condizione SE è vera; cioè
quando il valore di eta è Minore di
60. In caso contrario, quando eta è più grande di 60, viene eseguito il comando
print (“Direi … “) che si trova
sulla riga successiva alla parola riservata else. Else significa proprio “altrimenti” e rappresenta la scelta
alternativa se la condizione del comando IF è falsa.
Figura 23
Questo, in Figura 23, è il diagramma del flusso del programma così come è impostato nella Figura 22.
Mi pare che di cose interessanti e spunti ce ne siano parecchi e ci fermiamo qui.
...
...
Rileggendo il testo e confrontandolo con le figure, ho notato alcune piccole incongruenze: non cambia il senso generale, ma alcune condizioni sono diverse.
Sapreste trovarle ed evidenziarle?
Ciao a tutti
M.
Nessun commento:
Posta un commento