9 - Altre istruzioni per il controllo di flusso - QUIZ

Risultati
Domanda 1

Quale di queste sequenze di istruzioni è scritta correttamente?

A a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
if a == 20:
    break
B a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    if a == 20:
        break
C a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    if a == 20:
        break:
D a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    if a == 20:
    break
E a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    if a == 20:
break


Domanda 2

L'istruzione while True:   ...

A ... provoca un errore se all'interno del ciclo è presente un break
B ... provoca un errore di sintassi
C ... provoca un errore se True non è definito
D ... provoca sempre un ciclo infinito
E ... provoca un ciclo infinito se all'interno del ciclo non è presente un break


Domanda 3

Questa sequenza di istruzioni ...
a = 1
while a != 6:
    print(a)
a += 1

A ... scrive i numeri da 1 a 5
B ... scrive i numeri da 1 a 6
C ... provoca un errore di sintassi
D ... non scrive nulla perchè il ciclo while viene saltato
E ... provoca un ciclo infinito perchè il contatore non viene incrementato


Domanda 4

Un blocco di codice else: posto dopo un while   ...

A ... viene eseguito tutte le volte che, all'interno del while, si trova un break
B ... serve ad evitare un ciclo infinito
C ... viene eseguito solo quando si è usciti dal ciclo a causa di un break
D ... viene eseguito solo quando, all'uscita dal while, l'espressione di controllo è falsa
E ... viene eseguito solo quando, all'uscita dal while, l'espressione di controllo è vera


Domanda 5

Quale di queste sequenze di istruzioni è scritta correttamente?

A a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
else:
a *= 2
B a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    else:
        a *= 2
C a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
else:
    a *= 2
D a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
        else:
            a *= 2
E a = 0
while a < 100:
    a = int(input("Scrivi un numero"))
    else:
    a *= 2


Domanda 6

Data questa sequenza di istruzioni:
a = 0
while a < 4:
    b = int(input("Scrivi un numero "))
    if b == 2:
        break
    a += 1
else:
    print("Ciao")
cosa deve scrivere l'utente per far stampare la stringa 'Ciao' ?

A Deve digitare '2' per quattro volte di seguito
B Non deve mai digitare '2'
C La stringa non viene mai stampata
D Deve digitare '2' almeno una volta
E La stringa viene stampata qualsiasi cosa scriva


Domanda 7

Questa sequenza di istruzioni ...
a = 0
while a < 10:
    if a == 5:
        continue
    print(a)
    a += 1

A ... scrive solo il numero 5
B ... scrive i numeri da 0 a 4
C ... scrive i numeri da 1 a 10, saltando il 5
D ... scrive i numeri da 0 a 9
E ... scrive i numeri da 0 a 9, saltando il 5


Domanda 8

Questa sequenza di istruzioni ...
a = 0
while a < 5:
    print(a)
    if a == 2:
        continue
    a += 1

A ... scrive il numero 2 infinite volte
B ... scrive i numeri 0, 1, 2, 3, 4
C ... scrive i numeri 1, 3, 4, 5
D ... scrive i numeri 0, 1, 3, 4
E ... scrive i numeri 0, 1, e poi il numero 2 infinite volte


Domanda 9

Voglio dall'utente una risposta 's' o 'n', ripetendo la domanda se l'input è sbagliato. Come devo fare?

A while True:
    st = input("Rispondi s o n ")
    if st == "s" and st == "n":
        break
    print("Input scorretto")
B while True:
    st = input("Rispondi s o n ")
    if st != "s" or st != "n":
        break
    print("Input scorretto")
C while True:
    st = input("Rispondi s o n ")
    if st == "s" or st == "n":
        break
    print("Input scorretto")
D st = ""
while st == "s" or st == "n":
    st = input("Rispondi s o n ")
    if st != "s" and st != "n":
        print("Input scorretto")
E st = input("Rispondi s o n ")
while st == "s" or st == "n":
    if st == "s" or st == "n":
        break
    print("Input scorretto")


Domanda 10

Voglio che l'utente scriva un numero compreso tra 5 e 10, ripetendo la domanda se l'input è sbagliato. Come devo fare?

A n = 5
while n >= 5 and n <= 10:
    n = int(input("Scrivi un numero tra 5 e 10 "))
    if n >= 5 and n <= 10:
        break
    print("Input scorretto")
B while True:
    n = int(input("Scrivi un numero tra 5 e 10 "))
    if n >= 5 and n <= 10:
        print("Input scorretto")
    break
C while True:
    n = int(input("Scrivi un numero tra 5 e 10 "))
    if n >= 5 or n <= 10:
        break
    print("Input scorretto")
D while True:
    n = int(input("Scrivi un numero tra 5 e 10 "))
    if n >= 5 and n <= 10:
        continue
    print("Input scorretto")
E while True:
    n = int(input("Scrivi un numero tra 5 e 10 "))
    if n >= 5 and n <= 10:
        break
    print("Input scorretto")