Seconde-Algorithmique-Activité
Débuter en algorithmique|
1 Quwest-ce qu’un algorithme ?
Définition Un alogorithme est une suite d'opérations élémentaires, 8 appliquer dans un ordre déterminé & des données
Un algorithme est donc une liste d’instructions élémentaires a suivre. Ces instructions fournissent en un nombre fini d’étapes|
des résultats.
Ecrire un algorithme consiste & donner une méthode détaillée décrivant toutes les étapes d'une tache & ccomplir,
Exemples : une notice de montage, une racette de cuisine, un chemin indiqué par un GPS, une division & la main, trier des
Cartes 3 jouer --- sont des algorithmes.
On peut considérer un algorithme comme une machine fonctionnant en trois étapes
1. les éléments dont on part : les entrées;
2. les instructions & effectuer sur ces éléments : le traitement:
3, les résultats obtenus : les sorties
Exercice On considére le programme de calcul suivant
1. Choisir un nombre.
Lui ajouter 1
Multiplier le résultat par 2.
Soustraire 3 au résultat.
ASficher le résultat
Appliqur cet algorthme 3; 4, et 4
2. Identifier les trois étapes de cet algorithme.
2 Variables et affectation
Pour commencer un algorithme, il faut des éléments sur lesquels on souhaite travailler (dans exemple précédent, il nous
faut un nombre). Ces éléments sontles données d'entrée qui seront utilisées lors des étapes du traitement.
Les données d'entrée sont stockées dans la mémoire de la calculatrice ou de ordinateur, 8 un emplacement appelé variable|
et repéré par un nom. On peut done considéter une variable comme une boite
Le nom de la variable est son étiquette.
La variable peut contenir une valeur (un nombre, un mot, une liste de nombres ---)
Lorsque les variables sont déclarées, nous n'avons fait que réserver un espace dans la mémoire de V'ordinateur ou de la
calculatrice. Cela revient 3 réserver poser une affiche " RESERVE” sur une place de parking, Pour autant, la place n'est pas
occupée. Occuper cette place, c'est donner une valeur 8 I'espace mémoire réservé : c'est laffectation
Si la variable s'appelle A, l'affectation peut s'écrire de différentes maniéres
~ Affecter 8 A la valeur 3
— A prend la valeur 3;
-Ae3
Exemples
1. Considérons Valgorithme suivant
Debut de Talgorithme
Déclaration de la variable | V
Aifectation| Ved
Nouvelle affectation VeveT
Tnstruction de sortie Afficher V
Fin de Falgorithme
Que lit-on a la fin de l'algorithme?
2. Considérons & présent I'algorithme suivant
Isabelle Morel 1Seconde-Algorithmique-Activité
Debut de Talgori
Déclaration des var aibic
Affectation| aes
Affectation| aaa dat
Affectation| bet
Affectation| bev ard
Affectation| enasb-9
Tnstruction de sortie ‘Afficher ¢
Fin de Falgorithme
Que lit-on 8 la fin de l'algorithme?
3. Considérons & présent un algorithme plus général
Debut de Valgorithme
[Déclaration de la variable [ a
Affectation’ ane
Affectation ae dati
Affectation ana
Affectation aead
Instruction de sortie ‘Afficher @
Fin de Valgorithme
Développer et réduire expression obtenue (on obtient une fonction!)
4, Ecrire l'algorithme donnant la fonction f(x) = (2 +3)? —1
5. Considérons un algorithme programmé avec le logiciel Algobox
Variables
‘a est du type nombre
est du type nombre
est du type nombre
nest du type nombre
Début de Valgorithme
Lire
Lire b
1 prend Ia valeur 10x a4
Afficher n
prend la valeur a
«a prend la valeur b
b prend Ia valeur dee
1 prend Ia valeur 10 x a4
Afficher n
Fin de lalgorithme
{a) Tester cet algorithme ave a = 2 et b
(b) Expliquer limportance de la variable e.
3 Les instructions conditionnelles
‘On souhaite écrire un algorithme testant si un triangle est rectangle ou non en A.
Pour cela, il faut calculer BC? d'une part et AB? + AC? d'autre part, puis comparer les deux valeurs. Cela fait intervenir
tun test, aussi appelé instruction conditionnelle
Ta résolution de certains problémes nécessite la mise en place d'un test pour effectuer une tache
~ si le test est positif, on effactue Ia tche
— sinon, c'est-a-dire si le test est négatif, on effectue une autre tiche,
(On patle d'instruction conditionnelle (ou test ou structure alternative),
En algorithmique, cette instruction conditionnelle se rédige ainsi
Si condition
alors traitement 1
sinon traitement 2
FinSi
Exemples
Isabelle MorelSeconde-Algorithmique-Activité Décombre 2010
1, On considére l'algorithme suivant
Variables
{du type nombre
du type nombre
Entrée
| demander un nombre 2
Traitement
Siz <0
Alors affecter & y le nombre +
Sinon affecter 8 y le nombre Vr
FinSi
Afficher u
{a) Tester cet algorithme pours = 1; —25 45
(b) Ecrire le fonction obtenue sur R.
2. Ecrire l'algorithme testant si un triangle est rectangle en A ou non.
4 La boucle itérative
(On souhaite calculer le nombre 2". Pour cela, on considére le nombre 2 puis on le multiplie par 2. On multiple ensuite le
résultat obtenu par 2 et ainsi de suite. On répéte donc 9 fois 'opération > multiplier par 2. Répéter plusieurs fois de duite
uine mime tAche s'appelle en algorithme exécuter une boucle (3 compteur)
Ta boucle & compteur consiste 8 répéter une Fiche fixe n fois, w tant fixé 8 Pavance.
On Ia rédige de ls maniére suivante
Pour Falant de Tm
| Traitement
in Boucle pour
re 'algorithme suivant
Variables
NV du type nombre
S du type nombre
i du type nombre
Enteé
Saisir N
os
Traitement
Pour éallant de 1 jusqu's
|Stios
FinPour
Aficher 5
2) Compléter le tableau ci-dessous en prenant comme valeur initiale de N
Numéro de passage dans la boucle | Valeur de $ avant le passage dans | Valeur de S aprais le passage dans
la boucle la boucle
4
5
(b) A quoi sert cet algorithme?
Isabelle Morel 35
Seconde-Algorithmique-Activité
2, Considérons & présent I'algorithme suivant
Variables
1 du type nombre
‘A du type nombre
1B da typo nombre
Entrée
Saisir NV
244
158
Traitement
Pour i allant de 0 jusqu's
| B+A>B
FinPour
‘Acher
(a) Utilisez cet algorithme pour compléter le tableau suivant
Décombre 2010)
Nilo 1 2
BY3
(b) Placez les points de coordonnées (iN
5B). Que constatez-vous?
(c) Donnez une expression de la fonction f qui, au nombre sais, associe le nombre Fen sortie.
3. Complétez l'algorithme suivant pour qu'il affiche la table de multiplication (de 0.8 12) d’un nombre entier naturel
saisi par ordinateur
Variables
JV du type nombre
i du type nombre
Edu type nombre
Entree
Saisir
Traitement
Pour j allant de 0 jusqu’’a ...... faire
ce OR
Afficher exe,
FinPour
La boucle conditionnelle
Considérons lalgorithme suivant
Variables
NV du type nombre
C du type nombre
LN recoit un nombre au hasard entre 10 et 20
C resoit 0
ment
Tant que N # C faire
Afficher < Entrez un nombre entier entre 10 et 20 >
Saisir C
siN=c
‘Alors Afficher « Vous avez gagné >
Sinon Afficher « vous avez perdu >
Finsi
FinTant
1. Tester cet algorithme
2. A quoi sert cet algorithme?
Dans cet algorithme, on voit répéte une opération tant qu'une cond
Isabelle Morel
est vl
On parle alors de boucle conditionnelle.Seconde-Algorithmique-Aetivi
Décombre 2010)
La boucle conditionnelle (ou boucle tant que) consiste a rpéter plusieurs fois les mémes instructions tant qu'une certaine|
condition est remplie: la boucle s'arréte quand la condition n’est plus remplie. On utilise pour cela les instructions suivantes
Tank que Condition
| Faire Tache
FinTant
Exemple : Considérons l'algorithme suivant
Dabut algorithmne
Variables
a du type nombre
NN du type nombre
Entrée
Saisir 2
05N
Traitement
Tant que N41 <2 faire
| N+14N
FinTant
Afficher 2
Fin algorithme
1. On choisit pour valeur initiale
5,2. Complétez le tableau ci-dessous
Numéro de passage de la | Valeur de NV avant le pas: | Valeur de NV aprés le pas:
boucle sage dans la boucle sage dans la boucle
Arrét de la boucle condi-
tionnelle (oui/non)
1
‘Combien de passages dans la boucle conditionnelle ont été nécessaires pour l'arrét de l'algorithme?
2. Recommencer I'algorithme pour 2 = 2.
3. Que donne l'algorithme pour x = 3,17
4, Le nombre
Ent(3,1)=,
Isabelle Morel
cobtenu est appelé la partie entire de x, noté Ent(2). On a done : Ent(5,2)=
Ent(2)=......et