• Aucun résultat trouvé

Chapitre 2 : Algorithme

N/A
N/A
Protected

Academic year: 2022

Partager "Chapitre 2 : Algorithme "

Copied!
9
0
0

Texte intégral

(1)

Chapitre 2 : algorithme Page 1 Objectifs :

*Savoir ce qu’est un algorithme

*Savoir traduire un algorithme sur calculatrice.

* Savoir écrire un algorithme simple et un algorithme avec boucle conditionnelle.

* Savoir écrire un algorithme avec boucle tant que ou pour

Exemples:

*Sans le savoir, vous utilisez des algorithmes tous les jours, comme le montre l’exemple suivant : On souhaite préparer un moelleux au chocolat :

*Les algorithmes sont particulièrement utiles en Mathématiques, pour effectuer des calculs, par exemple. Voici un programme de calcul vu au collège :

*voici la méthode de résolution d’une équation du type x²=a lorsque a est strictement positif:

Chapitre 2 : Algorithme

Un peu d’histoire : Le mot « algorithme » vient du nom d’un mathématicien arabe du VIIIème siècle après J.C., Al-Khwarizmi. Ce mathématicien écrivit en langue arabe le plus ancien traité d’algèbre « Al-Jabr » sur la résolution des équations. Il y proposait les solutions en décrivant l’enchainement d’étapes à suivre pour résoudre les équations.

Ingrédients : 250 g de chocolat noir, 250 g de beurre,

4 œufs,

250 g de sucre, 75 g de farine.

Faire fondre le chocolat au bain marie ; ajouter le beurre, mélanger ; ajouter la farine, mélanger.

Battre les œufs en omelette ; ajouter le sucre et mélanger.

Mélanger les deux préparations.

Verser dans un moule et faire cuire 45 min au four à 220°C.

Servir le gâteau froid.

1- choisir une valeur 2- La diviser par 3 3- Enlever 2 au résultat

4- Multiplier par 5 le résultat précédent 5- Donner le résultat obtenu

1-Donner la valeur de a 2- Prendre la racine carrée de a 3-Donner le résultat

4- Donner également l’opposé du résultat précédent.

(2)

Chapitre 2 : algorithme Page 2 I- Qu’est ce qu’un algorithme ?

a) Ecrire un algorithme consiste à donner une méthode détaillée décrivant toutes les étapes d’une tache à accomplir, réparties en trois phases :

- Les éléments ou les variables dont on part : les entrées - les actions à effectuer sur ces éléments : le traitement - le résultat obtenu : les sorties

b) Durant l’exécution d’un algorithme, on va avoir besoin de stocker des données, voire des résultats. Pour cela on utilise ce que l’on appelle une « variable ». On attribue un nom à chaque variable. Une variable est comme une boite, repérée par un nom, qui va contenir une

information. Au sein d’un algorithme, pour utiliser le contenu d’une variable, il suffira de l’appeler par son nom.

Remarque : La valeur du contenu d’une variable pourra être modifiée pendant l’exécution.

Déclaration de variable: Dans l’écriture d’un algorithme, il est utile de préciser dès le début le nom des variables que l’on va utiliser, en indiquant leur type (un nombre, entier, décimal, positif..., une chaine de caractère, une liste de valeur...)

II- Comment se présente un algorithme : 1. Algorithme simple

Exemple 1 : Un commerçant accorde une remise sur des articles. On souhaite connaître le montant de la remise en euros. Voici un algorithme écrit en langage naturel donnant la

solution au problème :

Déclaration de variables : A, P et R sont du type nombre

Entrée : Saisir le prix de départ A

Saisir le pourcentage de remise P Traitement des données : R prend la valeur A x P

100 Sortie : Afficher R

(3)

Chapitre 2 : algorithme Page 3 1) a) Calculer la valeur de la variable R lorsque A = 56 et P = 30.

b) Donner une interprétation concrète du résultat précédent.

2) Même question avec A = 13 et P = 45.

3) Compléter les paragraphes "Traitement des données" et "Sortie" pour que l'algorithme affiche également le prix à payer B.

