Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du...

57
Les bases de Les bases de l’Algorithmiq l’Algorithmiq ue ue

Transcript of Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du...

Page 1: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Les bases deLes bases del’Algorithmiqul’Algorithmiquee

Page 2: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Qu'est-ce qu'un Qu'est-ce qu'un algorithme ?algorithme ?

Le mot « algorithme » vient du nom du grand mathématicien Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820), qui introduisit en persan Al Khwarizmi (vers l'an 820), qui introduisit en Occident la numération décimale (rapportée d'Inde) et Occident la numération décimale (rapportée d'Inde) et enseigna les règles élémentaires des calculs s'y rapportant. enseigna les règles élémentaires des calculs s'y rapportant. La notion d'algorithme est donc historiquement liée aux La notion d'algorithme est donc historiquement liée aux manipulations numériques, mais elle s'est progressivement manipulations numériques, mais elle s'est progressivement développée pour porter sur des objets de plus en plus développée pour porter sur des objets de plus en plus complexes, des textes, des images, des formules logiques, complexes, des textes, des images, des formules logiques, des objets physiques, etc.des objets physiques, etc.

Page 3: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Qu’est-ce que Qu’est-ce que « l’algomachin » ?« l’algomachin » ?

L’algorithmique est donc un terme d’origine arabe, L’algorithmique est donc un terme d’origine arabe, comme algèbre, amiral ou zénith. Ce n’est pas une comme algèbre, amiral ou zénith. Ce n’est pas une excuse pour massacrer son orthographe, ou sa excuse pour massacrer son orthographe, ou sa prononciation.prononciation.Ainsi, l’algo n’est pas « rythmique », à la différence du Ainsi, l’algo n’est pas « rythmique », à la différence du bon rock’n roll. L’algo n’est pas non plus « l’agglo ».bon rock’n roll. L’algo n’est pas non plus « l’agglo ».Alors, ne confondez pas l’algorithmique avec l’agglo Alors, ne confondez pas l’algorithmique avec l’agglo rythmique, qui consiste à poser des parpaings en rythmique, qui consiste à poser des parpaings en cadence.cadence.

Avez-vous déjà ouvert un livre de recettes de cuisine ? Avez-vous déjà ouvert un livre de recettes de cuisine ? Avez vous déjà déchiffré un mode d’emploi traduit Avez vous déjà déchiffré un mode d’emploi traduit directement du coréen pour faire fonctionner un directement du coréen pour faire fonctionner un magnétoscope ou un répondeur téléphonique réticent ? magnétoscope ou un répondeur téléphonique réticent ? Si oui, sans le savoir, vous avez déjà exécuté des Si oui, sans le savoir, vous avez déjà exécuté des algorithmes.algorithmes.

Page 4: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Qu’est-ce qu’un algorithme ?Qu’est-ce qu’un algorithme ?Un algorithme est une suite logique Un algorithme est une suite logique d’instructions permettant de résoudre un d’instructions permettant de résoudre un problème (ou de répondre à un besoin).problème (ou de répondre à un besoin).

Qu’est ce que veut dire « écrire un algorithme »Qu’est ce que veut dire « écrire un algorithme »- - Analyser et comprendre le problèmeAnalyser et comprendre le problème : étude des : étude des données fournies et des résultats attendus.données fournies et des résultats attendus.- - Résoudre le problèmeRésoudre le problème : : C’est trouver les structures de données adaptées C’est trouver les structures de données adaptées ainsi que l’enchaînement des actions à réaliser ainsi que l’enchaînement des actions à réaliser pour passer des données aux résultats.pour passer des données aux résultats.

Comment exécuter un algorithme sur un Comment exécuter un algorithme sur un ordinateur ?ordinateur ?Il faut traduire cet algorithme à l’aide d’un Il faut traduire cet algorithme à l’aide d’un langage de programmation connu par langage de programmation connu par l’ordinateur.l’ordinateur.

Page 5: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Enoncé d’un problème

Analyse, compréhension

Algorithme

Codification

Programme

Résolution

Exécution par l’ordinateur

Langage de programmation

(code)

Pseudo code

Langage machine

Interprétation

Page 6: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Règles à respecter pour l'écriture Règles à respecter pour l'écriture d'un algorithmed'un algorithme

Il est défini Il est défini sans ambiguïté.sans ambiguïté. Il se termine après un Il se termine après un nombre fini nombre fini

d'opérations.d'opérations. Il manipule des Il manipule des objetsobjets définis de définis de

manière très précise.manière très précise.

Page 7: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Règles de mise en forme d’un Règles de mise en forme d’un

algorithmealgorithme Nom de l’algorithmeNom de l’algorithme

DébutDébut (* commentaires *)(* commentaires *)

Instruction 1Instruction 1 (* commentaires *)(* commentaires *) Instruction 2Instruction 2

FinFin

Page 8: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Les objets utilisés dans un Les objets utilisés dans un algorithmealgorithme

Les différents objetsLes différents objets Les variablesLes variables

Une variable est un objet contenant une valeur appelée à Une variable est un objet contenant une valeur appelée à être modifiée au cours de l'algorithme.être modifiée au cours de l'algorithme.

Les constantesLes constantesUne constante est un objet dont la valeur ne change pas au Une constante est un objet dont la valeur ne change pas au cours de l'algorithme.cours de l'algorithme.

Définition des objetsDéfinition des objetsUn objet est définis par :Un objet est définis par :

• Un identificateur Un identificateur : suite quelconque de : suite quelconque de caractères.caractères.

• Un type Un type :: Booléen, numérique (entier ou réel), Booléen, numérique (entier ou réel), caractère ou chaîne de caractères, tableau...caractère ou chaîne de caractères, tableau...

• Une valeur Une valeur : c'est le contenu de l'objet.: c'est le contenu de l'objet.

Page 9: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Règles de mise en forme d’un Règles de mise en forme d’un

algorithmealgorithme Nom de l’algorithmeNom de l’algorithmeDéclaration des variables et constantesDéclaration des variables et constantes

DébutDébut (* commentaires *)(* commentaires *)

Instructions 1Instructions 1Instructions 2Instructions 2

FinFin

Page 10: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :

Écrire un algorithme qui :Écrire un algorithme qui : Demandera à l’utilisateur son Demandera à l’utilisateur son

nom et le nombre de pains qu’il nom et le nombre de pains qu’il désire acheter ;désire acheter ;

Calculera le montant à payer ;Calculera le montant à payer ; Et affichera le résultat.Et affichera le résultat.

Page 11: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

• ExempleExemple

AlgorithmeAlgorithme Prix_du_painPrix_du_painVariablesVariables

Nom Nom : Chaîne de caractères (* nom de la personne *): Chaîne de caractères (* nom de la personne *)Nombre Nombre : Entier (* nombre de pains demandés *): Entier (* nombre de pains demandés *)MontantMontant : Réel: Réel (* montant à payer *)(* montant à payer *)

ConstantesConstantesPrix = 1,20 (* prix d’un pain *)Prix = 1,20 (* prix d’un pain *)

DébutDébut

(* commentaires *)(* commentaires *) Instruction1Instruction1 Instruction2Instruction2

FinFin

Page 12: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Instructions élémentairesInstructions élémentaires

Affectation : Affectation : L'opération consiste à affecter une L'opération consiste à affecter une

valeur à une variable. valeur à une variable. Elle est représentée par une flèche Elle est représentée par une flèche

orientée à gaucheorientée à gauche Exemple :Exemple :

NOMBRE NOMBRE 15 15SOMME SOMME 0 0NOMBRE2 NOMBRE2 NOMBRE3 + NOMBRE4 NOMBRE3 + NOMBRE4COMPTEUR COMPTEUR COMPTEUR + 1 COMPTEUR + 1SOMME SOMME SOMME + NOMBRE SOMME + NOMBRE

Page 13: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Instruction d'entréeInstruction d'entréeUne instruction d'entrée permet de Une instruction d'entrée permet de récupérer une valeur sur un récupérer une valeur sur un périphérique d'entrée (valeur saisie au périphérique d'entrée (valeur saisie au clavier par exemple).clavier par exemple).

