Cours-Exercices

publicité
Algorithmique
I
Définition
Voici une définition du mot algorithme que l’on peut trouver dans un dictionnaire :
Ensemble de règles opératoires dont l’application permet de résoudre un problème énoncé au moyen
d’une nombre fini d’opérations. Un algorithme peut être traduit, grâce à un langage de programmation, en
un programme executable par un ordinateur. ≫
≪
Ainsi, un algorithme désigne un ensemble fini d’instructions d’un calcul ou de la résolution d’un
problème. Un programme sera la traduction d’un algorithme dans un langage de programmation exécutable
par un ordinateur ou une calculatrice programmable.
Le mot ≪ Algorithme ≫ vient du nom du mathématicien Al-Khuwarizmi (latinisé au Moyen Age en
Algoritmi) né vers 783 en Ouzbékistan et mort vers 850. Dans son traité Kitab al jabr m’al muqabalah, il
étudie les équations du second degré.
Exemple 1:
• Voici un algorithme de calcul écrit en langage courant :
– Choisir un nombre
– Lui soustraire 1
– Élever au carré le résultat obtenu
– Ajouter l’opposé de 4
– Écrire le résultat
• Pour écrire un algorithme on utilise aussi souvent un langage symbolique. Avec l’algorithme précédent
on obtient :
Entrées
Saisir x
Traitement
x−1 →a
a2 → b
b−4 →c
Sortie
Afficher c
Entrées
Saisir x
Traitement
Affecter à a la valeur de x − 1
Affecter à b la valeur de a2
Affecter à c la valeur de b − 4
Sortie
Afficher c
Pour éviter d’avoir trop de lettres on peut réutiliser plusieurs fois la même variable :
Entrées
Saisir x
Traitement
x−1→a
a2 → a
a−4→a
Sortie
Afficher a
• Programmation à la calculatrice : voir à la fin du livre
Cours
Page 1
Algorithmique
II
Boucles et instruction conditionnelle
1
Boucle
≪
Pour ≫
On souhaite écrire p
un algorithme permettant de calculer u50 où la suite u est définie par u0 = 1 et pour
tout entier n, un+1 = 3u2n + 4.
Pour une suite définie par récurrence pour calculer u50 on doit calculer u1 , puis u2 , puis u3 ,... jusqu’à
arriver à u50 .
Pour calculer u1 , on prend u0 , on le met au carré, on multiplie par 3, on ajoute 4 puis on prend la
racine carré.
Pour calculer u2 , on prend u1 , on le met au carré, on multiplie par 3, on ajoute 4 puis on prend la
racine carré.
Pour calculer u3 , on prend u2 , on le met au carré, on multiplie par 3, on ajoute 4 puis on prend la
racine carré.
On remarque que l’on va répéter 50 fois la même opération. Au lieu d’écrire 50 fois la même instruction
on va demander de répéter l’opération un certain nombre de fois. Pour pouvoir savoir combien de fois on
fait les mêmes opérations on utilise un compteur.
Voici l’algorithme :
Entrées
1→u
Traitement
Pour k allant de 1 à 50 faire
√
3u2 + 4 → u
FinPour
Sortie
Afficher u
Grâce à la calculatrice on trouve u50 ≈ 1, 46 × 1012
Exercice 79 page 35 :
Partie A : Situation théorique
1. v1 = 1035, v4 ≈ 1141, 054
2.
K
S
1
1005
2
1010,025
3
≈ 1015, 075
4
≈ 1020, 151
On multiplie à chaque fois S par la même valeur 1, 005. On a donc ici une suite géométrique.
L’algorithme calcul uN où u est la suite géométrique de raison 1, 005 et de premier terme S que l’on
choisit au début.
Cours
Page 2
Algorithmique
3. Entrées
Deux nombres entiers S et N
Traitement
Pour K allant de 1 à N
affecter à S la valeur S × 1, 005 + 30
FinPour
Sortie
Afficher S
Partie B : Situation pratique
1. a) 1000 × 1, 005 + 30 = 1035.
b) 1035 × 1, 005 + 30 = 1070, 175
2. Entrée
1000 → S
Traitement
Pour K allant de 1 à 12 faire
S × 1, 005 + 30 → S
FinPour
Sortie
Afficher S
Exercice 21 page 22 :
1. On note un le PIB de la Chine en milliards de dollars en l’année 2009 + n.
On a u0 = 5 000 et un+1 = 1, 09un.
un est une suite géométrique de raison 1, 09 donc un = 5 000(1, 09)n.
Ainsi le PIB de la Chine en 2015 est u6 ≈ 8385, 5 milliards de dollars.
2. U = 5000, N = 6
3. a) Entrer ≪ U0 ≫ et stocker dans U
Entrer N
Pour K allant de 1 à N, faire
stocker U + 0, 06 × U dans U
FinPour
Afficher U
Il faut ensuite entrer U = 200 et N = 7 (on commence ici en 2008 et non 2009).
b) La prévision pour le PIB en 2015 au Nigéria est d’environ 300, 72 milliards de dollars.
Exercice 24 page 23 :
1. a) On note un le nombre de boites produites la n-ième semaine.
On a donc u1 = 50 et un+1 = un + 10.
un est une suite arithmétique de raison 10, donc un = 50 + 10(n − 1) = 10n + 40.
b) On cherche pour quelle valeur de n on aura un > 200 :
un > 200 ⇔ 10n + 40 > 200 ⇔ 10n > 160 ⇔ n > 16
La production dépassera les 200 boites lors de la 17-ième semaine. (u16 = 200)
2. N = 5 donne S = 350.
Cours
Page 3
Algorithmique
2
Boucle
≪
Tant que ≫
L’instruction ≪ Tant que ≫ permet de répéter les même opération tant que le but recherché n’est pas
atteint. A la différence de l’instruction précédente, on ne sait pas à l’avance combien de fois on va répéter
les opérations.
Exercice 59 page 29 (1., 2. et 3.) :
1. Pour passer d’une semaine à l’autre on doit multiplier l’aire déjà envahie par 1, 04 (augmentation de
4%) puis ajouter 13 (augmentation de 13m2 chaque semaine).
On a donc bien un+1 = 1, 04 × un + 13.
2. Stocker 0 dans N et 300 dans U
Tant que U 6 600 faire
stocker N + 1 dans N
stocker 1, 04 × U + 13 dans U
FinTantQue
Afficher N
On trouve N = 10
3. a) vn+1 = un+1 + 325 = 1, 04un + 13 + 325 = 1, 04(vn − 325) + 338 = 1, 04vn − 338 + 338 = 1, 04vn
vn est une suite géométrique de raison 1, 04 et de premier terme v0 = u0 + 325 = 625.
b) vn = 625 × 1, 04n
un = vn − 325 = 625 × 1, 04n − 325
c) En entrant la suite dans la calculatrice et en affichant la table de valeurs on a u9 ≈ 564, 57 et
u10 ≈ 600, 15.
Donc on retrouve bien qu’au bout de 10 semaines les chardons auront envahit plus de 600 m2 .
Exercice 72 page 33 :
1. Une année : 15000 × 1, 0225 = 15337, 5. Deux années : 15337, 5 × 1, 0225 = 15682, 59375
2. a) On passe d’une année à l’autre en multipliant le capitale toujours par le même nombre :1, 0225.
Cn est une suite géométrique de raison 1, 0225 et de premier terme C0 = 15000.
Donc Cn = 15000 × 1, 0225n.
15000 × 1, 0225n+1
1, 0225n+1
Cn+1
=
=
= 1, 0225 > 1
b)
Cn
15000 × 1, 0225n
1, 0225n
Donc, comme Cn > 0, on a Cn+1 > Cn et donc la suite est croissante.
De plus 1, 0225 > 1 donc lim 1, 0225n = +∞ et donc lim Cn = +∞
n→+∞
n→+∞
Le capital augmente tous les ans vers l’infini.
3. Il faut corriger le calcul de C : Stocker C × 1, 0225 dans C
4. Il faut 32 année pour atteindre un capital de plus de 30000 euros.
5. Il faut 55 ans pour atteindre plus de 50000 euros, ce qui est envisageable si Hélène commence à
épargner jeune et si le taux ne baisse pas...
Cours
Page 4
Algorithmique
Exercice 44 page 26 :
1. un = 100 × 1, 1n
2. un est croissante et lim un = +∞ car 1, 1 > 1.
n→+∞
3. a) Comme un est croissante et tend vers +∞ les valeurs de un vont forcément finir par dépasser le
chiffre 500.
b) P = 17
Exercice 48 page 26 :
1. 1h : 1, 84cm3 , 2h : ≈ 1, 693cm3, 24h : ≈ 0, 27
2. a) vn est une suite géométrique de raison 0, 92 car on passe d’un terme au suivant en multipliant
toujours par le même nombre : 0, 92.
On a donc vn = 2 × 0, 92n .
b) Comme 0 < 0, 92 < 1, la suite vn est décroissante et lim vn = 0.
n→+∞
Le produit va donc finir par disparaitre du corps du patient.
3. a) Au bout de 9 heures.
b) Au bout de 17 heures
c) Au bout de 92 heures
Cours
Page 5
Algorithmique
Téléchargement