4) a) Calculer la valeur des variables R et B lorsque A = 159 et P = 24.

b) Donner une interprétation concrète des résultats précédents.

5) Vérifier les résultats en rentrant le programme sur votre calculatrice.

Exercices : Math repère 2010 Hachette 5pIX

2. Algorithme avec instruction conditionnelle

Une instruction conditionnelle permet d'effectuer un test suivant certaines conditions.

En langage naturel, elle peut se présenter sous la forme suivante : Si Condition Alors

Instructions 1

Sinon Instructions 2 Fin Si

Exemple 1 :

Si la pièce tombe sur pile Alors je gagnes

Sinon tu gagnes Fin Si

Exemple 2 : Lors d’un jeu TV, on répond à une question à choix multiples. Une bonne réponse nous fait gagner 1000€. Une mauvaise nous fait perdre.

Déclaration de variables : A et G sont du type nombre Entrée : G prend la valeur 0

afficher « Quelle est la capitale de la France ? 1.Paris 2. Marseille 3.Lyon 4. Nice»

Saisir A Traitement des données : Si A 1 alors

afficher « vous gagnez 1000€ » G prend la valeur 1000

Sinon afficher « perdu » Fin Si

Sortie : Afficher G

(4)

Chapitre 2 : algorithme Page 4 Exemple 3 : On considère l'algorithme suivant donné en langage naturel :

Déclaration de variables : A est du type nombre B est du type nombre C est du type nombre Entrée : Saisir A

Traitement des données : B prend la valeur A

C prend la valeur arrondie à l'unité de B Sortie : Si B = C Alors

afficher "A est un carré parfait"

Sinon Afficher "A n'est pas un carré parfait"

Fin Si

1) Lire l'algorithme. Quel problème permet-il de résoudre ? 2) a) Quelle est la valeur de B et la valeur de C lorsque A = 40 ?

b) Dans ce cas, quel est le résultat affiché à la suite de l'instruction conditionnelle ? 3) Mêmes questions avec A = 2025.

4) Vérifier les résultats précédents en entrant le programme dans votre calculatrice.

Exercices : Math repère 2010 Hachette 5.1,2,4pXIII

3. Algorithme avec boucle itérative ( connaissant le nombre de répétitions)

On peut répéter les mêmes instructions pour un nombre de répétitions prédéfini par une variable. En langage naturel, cela peut se présenter sous la forme suivante :

Pour Variable allant de Valeur début à Valeur fin Faire Instructions

Fin Pour

Exemple 1 : Chaque année jusqu’à ses 18ans, on ajoute 50€ sur le livre d’un enfant pour son anniversaire. On pourrait faire ceci :

Déclaration de variables : S est du type nombre Entrée : S prend la valeur 0 Traitement des données : S prend la valeur S+50 S prend la valeur S+50

Sortie : Afficher S

Il faudrait alors écrire 18 fois le S prend la valeur S+50 (d’où les …) .

(5)

Chapitre 2 : algorithme Page 5 Avec le pour, on obtiendrait ceci :

Déclaration de variables : S est du type nombre Entrée : S prend la valeur 0

Traitement des données : Pour I allant de 1 à 18 Faire S prend la valeur S+50 Fin Pour

Sortie : Afficher S

Exemple 2 : On considère l'algorithme suivant donné en langage naturel : Déclaration de variables : A est du type nombre

Entrée : Saisir A

Traitement: Pour I allant de 1 à 5 Faire A prend la valeur A+1 Fin Pour

Sortie : Afficher A a) Pour A = 3 qu'affiche l'algorithme en sortie.

I 1 2 3 4 5

A+1->A 3+1=4 4+1=5 5+1=6 6+1=7 7+1=8

L’algorithme affiche 8

b) Même question pour A = -4.

Exemple 3 : Sur chaque case d’un échiquier (on rappelle qu’il ya 64 cases), je dépose des grains de riz (un grain de riz pèse : 0,2 g). Sur le premier, j’en mets un et ensuite je double le nombre de grains de riz sur chaque case suivante.

