Vous êtes sur la page 1sur 4

SERIE D’EXERCICES (structures conditionnelles)

Exercice 1
Soit la séquence en Python suivante:
if x>=2 :
x=x-3
y=x+1
if x<2 :
x=x+3
if y>=5 :
y=0
else :
y=y-1
Faire la trace de l'exécution de cette séquence pour chacune des valeurs de x et y ci-dessous:
x y x y x y
9 2 4 1 -1 3
6 7 1 2 -1 3
6 7 4 2 2 3
6 0 4 1 2 2

Exercice 2
Moy, Math et S étant 3 variables, on considère la structure conditionnelle suivante :
Si (moy ≥ 9)
Alors Si (math ≥ 10)
Alors S  "admis"
Sinon S  "redouble"
Sinon S  "redouble"
Finsi

1) Compléter le tableau ci-dessous en indiquant la valeur de S dans chaque cas :


Moy ≥ 9 Math ≥ 10 Valeur de S
vrai vrai "admis"
vrai faux "redouble"
faux vrai "redouble"
faux faux "redouble"

2) Afin de simplifer la structure conditionnelle précédente, compléter la structure


suivante :

Si (Moy ≥ 9) ET (Math ≥ 10)


Alors S  "admis"
Sinon S  "redouble"
Finsi

Page 1
Exercice 3

Algorithme Max_de_3 #programme Max_de_3


Début a = int(input("Donner le premier entier"))
Ecrire ("Donner le premier entier") , Lire(a) b = int(input("Donner le deuxième entier"))
Ecrire ("Donner le deuxième entier") , Lire(b) c = int(input("Donner le troisième entier"))
Ecrire ("Donner le troisième entier") , Lire(c) if (a >= b) :
Si (a >= b) max = a
Alors max  a else :
Sinon max  b max = b
FinSi if c > max :
Si c > max max = c
Alors maxc print ("Le plus grand de", a, b, "et", c, "est", max)
FinSi
Ecrire ("Le plus grand de",a,b,"et",c,"est", max)# Solution2 Program Max3
Fin print ("Saisir trois entiers : ")
a = int(input ())
b = int(input ())
c = int(input ())
L'affichage du plus grand entier se fait suivant le max = a
résultat d'une comparaison des trois nombres. if b>max : max = b
- Commencez par comparer les deux premiers if c>max : max = c
nombres (a) et (b). print ("La plus grande valeur est : ", max)
- Comparez le résultat (max) avec le troisième
nombre (c). #Solution3 Program Max3
print ("Saisir trois entiers : ")
a = int(input ())
b = int(input ())
c = int(input ())
if (a>b) and (a>c) :
max=a
elif b>c :
max = b
else :
max = c
print ("La plus grande valeur est : ", max)

Exercice 4
Ecrire un algorithme puis son implémentation en Python, permettant de vérifier la parité d’un
nombre entier donné.
Algorithme Parite #programme Parite
Début N=int(input("Saisir un nombre entier : " ))
Ecrire ("Saisir un nombre entier : " ), Lire (n) if N % 2 ==0 :
Si (n mod 2 = 0) print (N, "est pair")
Alors Ecrire (n, "est pair") else :
Sinon Ecrire (n, "est impair") print (N, "est impair")
Finsi
Fin

Page 2
Exercice 5
Un entier naturel de trois chiffres est dit cubique s’il est égal à la somme des cubes de ses trois
chiffres.
Exemple: 153 est cubique car : 153 = 13 + 53 + 33
Ecrire un algorithme puis son implémentation en Python, qui permet de lire un entier N de trois
chiffres, puis de vérifier et d’afficher s’il est cubique ou non.

Algorithme Cubique
#programme Cubique
Début
n=int(input("Saisir un entier de 3 chiffres:"))
Ecrire("Saisir un entier de 3 chiffres:"), Lire(n)
u = n%10
u  n mod 10
d = n//10%10
d  n div 10 mod 10
c = n//100
c  n div 100
if n == (c*c*c + d*d*d + u*u*u):
Si n = (c*c*c + d*d*d + u*u*u)
print (n,"est cubique")
Alors Ecrire (n,"est cubique")
else:
Sinon Ecrire (n, "n'est pas cubique")
print(n,"n'est pas cubique")
Finsi
Fin

