EXERCICES SYSTEMES

Un algorithme est une suite d'instructions élémentaires qui s'appliquent dans un
ordre ... On souhaite reproduire le fonctionnement d'un distributeur de billets.

Part of the document


ALGORITHMIQUE Le mot « algorithme » vient du nom d'un mathématicien persan al-Khuwarizmi
(IX ième siècle) dont le traité d'algèbre décrit des procédés de calcul à
suivre étape par étape pour résoudre des problèmes qui se ramènent souvent
à la résolution d'équations. Un algorithme est une suite d'instructions élémentaires qui s'appliquent
dans un ordre déterminé à des données et qui fournissent en un nombre fini
d'étapes des résultats. Données (instructions(résultats
Entrée Traitement Sortie Activité 1 : vie quotidienne On indique son chemin à un conducteur égaré.
« Allez tout droit jusqu'au prochain carrefour. Si la rue à droite est
autorisée à la circulation, alors prenez-la ; ensuite, prenez la deuxième à
gauche et enfin, la première à droite. Mais, si en revanche la rue à droite
est en sens interdit, alors continuez jusqu'à la deuxième à droite, prenez-
la et ensuite, la première à droite, puis à nouveau, la première à droite.
Faire un plan de son trajet.
On souhaite reproduire le fonctionnement d'un distributeur de billets.
a) Dégager les traitement successifs : vérification de la date de fin de
validité de la carte, du solde du compte, du retrait maximal autorisé,
du code secret...
b) Organiser l'enchaînement de ces traitements et prévoir les différentes
situations qui peuvent se produire. Activité 2 : maths du collège
On considère l'équation 4x + 3 = 2 x - 7
Suivre les instructions ci-contre : ( retrancher 3 dans les deux membres
( retrancher 2x dans les deux membres
( diviser par 2 les deux membres
( écrire la solution de l'équation Répéter cinq fois le programme de calcul ci-contre : ( choisir un nombre
( lui ajouter 13
( si la somme obtenue est
supérieure ou égale à 20, alors
lui retrancher 15, sinon lui
ajouter 15
( écrire le résultat
Répéter cinq fois le programme de calcul ci-contre : ( choisir un nombre
( lui ajouter 8
( tant que le résultat est
inférieur à 35, lui ajouter 5
( écrire le résultat
Quels nombres obtient-on ?
Activité 3 :algorithme N°1 ( Donner à x une valeur Voici l'algorithme avec
les trois parties
( calculer u = x +4 et le vocabulaire à
utiliser « saisir »,
( calculer y = u x x « prend la valeur » et
« afficher »
( écrire le résultat y Le réécrire à droite avec
seulement x et y
Entrée Prendre un exemple. Saisir x A quoi est égal y en fonction de x ? Traitement
u prend la valeur x+4
y prend la valeur u x x
Sortie
Afficher y
Dans cet exemple, x, u et y sont des variables et on leur affecte une
valeur. Pour x, c'est l'utilisateur qui donne la valeur par contre pour u
et y, on fait des opérations ou des calculs à partir d'autres variables. N°2
( choisir un nombre
( lui ajouter 4
( multiplier la somme obtenue par le nombre choisi
( ajouter 4 à ce produit
( écrire le résultat Transformer ce programme en utilisant des variables puis écrire un
algorithme.
Que fait cet algorithme ? peut-on le simplifier en remplaçant la 4ième,
5ième et 6ième lignes par une seule ligne ?
Que valent A, B et C ? (A prend la valeur 2 (A prend la valeur 2 (A
prend la valeur 5
(B prend la valeur A*A - 2 (B prend la valeur 10 (B
prend la valeur 3*A
(C prend la valeur B - A (C prend la valeur A + B (C
prend la valeur 2*A - B
(C prend la valeur B - C (C prend
la valeur 5*C +B Remplacer les deux dernières lignes du deuxième et du troisième algorithmes
par une seule ligne Que fait cet algorithme ? Trouver un algorithme qui
transforme X en Y et Y en X.
(X prend la valeur Y
(Y prend la valeur X Activité 4 :programme En utilisant la feuille « programmation » qui permet de trouver les signes
et les mots dans sa calculatrice, taper le programme suivant qui correspond
à l'algorithme du N°1 : TI Casio pour la
Ti89
Aller dans
APPS program
PROGRAM :FONCTION ====FONCTION=== choisir new
: Input "X= ",X " X= " ? (X ( dans variable,
écrire le nom
: X+4 ( U X+4 ( U ( du programme
: U x X( Y U x X( Y ( puis dans
CATALOG
: Disp " Y= ",Y " Y= " : Y ( Pour
l'exécuter, aller dans
HOME, taper le
nom du
Programme
suivi de ( )
Compléter le tableau suivant : | |Algorithme |T I |Casio |
|Entrée | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
|Affectation | | | |
| | | | |
|Entre deux | | | |
|instructions | | | |
|Sortie | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | Ecrire le programme de l'algorithme N°2 pour votre calculatrice puis le
tester. Chercher un algorithme qui donne les coordonnées du milieu du segment [ AB] Chercher un algorithme qui donne la distance de deux points. Chercher un algorithme qui donne l'expression d'une fonction affine à
partir de deux nombres et leurs images. Les coordonnées du milieu du segment [ AB] : algorithme T I Casio Variables : Disp "A(X,Y) " " A(X,Y) "(
xA, yA , xB, yB, xI et yI. : Input " X= ",X " X= " ?
(X(
Entrée : Input "Y= ",Y "Y= " ? (Y(
Saisir xA, yA , xB, yB : Disp " B(X,Y) "
" B(X,Y) "(
Traitement : Input " X= ",Z " X= " ? (Z (
xI prend la valeur ( xA+xB)/2 : Input " Y= ",T " Y= " ?
(T(
yI prend la valeur ( yA+ yB)/2 : (Z+X)/2(C
(Z+X)/2(C (
Sorties : Disp « X= »,C " X= " : C (
: (T+Y)/2 (D (T+Y)/2 (D(
Afficher xI et yI. : Disp « Y= »,D " Y= " : D (
Les coordonnées du milieu du segment [ AB] : algorithme T I Casio Variables : Disp "A(X,Y) " " A(X,Y) "(
xA, yA , xB, yB, xI et yI. : Input " X= ",X " X= " ?
(X(
Entrée : Input "Y= ",Y "Y= " ? (Y(
Saisir xA, yA , xB, yB : Disp " B(X,Y) "
" B(X,Y) "(
Traitement : Input " X= ",Z " X= " ? (Z (
xI prend la valeur ( xA+xB)/2 : Input " Y= ",T " Y= " ?
(T(
yI prend la valeur ( yA+ yB)/2 : (Z+X)/2(C
(Z+X)/2(C (
Sorties : Disp « X= »,C " X= " : C (
: (T+Y)/2 (D (T+Y)/2 (D(
Afficher xI et yI. : Disp « Y= »,D " Y= " : D (
Les coordonnées du milieu du segment [ AB] : algorithme T I Casio Variables : Disp "A(X,Y) " " A(X,Y) "(
xA, yA , xB, yB, xI et yI. : Input " X= ",X " X= " ?
(X(
Entrée : Input "Y= ",Y "Y= " ? (Y(
Saisir xA, yA , xB, yB : Disp " B(X,Y) "
" B(X,Y) "(
Traitement : Input " X= ",Z " X= " ? (Z (
xI prend la valeur ( xA+xB)/2 : Input " Y= ",T " Y= " ?
(T(
yI prend la valeur ( yA+ yB)/2 : (Z+X)/2(C
(Z+X)/2(C (
Sorties : Disp « X= »,C " X= " : C (
: (T+Y)/2 (D (T+Y)/2 (D(
Afficher xI et yI. : Disp « Y= »,D " Y= " : D (