Déclaration de variables : G est du type nombre S est du type nombre Entrée : G prend la valeur 1 S prend la valeur 1

Traitement : Pour I allant de 1 à 63 Faire G prend la valeur 2 G S prend la valeur S+G

P prend la valeur 0,2 S Fin Pour

Sortie : Afficher S Afficher P

(6)

Chapitre 2 : algorithme Page 6 1. A quoi correspond concrètement la variable G ?

2. A quoi correspond concrètement la variable S ? 3. A quoi correspond concrètement la variable P ?

4. Programmer cet algorithme sur la calculatrice. Que se passe-t-il ? 4. Algorithme avec boucle itérative ( connaissant le test d’arrêt)

On peut répéter les mêmes instructions pour un nombre de répétitions prédéfini par une variable. Cette fois si, on sait jusqu’où il faut aller. En langage naturel, cela peut se présenter sous la forme suivante :

Tant que Condition est vraie Faire Instructions

Fin Tant que

Exemple 1 : Tant que je n’ai pas trouvé la solution Faire Chercher la solution

Fin Tant que

remarque : On peut avoir un énoncé sous la forme : jusqu’à ce que j’ai trouvé la solution je continue de la chercher. Il faut alors chercher la négation du « jusqu’à » pour obtenir la même chose que pour l’exemple 1.

Exemple 2 : On considère l'algorithme suivant donné en langage naturel : Déclaration de variables : n est du type nombre

Entrée : Saisir n

Traitement et sortie : Tant que n < 50 Faire n prend la valeur n+1 Afficher n

Fin Tant que a) Pour n = 45 qu'affiche l'algorithme en sortie.

Condition Vrai(45<50) Vrai(46<50) Vrai(47<50) Vrai Vrai Faux

n+1->n 45+1=46 46+1=47 47+1=48 49 50

L’algorithme affiche 46 ;47 ;48 ;49 ;50

b) Même question pour n = 48,1 et pour n = 53.

(7)

Chapitre 2 : algorithme Page 7 Exemple 3 : Chaque mois je gagne 50 € d’argent de poche. Je veux acheter un pc à 1495€.

Au bout de combien de mois pourrais je acheter le pc ?

Déclaration de variables : A et M sont du type nombre Entrée : A prend la valeur 50

M prend la valeur 1 Traitement : Tant que A < 1495 Faire

A prend la valeur A+50 M prend la valeur M+1 Fin Tant que

Sortie : Afficher M 1. A quoi correspond concrètement la variable A ? 2. A quoi correspond concrètement la variable M ?

3. Au bout de combien de mois pourrais je acheter le pc ? (en faisant tourner l’algorithme à la main) . Vérifier le résultat à l’aide de la calculatrice Exercices : Math repère 2010 Hachette

1,2,3,4,5pXXI

Exercices supplémentaires : Math repère 2010 Hachette 6,7,8pXXI+pXXII

5. Langage de calculatrice

Accéder aux programmes :

Appuyer ici : Pour obtenir :

sous EXEC, il suffit de choisir le programme que l’on veut exécuter et d’appuyer sur

sous EDIT il suffit de choisir le programme que l’on veut modifier(éditer) et d’appuyer sur

sous NEW, appuyer sur puis rentrer le nom choisi pour le nouveau programme et

Pour quitter l’édition d’un programme (la sauvegarde est automatique)

Accéder aux programmes :

Appuyer ici : pour obtenir :

il suffit de choisir le programme que l’on veut exécuter et d’appuyer sur

il suffit de choisir le programme que l’on veut modifier(éditer) et d’appuyer sur

appuyer sur puis rentrer le nom choisi pour le nouveau programme et

Pour quitter l’édition d’un programme (la sauvegarde est automatique)

(8)

Chapitre 2 : algorithme Page 8 Editer un programme basique :

Pour passer d’une ligne à la suivante , on utilise

Pour affecter à une variable une valeur, on

utilise (ex : )

Pour demander à l’utilisateur de saisir une valeur pour une variable A, on utilise puis Input dans l’onglet I/O :