Exercice 6
Ecrire un algorithme puis son implémentation en Python, qui demande deux nombres entiers à
l’utilisateur et l’informe ensuite si leur produit est négatif ou positif (on laisse de côté le cas où le
produit est nul).
Attention toutefois : on ne doit pas calculer le produit des deux nombres.

Algorithme Signe_Produit #programme Signe_Produit


Début print("Entrez deux nombres entiers : " )
Ecrire ("Entrez deux nombres : " ), Lire (m, n) m=int(input())
Si (m > 0 ET n > 0) OU (m < 0 ET n < 0) n=int(input())
Alors Ecrire ("Leur produit est positif") if (m > 0 and n > 0) or (m < 0 and n < 0) :
Sinon Ecrire ("Leur produit est négatif") print ("Leur produit est positif")
Finsi else :
Fin print ("Leur produit est négatif")

Exercice 7
Ecrire un algorithme puis son implémentation en Python, qui permet de saisir une année puis de
vérifier Si elle est bissextile.
N.B. : Une année bissextile est une année comptant 366 jours au lieu de 365, c'est-à-dire une année
comprenant un février de 29 jours (exemples : 2016, 2000 bissextile, 1900 est non bissextile).
Une année est bissextile Si elle est :
• divisible par 4 mais non divisible par 100
• divisible par 400.
Algorithme Bissextile
Début #Programme bissextile
Ecrire ("Année : " ), Lire (a) print("Année : ") ; a=int(input())
Si ((a mod 4=0)et(a mod 100≠0))ou(a mod 400=0) if ((a%4==0)and(a%100!=0))or(a%400==0):
Alors Ecrire ("Année bissextile") print("Année bissextile")
Sinon Ecrire ("Année non bissextile") else :
Finsi print("Année non bissextile")
Fin

Page 3
Exercice 8
Ecrire un algorithme puis son implémentation en Python, qui calcule et affiche l'aire d'un triangle
dont il faut entrer les longueurs des trois côtés.
Utilisez la formule : S2 = P(P-A)(P-B)(P-C)
où A, B, C sont les longueurs des trois côtés et P le demi-périmètre du triangle.
Algorithme Aire_Triangle #Program Aire_Triangle
Début from math import*
Ecrire("Donner 3 réels positifs :"), Lire(a,b,c) print("Donner 3 réels positifs :")
Si (a+b=c) ou (a+c=b) ou (b+c=a) a=float(input()) ; b=float(input())
Alors Ecrire ("Il ne s'agit pas d'un triangle") c=float(input())
Sinon P  (a+b+c)/2 if (a+b==c) or (a+c==b) or (b+c==a):
S  RacineCarré (P*(P-a)*(P-b)*(P-c)) print ("Il ne s'agit pas d'un triangle")
Finsi else:
Ecrire("Aire de triangle ", S) P = (a+b+c)/2
Fin S = sqrt (P*(P-a)*(P-b)*(P-c))
print("Aire de triangle = %.2f" %S)

Exercice 9
Créer un jeu simulant le lancement d’un dé à 6 faces après le choix du joueur de la parité (pair ou
impair). Le joueur est considéré comme gagnant si son choix de parité coïncide avec celui du nombre
obtenu après avoir lancé le dé, sinon il est considéré comme perdant dans le cas contraire.
Algorithme jeu #programme jeu
Début from random import *
Ecrire("Entrer pair ou impair : "), Lire(p) p =input("Entrer pair ou impair : ")
x  Aléa(1, 6) x= randint(1,6)
Ecrire("Numéro obtenu par le dé :" , x) print("Numéro obtenu par le dé :" , x)

Si ((x mod 2=0) et (p="pair")) ou if ((x % 2==0) and (p=="pair")) or


((x mod 2=1) et (p="impair")) ((x % 2==1) and (p=="impair")):
Alors Ecrire ("Joueur gagnant") print("Joueur gagnant")
Sinon Ecrire("Joueur perdant") else :
Finsi print("Joueur perdant")
Fin

Page 4

Vous aimerez peut-être aussi