NotationNotation ::SaisirSaisir nom variable nom variable

Exemple précédent :Exemple précédent : SaisirSaisir Nom Nom

SaisirSaisir Nombre Nombre

Page 14: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Instruction de sortieInstruction de sortie

Permet d'afficher à l'écran du "texte", le Permet d'afficher à l'écran du "texte", le contenu d'un objet (variable ou constante) contenu d'un objet (variable ou constante) voir le résultat d'une expression.voir le résultat d'une expression.

Notation :Notation :AfficherAfficher nom variable ou nom variable ou AfficherAfficher « « texte »texte »

Exemple :Exemple :AfficherAfficher « Le montant à payer est : » ; « Le montant à payer est : » ; MontantMontant

Page 15: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Expressions Expressions Des opérations sur les objets : variables, constantes ou Des opérations sur les objets : variables, constantes ou

encore littéraux (valeurs numériques ou encore littéraux (valeurs numériques ou alphanumériques ; peuvent être réalisées à l'aide alphanumériques ; peuvent être réalisées à l'aide d'opérateurs arithmétiques ou logiques pour former d'opérateurs arithmétiques ou logiques pour former des expressions.des expressions.Les principaux opérateurs arithmétiques (à partir des Les principaux opérateurs arithmétiques (à partir des variables déclarées ci-dessus)variables déclarées ci-dessus)

OpérationsOpérations OpérateursOpérateurs ExempleExemple

AdditionAddition ++ Prix + NombrePrix + Nombre

SoustractioSoustractionn

-- Montant - RemiseMontant - Remise

MultiplicatMultiplicationion

** HorsTaxe * 1,206HorsTaxe * 1,206

DivisionDivision // Montant / NombreMontant / Nombre

PuissancePuissance ^̂ Montant ^ 2Montant ^ 2

Page 16: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :Algorithme Algorithme PPrix_du_painrix_du_painVariablesVariables

Nom Nom : Chaîne de caractères (* nom de la personne *): Chaîne de caractères (* nom de la personne *)Nombre Nombre : Entier (* nombre de pains demandés *): Entier (* nombre de pains demandés *)MontantMontant : Réel: Réel (* montant à payer *)(* montant à payer *)

ConstantesConstantesPrix = 1,20 (* prix d’un pain *)Prix = 1,20 (* prix d’un pain *)

DébutDébut Afficher « Quel est votre nom ? »Afficher « Quel est votre nom ? » Saisir NomSaisir Nom Afficher « Combien de pain désirez-vous ? »Afficher « Combien de pain désirez-vous ? » Saisir NombreSaisir Nombre Montant Montant Prix * Nombre Prix * Nombre Afficher « Le montant à payer est de » ; Montant ; Afficher « Le montant à payer est de » ; Montant ;

« euros. »« euros. »FinFin

Page 17: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Valeur saisie

par l’utilisateur Quel est votre nom ?

Arthur

Combien de pain désirez-vous ?

5

Le montant à payer est de 6 euros.

Page 18: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Monta

nt

6

Nom

Arthur

Nombr

e

5

Prix

1,2

MontantMontant

5 * 1,20 = 65 * 1,20 = 6

Page 19: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Les structures alternatives Les structures alternatives et conditionnelles et conditionnelles

La structure alternativeLa structure alternative

SISI condition vérifiéecondition vérifiée

AlorsAlors action1action1

SinonSinon action2action2FIN SIFIN SI

suite algorithmesuite algorithme

Condition

vérifiée

Oui

Non

Action 2 Action 1

Page 20: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Les opérateurs logiquesLes opérateurs logiques

ComparaisonComparaison OpérateursOpérateurs

== Égal àÉgal à

<< Inférieur àInférieur à

>> Supérieur àSupérieur à

<=<= Inférieur ou égal àInférieur ou égal à

>=>= Supérieur ou égal àSupérieur ou égal à

<><> Différent deDifférent de

ETET Et (l’un et l’autre)Et (l’un et l’autre)

OUOU Ou (l’un ou l’autre)Ou (l’un ou l’autre)

NONNON Non Non

Page 21: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple : Une centrale de cuisson (Exemple : La mie Une centrale de cuisson (Exemple : La mie

Câline) commande des baguettes surgelées à Câline) commande des baguettes surgelées à un fabricant. Celui-ci accorde des remises en un fabricant. Celui-ci accorde des remises en fonction du chiffre d’affaires réalisé. Le taux de fonction du chiffre d’affaires réalisé. Le taux de remise est de 5 % pour un CA de moins de 1000 remise est de 5 % pour un CA de moins de 1000 euros et de 10 % au-delà de 1000 euros de CA.euros et de 10 % au-delà de 1000 euros de CA.

Écrire un algorithme qui :Écrire un algorithme qui : Demandera à l’utilisateur sa raison sociale et le Demandera à l’utilisateur sa raison sociale et le

nombre de baguettes qu’il désire commander ;nombre de baguettes qu’il désire commander ; Calculera le chiffre d’affaires réalisé ;Calculera le chiffre d’affaires réalisé ; Calculera le montant de la remise ;Calculera le montant de la remise ; Et affichera les résultats.Et affichera les résultats.

Page 22: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme Algorithme prix_du_pain prix_du_painVariablesVariables Raison Raison : Chaîne de caractères : Chaîne de caractères (* raison (* raison sociale de l’ent. *)sociale de l’ent. *) NombreNombre : Entier: Entier (*nombre de baguettes (*nombre de baguettes commandées *)commandées *) CA CA : Réel: Réel (* chiffre d’affaires réalisé (* chiffre d’affaires réalisé *)*)

RemiseRemise : Réel: Réel (* montant de la remise *)(* montant de la remise *)Montant Montant : Réel: Réel (* montant à payer *)(* montant à payer *)

ConstantesConstantesPrix = 0,5Prix = 0,5 (* prix de la baguette *)(* prix de la baguette *)

DébutDébut(* saisie des informations concernant la commande *)(* saisie des informations concernant la commande *)Afficher « Quelle est la raison sociale de l’entreprise ? »Afficher « Quelle est la raison sociale de l’entreprise ? »Saisir RaisonSaisir RaisonAfficher « Combien de baguettes désirez vous commander ? »Afficher « Combien de baguettes désirez vous commander ? »Saisir NombreSaisir Nombre(* calcul du chiffre d’affaires et de la remise accordée *)(* calcul du chiffre d’affaires et de la remise accordée *)CA CA Prix * Nombre Prix * NombreSiSi CA < 1000 CA < 1000

Alors Alors Remise Remise CA * 0,05 CA * 0,05 Sinon Sinon Remise Remise CA * 0,1 CA * 0,1

Fin siFin si(* calcul du montant à payer et affichage du résultat *)(* calcul du montant à payer et affichage du résultat *)Montant Montant CA – Remise CA – RemiseAfficher « Le montant à payer est de »,Montant, « euros. »Afficher « Le montant à payer est de »,Montant, « euros. »

Fin Fin

Page 23: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Quel est la raison sociale de l’entreprise ?

La Mie Câline

Combien de baguettes désirez-vous commander ?

2500

Le montant à payer est de 1125 euros.

Valeur saisiepar l’utilisateur

Page 24: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Remis

e

125

Monta

nt

1125

CA

1250

Raiso

n

La Mie

Câline

Nombr

e

2500

Prix

0.5

CA CA CA > 1000 ?CA > 1000 ? Remise Remise MontantMontant

2500 x 0,5 = 2500 x 0,5 = 12501250

VraiVrai 1250 x 0,1 = 1250 x 0,1 = 125125

1250 – 125 = 1250 – 125 = 11251125

Page 25: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Les structures alternatives, Les structures alternatives, conditionnelles, de choixconditionnelles, de choix

La structure conditionnelleLa structure conditionnelle

SISI condition vérifiéecondition vérifiée

AlorsAlors actionaction

FIN SIFIN SI

suite algorithmesuite algorithme

Condition

vérifiée

Oui

Non Action 1

Page 26: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple : Une centrale de cuisson (Exemple : La mie Une centrale de cuisson (Exemple : La mie

Câline) commande des baguettes surgelées à Câline) commande des baguettes surgelées à un fabricant. Celui-ci accorde des remises en un fabricant. Celui-ci accorde des remises en fonction du chiffre d’affaires réalisé. Le taux de fonction du chiffre d’affaires réalisé. Le taux de remise est de 10 % remise est de 10 % uniquementuniquement au-delà de 1000 au-delà de 1000 euros de CA.euros de CA.

Écrire un algorithme qui :Écrire un algorithme qui : Demandera à l’utilisateur sa raison sociale et le Demandera à l’utilisateur sa raison sociale et le

nombre de baguettes qu’il désire commander ;nombre de baguettes qu’il désire commander ; Calculera le chiffre d’affaires réalisé ;Calculera le chiffre d’affaires réalisé ; Calculera le montant de la remise ;Calculera le montant de la remise ; Et affichera les résultats.Et affichera les résultats.

Page 27: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme Algorithme prix_du_pain prix_du_painVariablesVariables Raison Raison : Chaîne de caractères : Chaîne de caractères (* raison (* raison sociale de l’ent. *)sociale de l’ent. *) NombreNombre : Entier: Entier (*nombre de baguettes (*nombre de baguettes commandées *)commandées *) CA CA : Réel: Réel (* chiffre d’affaires réalisé (* chiffre d’affaires réalisé *)*)

RemiseRemise : Réel: Réel (* montant de la remise *)(* montant de la remise *)Montant Montant : Réel: Réel (* montant à payer *)(* montant à payer *)

ConstantesConstantesPrix = 0,5Prix = 0,5 (* prix de la baguette *)(* prix de la baguette *)

DébutDébut(* saisie des informations concernant la commande *)(* saisie des informations concernant la commande *)Afficher « Quelle est la raison sociale de l’entreprise ? »Afficher « Quelle est la raison sociale de l’entreprise ? »Saisir RaisonSaisir RaisonAfficher « Combien de baguettes désirez vous commander ? »Afficher « Combien de baguettes désirez vous commander ? »Saisir NombreSaisir Nombre(* calcul du chiffre d’affaires et de la remise accordée *)(* calcul du chiffre d’affaires et de la remise accordée *)CA CA Prix * Nombre Prix * NombreRemise Remise 0 (* initialisation de la remise à zéro *) 0 (* initialisation de la remise à zéro *)SiSi CA > 1000 CA > 1000

Alors Alors Remise Remise CA * 0,1 CA * 0,1Fin siFin si(* calcul du montant à payer et affichage du résultat *)(* calcul du montant à payer et affichage du résultat *)Montant Montant CA – Remise CA – RemiseAfficher « Le montant à payer est de »,Montant, « euros. »Afficher « Le montant à payer est de »,Montant, « euros. »

Fin Fin

Page 28: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Quel est la raison sociale de l’entreprise ?

La Mie Câline

Combien de baguettes désirez-vous commander ?

1500

Le montant à payer est de 750 euros.

Valeur saisiepar l’utilisateur

Page 29: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Remis

e

0

Monta

nt

750

CA

750

CA CA CA > 1000 ?CA > 1000 ? Remise Remise MontantMontant

1500 x 0,5 = 1500 x 0,5 = 750750

FauxFaux 00 750 – 0 = 750 – 0 = 750750

Raiso

n

La Mie

Câline

Nombr

e

1500

Prix

0.5

Remis

e

0

Page 30: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple : Une centrale de cuisson (Exemple : La mie Une centrale de cuisson (Exemple : La mie

Câline) commande des baguettes surgelées à un Câline) commande des baguettes surgelées à un fabricant. Celui-ci accorde des remises en fabricant. Celui-ci accorde des remises en fonction du chiffre d’affaires réalisé. Le taux de fonction du chiffre d’affaires réalisé. Le taux de remise est de 5 % au-delà de 1000 euros de CA, 7 remise est de 5 % au-delà de 1000 euros de CA, 7 % au-delà de 2000 € et de 10 % au-delà de 3000 % au-delà de 2000 € et de 10 % au-delà de 3000 €.€.

Écrire un algorithme qui :Écrire un algorithme qui : Demandera à l’utilisateur sa raison sociale et le Demandera à l’utilisateur sa raison sociale et le

nombre de baguettes qu’il désire commander ;nombre de baguettes qu’il désire commander ; Calculera le chiffre d’affaires réalisé ;Calculera le chiffre d’affaires réalisé ; Calculera le montant de la remise ;Calculera le montant de la remise ; Et affichera les résultats.Et affichera les résultats.

Page 31: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme Algorithme prix_du_pain prix_du_painVariablesVariables ……ConstantesConstantes

……DébutDébut

(* saisie des informations concernant la commande *)(* saisie des informations concernant la commande *)……(* calcul du chiffre d’affaires et de la remise accordée *)(* calcul du chiffre d’affaires et de la remise accordée *)CA CA Prix * Nombre Prix * NombreRemise Remise 0 (* initialisation de la remise à zéro *) 0 (* initialisation de la remise à zéro *)Si CA < 1000Si CA < 1000

Alors Alors Remise Remise 0 0Sinon Si CA < 2000Sinon Si CA < 2000

Alors Remise Alors Remise CA * 0,05 CA * 0,05Sinon Si CA < 3000Sinon Si CA < 3000

Alors Remise Alors Remise CA * 0,07 CA * 0,07Sinon Remise Sinon Remise CA * 0,1 CA * 0,1

FinsiFinsiFinsiFinsi

Fin siFin si(* calcul du montant à payer et affichage du résultat *)(* calcul du montant à payer et affichage du résultat *)……

Fin Fin

Page 32: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Quel est la raison sociale de l’entreprise ?

La Mie Câline

Combien de baguettes désirez-vous commander ?

2500

Le montant à payer est de 1188 euros.

Valeur saisiepar l’utilisateur

Page 33: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Remis

e

62

Monta

nt

1188

CA

1250

CA CA CA < 1000 CA < 1000 ??

CA < 2000 CA < 2000 ??

Remise Remise MontantMontant

2500 x 0,5 2500 x 0,5 = 1250= 1250

FauxFaux vraivrai 1250 x 5 1250 x 5 % = 62% = 62

1250 – 1250 – 62 = 62 = 11881188

Raiso

n

La Mie

Câline

Nombr

e

2500

Prix

0.5

Remis

e

0

Page 34: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

La structure de choixLa structure de choix

SelonSelon Variable Variable FaireFaire

Valeur 1Valeur 1 : action1 : action1

Valeur 2Valeur 2 : action2 : action2

……

Valeur n : action nValeur n : action n

SinonSinon : action par défaut : action par défaut Fin selonFin selon

La variable doit être de type caractère ou

entier

Page 35: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :Un distributeur automatique distribue des confiseries. Un distributeur automatique distribue des confiseries. L’utilisateur tape le code de la confiserie désirée, en L’utilisateur tape le code de la confiserie désirée, en fonction de ce code le distributeur affiche le prix du produit fonction de ce code le distributeur affiche le prix du produit et le délivre.et le délivre.

•Les produits A, B et C coûtent Les produits A, B et C coûtent 1 €,1 €,•Le produit D coûte 1,20 €,Le produit D coûte 1,20 €,•Le produit E, F coûte 1,50 €,Le produit E, F coûte 1,50 €,•Les produits G,H, I coûtent 2 €,Les produits G,H, I coûtent 2 €,•Si un autre code est saisi, le Si un autre code est saisi, le prix sera de 0 et un message prix sera de 0 et un message d’erreur sera affiché.d’erreur sera affiché.

Écrire un algorithme qui :Écrire un algorithme qui :• Demandera à l’utilisateur le Demandera à l’utilisateur le

code de la confiserie code de la confiserie désirée ;désirée ;

• Déterminera le prix de celle-Déterminera le prix de celle-ci en fonction du code saisi ;ci en fonction du code saisi ;

• Et affichera le prix de la Et affichera le prix de la confiserie.confiserie.

Page 36: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme Algorithme distributeur distributeurVariablesVariables

CodeCode : Caractère: Caractère (* code du produit désiré *)(* code du produit désiré *) Prix Prix : Réel: Réel (* prix du produit désiré *)(* prix du produit désiré *)DébutDébut

(* saisie du code du produit désiré *)(* saisie du code du produit désiré *)Afficher « Saisir votre code : »Afficher « Saisir votre code : »Saisir CodeSaisir Code(* détermination du prix en fonction du code *)(* détermination du prix en fonction du code *)SELON Code FAIRESELON Code FAIRE

A, B : Prix A, B : Prix 1 1 D : Prix D : Prix 1,2 1,2E, F : Prix E, F : Prix 1,5 1,5G, H, I : Prix G, H, I : Prix 2 2Sinon : Prix Sinon : Prix 0 0

FINSELONFINSELON(* Affichage du prix si aucune erreur de saisie n’a été commise (* Affichage du prix si aucune erreur de saisie n’a été commise

*)*)SI prix = 0 SI prix = 0

ALORS Afficher « Le code n’existe pas. »ALORS Afficher « Le code n’existe pas. »SINON Afficher « Le prix du produit désiré est de », Prix, SINON Afficher « Le prix du produit désiré est de », Prix, « euros. »« euros. »

FINSIFINSIFin Fin

Page 37: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Saisir votre code :

F

Le prix du produit désiré est de 1,5 euros.

Valeur saisiepar l’utilisateur

Page 38: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Code

F

Prix

1,5

Code = « F » doncCode = « F » donc

Prix Prix 1,5 1,5

Page 39: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

La structure Pour … Fin Pour

Permet de répéter un nombre déterminé de fois une (ou plusieurs) action(s).

Pour compteur allant de 1 à n Faire action 1

action 2…action n

Finpour

La structure répétitive

Permet de compter le nombre de répétition de l’action. La variable compteur sera de type entier ou caractère.Lorsque le nombre voulu de répétition est atteint, l'algorithme se poursuit après la boucle (structure).

Page 40: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :

Un boulanger désire préparer son tarif Un boulanger désire préparer son tarif pour la vente de ses croissants. Sur pour la vente de ses croissants. Sur l’ordinateur il désire automatiser le l’ordinateur il désire automatiser le calcul du prix de ses croissants. Il calcul du prix de ses croissants. Il suppose que ses clients achèteront entre suppose que ses clients achèteront entre 1 et 10 croissants.1 et 10 croissants.

Écrire un algorithme Écrire un algorithme qui :qui :Automatisera le calcul Automatisera le calcul du prix de 1, puis 2, du prix de 1, puis 2, puis 3, … puis 10 puis 3, … puis 10 croissants sachant que croissants sachant que le prix unitaire est de le prix unitaire est de 0,80 euros.0,80 euros.

Page 41: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

AlgorithmeAlgorithme Prix_des_croissants Prix_des_croissantsVariablesVariables

Compteur Compteur : entier : entier (* permet de compter de 1 à (* permet de compter de 1 à 10 *)10 *)Montant Montant : réel: réel (* montant à payer lors de (* montant à payer lors de l’achat de l’achat de croissants *)croissants *)

DébutDébutAfficher « Tarif des croissants : »Afficher « Tarif des croissants : »POUR Compteur allant de 1 à 10 fairePOUR Compteur allant de 1 à 10 faire

Montant Montant Compteur * 0,80 Compteur * 0,80SI Compteur = 1SI Compteur = 1

ALORS Afficher Compteur , « croissant ALORS Afficher Compteur , « croissant coûte », coûte », Montant, « € »Montant, « € »

SINON Afficher Compteur, « croissants SINON Afficher Compteur, « croissants

coûtent  »,Montant, « € »coûtent  »,Montant, « € »FINSIFINSI

FINPOURFINPOURFinFin

Page 42: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Tarif des croissants :

1 croissant coûte 0,80 €

2 croissants coûtent 1,60 €

3 croissants coûtent 2,40 €

4 croissants coûtent 3,20 €

5 croissants coûtent 4,00 €

6 croissants coûtent 4,80 €

7 croissants coûtent 5,60 €

8 croissants coûtent 6,40 €

9 croissants coûtent 7,20 €

10 croissants coûtent 8,00 €

Page 43: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Compteu

r Monta

nt

Compteur Compteur 1 A 20 1 A 20

Prix Prix Compteur * Compteur * 0,800,80

109

87

65

43

21 0,8

0

1,60

2,40

3,20

4,00

4,80

5,60

6,40

7,20

8,00

Page 44: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

La structure La structure Tant que… Fin Tant queTant que… Fin Tant que

Permet la répétition d'une (ou plusieurs) action(s) Permet la répétition d'une (ou plusieurs) action(s) tant qu'une condition est satisfaite.tant qu'une condition est satisfaite.

Notation :Notation :

Tant que condition FaireTant que condition Faire

action 1 action 1

action 2 action 2

……

action naction n Fin Tant QueFin Tant Que

Les structures itérativesLes structures itératives

Teste si la condition est vérifiée . Si c'est le cas il y a exécution des actions.

Dans le cas contraire l'algorithme se poursuit après la boucle (structure).

Page 45: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :

Un boulanger (vendant exclusivement des baguettes) Un boulanger (vendant exclusivement des baguettes) désire gérer toutes ses ventes sur ordinateur. Chacun désire gérer toutes ses ventes sur ordinateur. Chacun de ses clients achète 1 ou plusieurs baguettes. de ses clients achète 1 ou plusieurs baguettes. Le boulanger peut ne pas avoir de clients dans la Le boulanger peut ne pas avoir de clients dans la journée…journée…L’ordinateur calcule pour chaque client le montant à L’ordinateur calcule pour chaque client le montant à payer.payer.

Écrire un algorithme Écrire un algorithme qui :qui :• demandera si un demandera si un nouveau client est nouveau client est présent,présent,• puis, automatisera le puis, automatisera le calcul du montant à calcul du montant à payer par client.payer par client.

Page 46: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme gestion_boulangerieAlgorithme gestion_boulangerieVariablesVariables

Rep Rep : Caractère (* réponse à la question : Caractère (* réponse à la question présence d’un client *)présence d’un client *)

BagBag : Entier: Entier (* nombre de baguettes achetées (* nombre de baguettes achetées par le client *)par le client *)

Montant : RéelMontant : Réel (* montant à payer par un client *) (* montant à payer par un client *)ConstantesConstantes

Prix = 0,60Prix = 0,60DébutDébut

(* traitement des clients *)(* traitement des clients *) Afficher « Y a-t-il un client ? (O/N) »Afficher « Y a-t-il un client ? (O/N) » Saisir RepSaisir Rep Tant que Rep = « O » FaireTant que Rep = « O » Faire Afficher « Combien de baguettes désirez-vous ? »Afficher « Combien de baguettes désirez-vous ? » Saisir BagSaisir Bag Montant Montant Bag * Prix Bag * Prix Afficher « Cela vous fera », Montant,  « euros »Afficher « Cela vous fera », Montant,  « euros »

Afficher « Y a-t-il un autre client ? (O/N) »Afficher « Y a-t-il un autre client ? (O/N) » Saisir RepSaisir Rep Fin Tant queFin Tant que

Afficher « Fin du programme. »Afficher « Fin du programme. »FinFin

Page 47: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Y a-t-il un client (O/N) ?

O

Combien de baguettes désirez vous ?

3

Cela vous fera 1,80 euros.

Y a-t-il un autre client (O/N) ?

N

Fin du programme.

Valeur saisiepar l’utilisateur

Page 48: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?Saisir Rep

Rep = “O”

VRAI

FAUX

Sortie de la boucle

Traitement

Saisir Rep

Page 49: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

La structure La structure Répéter Jusqu’àRépéter Jusqu’à

Permet la répétition d'une (ou plusieurs) Permet la répétition d'une (ou plusieurs) action(s) jusqu’à la satisfaction d’une condition.action(s) jusqu’à la satisfaction d’une condition.

Notation :Notation :

RépéterRépéter

action 1 action 1

action 2 action 2

……

action naction n

Jusqu’à ConditionJusqu’à Condition Suite du traitementSuite du traitement

Teste si la condition est vérifiée . Si ce n’est pas le cas il y a exécution des actions.

Quand la condition est vérifiée l'algorithme se poursuit après la boucle (structure).

Page 50: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Exemple :Exemple :

Un boulanger (vendant exclusivement des baguettes) Un boulanger (vendant exclusivement des baguettes) désire gérer toutes ses ventes sur ordinateur. Chacun désire gérer toutes ses ventes sur ordinateur. Chacun de ses clients achète 1 ou plusieurs baguettes. de ses clients achète 1 ou plusieurs baguettes. Le boulanger aura obligatoirement un client dans la Le boulanger aura obligatoirement un client dans la journée.journée.L’ordinateur calcule pour chaque client le montant à L’ordinateur calcule pour chaque client le montant à payer.payer.

Écrire un algorithme Écrire un algorithme qui :qui :• demandera si un demandera si un nouveau client est nouveau client est présent,présent,• puis, automatisera le puis, automatisera le calcul du montant à calcul du montant à payer par client.payer par client.

Page 51: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Algorithme gestion_boulangerieAlgorithme gestion_boulangerieVariablesVariables

Rep Rep : Caractère (* réponse à la question : Caractère (* réponse à la question présence d’un client *)présence d’un client *)

BagBag : Entier: Entier (* nombre de baguettes achetées (* nombre de baguettes achetées par le client *)par le client *)

Montant : RéelMontant : Réel (* montant à payer par un client (* montant à payer par un client *)*)ConstantesConstantes

Prix = 0,60Prix = 0,60DébutDébut

(* traitement des clients *)(* traitement des clients *) RépéterRépéter Afficher « Combien de baguettes désirez-Afficher « Combien de baguettes désirez-vous ? »vous ? » Saisir BagSaisir Bag Montant Montant Bag * Prix Bag * Prix Afficher « Cela vous fera », Montant,  « euros »Afficher « Cela vous fera », Montant,  « euros »

Afficher « Y a-t-il un autre client ? (O/N) »Afficher « Y a-t-il un autre client ? (O/N) » Saisir RepSaisir Rep Jusqu’à Rep = « N »Jusqu’à Rep = « N »

Afficher « Fin du programme. »Afficher « Fin du programme. »FinFin

Page 52: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il sur l’écran de Que se passe-t-il sur l’écran de l’ordinateur à l’exécution de l’ordinateur à l’exécution de

l’algorithme ?l’algorithme ?Combien de baguettes désirez vous ?

3

Cela vous fera 1,80 euros.

Y a-t-il un autre client (O/N) ?

N

Fin du programme.

Valeur saisiepar l’utilisateur

Page 53: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Que se passe-t-il « dans Que se passe-t-il « dans l’ordinateur » à l’exécution de l’ordinateur » à l’exécution de

l’algorithme ?l’algorithme ?

Rep = “N”

VRAI

FAUX

Sortie de la boucle

Traitement

Saisir Rep

Page 54: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Rep = “O”

FAUX

VRAI

Sortie de la boucle

Traitement

Saisir Rep

Saisir Rep

Rep = “O”

VRAI

FAUX

Sortie de la boucle

Traitement

Saisir Rep

Page 55: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Conseil pour réussir un Conseil pour réussir un algorithme…algorithme…

Il faut être méthodique et rigoureux. Il faut être méthodique et rigoureux.

En effet, chaque fois qu’on écrit une En effet, chaque fois qu’on écrit une série d’instructions qu’on croit justes, série d’instructions qu’on croit justes, il faut systématiquement se mettre il faut systématiquement se mettre mentalement à la place de la machine mentalement à la place de la machine qui va les exécuter, armé d'un papier qui va les exécuter, armé d'un papier et d'un crayon, afin de vérifier si le et d'un crayon, afin de vérifier si le résultat obtenu est bien celui que l’on résultat obtenu est bien celui que l’on voulait. voulait.

Cette opération est indispensable, si Cette opération est indispensable, si l’on ne veut pas écrire à l’aveuglette.l’on ne veut pas écrire à l’aveuglette.

Page 56: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

Évitez Évitez d’emplod’employer la yer la

méthodméthode e

ShadokShadok

Page 57: Les bases de lAlgorithmique. Qu'est-ce qu'un algorithme ? Le mot « algorithme » vient du nom du grand mathématicien persan Al Khwarizmi (vers l'an 820),

À À vous vous dede

jouer jouer !!