(ex : )

Pour demander à la calculatrice d’afficher un résultat A, on utilise puis Disp dans

l’onglet I/O : (ex : )

Pour demander à la calculatrice d’afficher un texte , on utilise puis Disp dans l’onglet I/O et les guillemets : : (ex :

)

Pour afficher un opérateur relationnels ( , on utilise et on choisit l’opérateur.

Editer un programme avec boucle:

Pour passer accéder aux fonctions de boucles , on utilise et l’onglet CTL

Si : Alors :

Sinon : Pour :

Fin Si , Pour ,Tant que:

Tant que :

Editer un programme basique:

Pour passer d’une ligne à la suivante , on utilise

Pour affecter à une variable une valeur, on utilise

Pour demander à l’utilisateur de saisir une valeur pour une variable A, on utilise

puis (ex : )

Pour demander à la calculatrice d’afficher un résultat A, on utilise puis : (ex : ) dans ce cas, pas besoin d’aller à la ligne en utilisant

Pour demander à la calculatrice d’afficher un texte , on utilise puis et les

guillemets : : (ex : ) dans

ce cas, pas besoin d’aller à la ligne en utilisant

Pour afficher un opérateur relationnels ( , on utilise puis

et on choisit l’opérateur.

Editer un programme basique :

Pour passer accéder aux fonctions de boucles ,

on utilise

Si : Alors : Sinon : Fin Si :

Pour : à : Fin Pour : Tant que : Fin Tant que :

(9)

Chapitre 2 : algorithme Page 9 Exemples (pour la syntaxe):

(Pour I allant de 1à15) Expérience aléatoire:

Pour générer un nombre réel aléatoire entre 0 compris et 1 non compris: Faire

puis dans PRB faire rand et

Pour générer un nombre réel aléatoire entre 0 compris et N non compris (avec N un entier) : Faire puis dans PRB faire rand puis et

Pour générer un nombre entier entre 0 compris et N non compris (avec N un entier) : Faire

dans num on fait int puis puis dans PRB faire rand puis et

Pour générer un nombre entier entre 1 compris et N non compris (avec N un entier) : Faire

dans num on fait int puis puis dans PRB faire rand puis et

Exemples (pour la syntaxe):

(Pour I allant de 1à15) Expérience aléatoire:

Pour générer un nombre réel aléatoire entre 0 compris et 1 non compris:

puis

Pour générer un nombre réel aléatoire entre 0 compris et N non compris (avec N un entier) :

puis

Pour générer un nombre entier entre 0 compris et N non compris (avec N un entier) :

puis

Pour générer un nombre entier entre 1 compris et N non compris (avec N un entier) :

puis

Références

Documents relatifs

Les solutions aux questions posées donnent la case sur laquelle sera collée la pièce numérotée sur le carton quadrillé ainsi que son orientation.. Un exemple pour

Les solutions aux questions posées donnent la case sur laquelle sera collée la pièce numérotée sur le carton quadrillé ainsi que son orientation.. Un exemple pour

▼ Le mathématicien arabe Al Khwarizmi (environ 780 – 850 après J.-C.) a écrit un manuscrit d’algèbre traitant de la résolution d’équations.. Dans cet ouvrage, il

Dans les années 1950, l’opinion sur la stabilité du Système solaire a basculé de nouveau avec les travaux de Kolmogorov, qui montre que celui-ci est stable avec une

Nous avons tenu compte du fait que les lecteurs de ce livre n ’ont pas eu, dans leur grande majorité, la possibilité de se familiariser avec l ’histoire de la

A l’occasion de ce « Café de l’Institut de Mathématiques de Toulouse (IMT) », nous présentons, sous formes d’exemples, des questions et des réponses formulées

En conséquence, le sujet de la physique théorique a presque toujours été extrêmement concentré ; à presque tous les moments, la plupart des efforts de tous les physiciens

De toute manière il semble que l'algèbre de Mohammed-ben-Mousa soit restée inconnue en Occident pendant les xn e et xm e siècles, et que cet au- teur ne fut alors célèbre en