Vous êtes sur la page 1sur 3

TD Algorithme et Programmation

Exercice 1
Les habitants d’une ville paient l’impôt selon les règles suivantes :
 Les hommes de plus de 20 ans paient l’impôt
 Les femme entre 18 et 35 paient l’impôt
 Les autres ne paient pas d’impôt.
Ecrire un algorithme qui demande donc l’âge et le sexe de l’habitant et affiche s’il paye l’impôt
ou non.
Traduire cet algorithme en python

Exercice 2
1) Traduire cet algorithme en python
Algorithme calcul Programme en python
Variables :
N,I,Q, S : entier
DEBUT
Lire(N)
I <- N
S<- 0;
Tant que (I<>0 faire
Q <- I mod 10
S <- S*10+Q
I <- I Div 10
Fin tant que
Ecrire (S)
Fin.

2) Dérouler cet algorithme pour N=52 et pour N=123 et donner la valeur de S pour chacune
des 2 valeurs de N
3) Que fait cet algorithme

Exercice 3
Une compagnie d'assurance automobile propose à ses clients quatre familles de tarifs
identifiables par une couleur: bleu, vert, orange et rouge. Le tarif dépend de la situation du
conducteur :
 moins de 20 ans et permis depuis moins de deux ans : tarif rouge, si toutefois il n'a jamais
été responsable d'accident. Sinon, la compagnie refuse de l'assurer.
 moins de 20 ans et permis depuis plus de deux ans, ou de plus de 20 ans mais permis depuis
moins de deux ans a : tarif orange s'il n'a jamais provoqué d'accident, tarif rouge pour un
accident, sinon il est refusé.
 plus de 20 ans avec permis depuis plus de deux ans : tarif vert s'il n'est à l'origine d'aucun
accident et du tarif orange pour un accident, du tarif rouge pour deux accidents, et refusé
au-delà
 De plus, pour encourager la fidélité des clients acceptés, la compagnie propose un contrat
de la couleur immédiatement la plus avantageuse s'il est entré dans la maison depuis plus
de cinq ans. Ainsi, s'il satisfait à cette exigence, un client normalement "vert" devient
"bleu", un client normalement "orange" devient "vert", et le "rouge" devient orange.
1) Ecrire l'algorithme permettant de saisir les données nécessaires et de traiter ce problème.
Penser à bien formaliser le problème avant d’écrire un algorithme.
2) Traduire l’algorithme en python
Exercice 4
Afficher le résultat de ce programme et donner son rôle :
s=0
for i in range(1,11):
if i % 2 == 1 :
print("ajoute",i)
s += i
print("résultat",s)

Exercice 5
Que fait le programme suivant ?

for i in range (0, 10) :


if i == 2 :
continue # on passe directement au suivant
print (i)
if i > 5 :
break # interruption définitive

Exercice 6
Soit le programme inconnu ci-dessous, donner la valeur de position après exécution. Quel est
le rôle de cet algorithme
l = [2, 3, 6, 7, 9]
l.sort () # si la liste n'est pas triée, il faut écrire :
x=7
a=0
b = len(l)-1
while a <= b :
m = (a+b)//2 # ne pas oublier // sinon la division estréelle
if l[m] == x :
position = m # ligne A
break # pas la peine de continuer, on quitte la boucle
elif l[m] < x :
a = m+1
else :
b = m-1
print ( position )

Exercice 7
1) Ecrire un programme qui permet de calculer le produit de deux entiers en utilisant des
additions successives.
2) Écrire un programme en Python qui calcule et affichage le plus grand commun diviseur
(PGCD) de deux nombres entiers positifs A et B.

NB : => si A=B PGCD(A,B)=A=B


=> si A>B PGCD(A,B)=PGCD((A-B),B)
=> si A<B PGCD(A,B)=PGCD(A,(B-A))
=> PGCD(A,B)=PGCD(B,A)
3) Ecrire programme permettant de lire un nombre entier N puis calcule son factoriel ( en
utilisant la boucle for et la boucle while)
Exercice 8
1) Ecrivez une fonction max1 ( ) qui renvoie le maximum de deux entiers.
2) Utilisez cette fonction max1 ( ) pour écrire une fonction max2 ( ) qui renvoie le
maximum de trois (03) entiers.
3) Utilisez enfin ces deux fonctions pour écrire une fonction Max ( ) qui renvoie le
maximum de cinq (05) entiers.

Exercice 9

1) Écrivez un programme pour déclarer un tableau, puis saisissez ses éléments par l'utilisateur
et affichez tous les éléments négatifs.
2) Écrire un programme pour déclarer un tableau, puis saisir ses éléments à partir de
l'utilisateur et trouver la somme des éléments du tableau.
3) Écrire un programme pour déclarer un tableau, puis saisir ses éléments à partir de
l'utilisateur et rechercher les éléments maximum et minimum dans le tableau.
4) Écrivez un programme pour déclarer un tableau, puis saisissez ses éléments à partir de
l'utilisateur et recherchez l'élément le plus grand et le deuxième dans ce tableau.
5) Écrivez un programme pour déclarer un tableau, puis saisissez ses éléments à partir de
l'utilisateur et comptez le nombre d'éléments pairs et impairs dans ce tableau.
6) Écrivez un programme pour déclarer deux tableaux, puis entrez les éléments du premier
tableau de l'utilisateur et copiez tous ses éléments dans le deuxième tableau.

Vous aimerez peut-être aussi