Aller au contenu

Activités IV)

Activité IV.01


Exécuter ce programme et comprendre le résultat affiché.

L=[]
a = 10

if (a < 5):
    L.append(1)
if (a == 10):
    L.append(2)
if (a < 20):
    L.append(3)

print(L)
  • Modifier la valeur de a à la ligne 2.

Activité IV.02


Exécuter ce programme et comprendre le résultat affiché.

L=[]
a = 10

if (a < 5):
    L.append(1)
    if (a == 10):
        L.append(2)
        if (a < 20):
            L.append(3)

print(L)
  • Modifier la valeur de a à la ligne 2.

Activité IV.03


Exécuter ce programme et comprendre le résultat affiché.

L=[]
a = 10

if (a < 5):
    L.append(1)
elif (a == 10):
    L.append(2)
    if (a < 20):
        L.append(3)
else :
    L.append(4)

print(L)
  • Modifier la valeur de a à la ligne 2.
  • Trouver si possible une valeur de a telle que le programme affiche "[1]".
  • Trouver si possible une valeur de a telle que le programme affiche "[2]".
  • Trouver si possible une valeur de a telle que le programme affiche "[1,3]".
  • Trouver si possible une valeur de a telle que le programme affiche "[2,3]".
  • Trouver si possible une valeur de a telle que le programme affiche "[1,2,3]".
  • Trouver si possible une valeur de a telle que le programme affiche "[3]".
  • Trouver si possible une valeur de a telle que le programme affiche "[4]".

Activité IV.04


Compléter ce programme pour que la fonction minimum(a, b) renvoie le minimum entre deux nombres a et b.

1
2
3
4
5
6
7
8
9
def minimum(a, b) :
    if ... :
        ...
    else :
        return a

print(minimum(1,3))
print(minimum(3,3))
print(minimum(3,1))
  • À noter que Python possède sa propre fonction min que je vous recommande à l'avenir

Activité IV.05


Compléter le programme suivant pour que la fonction changer(mot) change dans le mot les lettre "o" et "u" par "-".

def changer(mot) :
    mot_nouveau = ""
    for lettre in mot :
        if (lettre == "o") ... (lettre == "u") :
            mot_nouveau = mot_nouveau + "-"
        else :
            mot_nouveau = ...
    return ...

exemple = "Concours"
res = changer(...)
print(res)
  • Vous pouvez essayer de modifier cette fonction en utilisant replace() que l'on a déjà vu.

Activité IV.06


Compléter (sur plusieurs lignes) le programme suivant pour que la fonction classer(a, b) renvoie un tuple ordonné par ordre croissant. a et b sont deux entiers.

Ainsi, classer(7, 2) renvoie "(2, 7)".

1
2
3
4
5
def classer(a, b) :
    ...

print(classer(5,8))
print(classer(8,5))

Activité IV.07


Soit le programme suivant.

1
2
3
4
5
6
7
8
def annonce(num, prov, dest):
    if dest != "0":
        msg = f"le train n° {num} en provenance de {prov} et à destination de {dest}, entre en gare."
    else:
        msg = f"le train n° {num} en provenance de {prov} entre en gare. Ce train est terminus Triffouillis-les-Oies."
    return msg

mon_msg = annonce(4242, "Paris", "0")

Quelle est la valeur de la variable mon_msg après l'exécution de ce programme ?

Vérifiez votre réponse à l'aide de la console.

Activité IV.08


Soit le programme suivant.

1
2
3
4
5
6
7
def ma_fct(a,b):
    if a < 5 and b > 2 :
        return 42
    else :
        return 24

val = ma_fct(6, 3)

Quelle est la valeur de la variable val après l'exécution de ce programme ?

Vérifiez votre réponse à l'aide de la console.

Activité IV.09


Soit le programme suivant.

1
2
3
4
5
6
7
def ma_fct(a,b):
    if a < 2 or b < 2 :
        return 42
    else :
        return 24

val = ma_fct(6, 3)

Quelle est la valeur de la variable val après l'exécution de ce programme ?

Vérifiez votre réponse à l'aide de la console.

Activité IV.10


Vous êtes gérant d'un magasin et vous désirez écrire un programme Python qui calculera automatiquement le montant de la facture des clients.

Tout client qui achète au moins 5 fois le même article se voit octroyer une remise de 5 % (uniquement sur le montant de l'achat de cet article).

Afin de simplifier le problème, on considère qu'un client n'achète qu'un seul type d'article.

Écrire une fonction facture(pu,n) qui prend en paramètre le prix unitaire de l'article et le nombre d'articles achetés. Cette fonction doit renvoyer le montant de la facture.

Activité IV.11


Pourquoi ce programme ne fonctionne pas ? Que pourrait-on pour qu'il affiche 4 fois "Bien" ?

1
2
3
while (n < 5):
    n = n + 1
    print("Bien")

Activité IV.12


Soit le programme suivant.

1
2
3
4
5
6
p = 1

while (p < 100):
    p = p * 2

print(p)
  • Quelle est la valeur affichée ?
  • Décrire par une phrase la signification de cette valeur

Activité IV.13


Soit le programme suivant.

1
2
3
4
5
6
p = 0

while (p < 21):
    p = p + 5

print(p)
  • Quelle est la valeur affichée ?
  • Décrire par une phrase la signification de cette valeur

Activité IV.14


Soit le programme suivant.

1
2
3
4
5
6
7
8
L = []
n = 0

while (n < 43):
    L.append(n)   
    n = n + 5

print(L)
  • Quelle est la valeur affichée ?
  • Retrouver cette liste finale par compréhension de liste.

Activité IV.15


Créer un programme qui permet d'affiche la plus petite puissance de 7 supérieure à 1 000.

Activité IV.16


Expliquer pourquoi cette boucle while n'a pas d'intérêt.

1
2
3
4
5
6
7
def mystere():
    n = 0
    while (n < 20) :
        return "ok"
        n = n+1

print(mystere())

Activité IV.17


Soit la fonction suivante :

1
2
3
4
5
6
7
8
def ma_fct(a):
    b = 0
    while a > 2:
        b = b + 1
        a = a - 2
    return b

val = ma_fct(6)
  • Quelle est la valeur de la variable val après l'exécution de ce programme ? On pourra utiliser un tableau pour suivre l'évolution des variables a et b.

  • Vérifiez votre réponse à l'aide de la console.

Activité IV.18


Soit la fonction suivante :

1
2
3
4
5
6
7
8
def ma_fct(a):
    b = 3
    while a > 0:
        b = b + a
        a = a - 2
    return b

val = ma_fct(6)
  • Quelle est la valeur de la variable val après l'exécution de ce programme ? On pourra utiliser un tableau pour suivre l'évolution des variables a et b.

  • Vérifiez votre réponse à l'aide de la console.

Activité IV.19


On désire écrire une fonction rebours(n) qui permet d'afficher un compte à rebours à l'écran. Cette fonction prend en paramètre la valeur de départ.

Exemple : si on tape dans la console rebours(5), on doit obtenir :

5
4
3
2
1
0

Complétez la fonction rebours(n) suivante :

1
2
3
4
5
6
def rebours(n):
    while ...:
        print(n)
        ...

rebours(5)