Corso di informatica Università: Condizioni e cicli

Corso di informatica Università: Condizioni e cicli 


# Utilizzo di if nei costrutti condizionali
# l'applicazione restituirà in output una conferma
# soltanto se il parametro inviato dall'utente
# è identico al valore della variabile x

x = 8
y = int(input("Inserisci un numero intero compreso tra 0 e 10: "))
if y == x:
    print("Il numero inserito è esatto")


# Utilizzo del blocco if/else nei costrutti condizionali
# l'applicazione restituirà in output una conferma
# se il parametro inviato è identico al valore di x
# altrimenti verrà eseguita l'istruzione introdotta da else

x = 8
y = int(input("Inserisci un numero da 0 a 10: "))
if y == x:
    print("Il numero inserito è esatto")
else:
    print("Il numero inserito non è esatto")

# Utilizzo del blocco if/elif/else nei costrutti condizionali
# verrà restituita in output una conferma
# se il parametro inviato è identico al valore di x
# altrimenti verrà eseguito un confronto tra i valori di y e z
# o restituita l'istruzione introdotta da else

x = 8
z = 10
y = int(input("Inserisci un numero da 0 a " + str(z) + ":"))
if  y == x:
    print("Il numero inserito è esatto")
elif  y > z:
    print("Sono consentiti soltanto valori compresi tra 0 e " + str(z))
else:
    print("Il numero inserito non è esatto")

# Utilizzo del blocco if/elif nei costrutti condizionali
# verrà restituita in output una conferma
# se il parametro inviato è identico al valore di x
# altrimenti verrà eseguito un confronto tra i valori di y e x

x = 8
y = int(input("Inserisci un numero da 0 a 10: "))
if y == x:
    print("Il numero inserito è esatto")
elif y > x:
    print("Il numero inserito è superiore a quello atteso")
elif y < x:
    print("Il numero inserito è inferiore a quello atteso")


# Annidamento dei blocchi if/elif/else nei costrutti condizionali

x = 8
y = int(input("Inserisci un numero da 0 a 10: "))
if y == x:
    print("Il numero inserito è esatto")
elif y > x:
    print("Il numero inserito è superiore a quello atteso..")
    if (y - x) == 1:
        print("..ma ci sei andato molto vicino.")
    else:
        print("..riprova, sarai più fortunato.")
elif y < x:
    print("Il numero inserito è inferiore a quello atteso")
    if (x - y) == 1:
        print("..ma ci sei andato molto vicino.")
    else:
        print("..riprova, sarai più fortunato.")

# Ciclare gli elementi presenti in una lista tramite il ciclo for

# definizione della lista
fibonacci = [1,1,2,3,5,8,13,21,34,55,89,144]

# iterazione dei valori in lista
for val in fibonacci:

    # stampa dei valori iterati
    print(val)
   
# Sommare gli elementi presenti in una lista
# tramite il ciclo for

# definizione della lista
fibonacci = [1,1,2,3,5,8,13,21,34,55,89,144]

# variabile per l'archiviazione della somma
# dei valori in lista
totale = 0

# sommatoria dei valori in lista
for val in fibonacci:
    totale = totale + val

# stampa della somma ottenuta
print(totale)

# Nel caso specifico la condizione di terminazione del ciclo è il raggiungimento del totale
# tra tutti i valori degli elementi in lista, ma sarebbe possibile rendere il sorgente
# più articolato introducendo un controllo basato su if
# che escluda dalla somma determinati valori:

# Sommare gli elementi presenti in una lista
# tramite il ciclo for
# escludendo tutti i valori inferiori a 3

# definizione della lista
fibonacci = [1,1,2,3,5,8,13,21,34,55,89,144]

# variabile per l'archiviazione della somma
# dei valori in lista
totale = 0

# sommatoria dei valori in lista
for val in fibonacci:
    # controllo sul valore degli elementi sommati
    if val > 3:
        totale = totale + val
       
# controllo sul totale ottenuto       
if totale == 369:
    # stampa della somma ottenuta
    print("Il totale della somma è " + str(totale))
else:
    # istruzione alternativa in caso
    # di esito negativo del controllo
    print ("Valore differente da quello atteso.")

# Modificando il codice utilizzato è mutata anche la condizione
# per la terminazione del ciclo, questa volta infatti dovranno essere
# sommati tutti gli elementi presenti in lista tranne quelli di valore inferiore a "3".
# L'output dell'applicazione originale era pari a "376",
# ma dato che nella sequenza sono presenti quattro valori inferiori o uguali a "3" ("1, 1, 2 e 3"),
# dopo le modifiche apportare il risultato sarà "369",
# cioè l'output iniziale meno il totale dei valori ora esclusi.

# Ciclo for applicato agli intervalli di valori
#La funzione range() permette di non dover digitare sequenze di valori
# eccessivamente lunghe e consente di definire un intervallo di valori
# sulla base di due parametri: un valore iniziale e un valore di terminazione;
# è poi possibile passare alla funzione un terzo argomento (step)
# che rappresenta le posizioni che dovranno essere ignorate all'interno dell'intervallo.
# A titolo di esempio si esegua l'istruzione seguente:

# Stampa di un intervallo di valori compresi tra 5 e 20

for val in range(5,20):
    print (val)
# Il risultato ottenuto sarà rappresentato da tutti i valori interni all'intervallo
# che va da "5" a "19", in quanto valore di terminazione "20" viene considerato
# invece al di fuori dell'intervallo e non verrà restituito dall'applicazione.
# Detto questo, è possibile definire anche uno step che influenzerà direttamente la generazione dell'output:

# Stampa di un intervallo di valori compresi tra 5 e 20
# escludendo due posizioni ad ogni iterazione

for val in range(5,20,2):
    print (val)
   
# Questa volta la presenza del terzo parametro permetterà di escludere
# dal risultato un numero di posizioni pari al valore associato a tale
# argomento per ogni iterazione del ciclo, motivo per il quale
# non si otterrà più la sequenza "5 6 7 8 .. 19" ma "5 7 9 11 .. 19".

Commenti

Post popolari in questo blog

Simulazioni di reti (con Cisco Packet Tracer)

Esercizi sulla rappresentazione della virgola mobile IEEE 754 (Floating Point)