16
Introdution Notions de base sur l’algorithmique Les instructions Chapitre 1 Introduction ` a l’algorithmique Module 13: Informatique 2: Algorithmique I 1` ere ANNEE LICENCE D’ENSEIGNEMENT DE MATHEMATIQUES (LEM) & 1` ere ANNEE LICENCE CRYPTO MATHEMATIQUE ET SECURITE DE L’INFORMATION (LCMSI) Texte Texte [email protected] 17 d´ ecembre 2016 Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 1/ 16

Chap1 introduction à l'algoritmique

Embed Size (px)

Citation preview

IntrodutionNotions de base sur l’algorithmique

Les instructions

Chapitre 1Introduction a l’algorithmique

Module 13: Informatique 2: Algorithmique I

1ere ANNEE LICENCE D’ENSEIGNEMENT DE MATHEMATIQUES (LEM)

&1ere ANNEE LICENCE CRYPTO MATHEMATIQUE ET SECURITE DE L’INFORMATION (LCMSI)

TexteTexte

[email protected]

17 decembre 2016

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 1/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Plan

1 Introdution

2 Notions de base sur l’algorithmiqueDefinition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

3 Les instructionsLes operations d’entree/sortie et l’affectationLes testsLes boucles

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 2/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Introduction

Exercice

Vous avez achete un nouveau ordinateur portable, decrire les etapesa suivre pour installer cet appareil a partir du moment ou vous ledeballez jusqu’au se connecter a l’internet.

⇒Solution

L’objectif : se connecter a l’internet

Objectif ⇔ probleme a resoudre

Hypothese : On suppose que l’ordinateur portable deja installe(contient un systeme d’exploitation)

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 3/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Introduction

Les etapes

1 Deballer l’ordinateur

2 Mettre l’ordinateur sous tension

3 Allumer l’ordinateur4 Avoir un abonnement avec un fournisseur d’acces a l’internet

(operateur de telecom). Au maroc on a trois possibilites :

IAM (ADSL,3G, 4G ?)Meditel (3G,4G ?)Inwi (3G,4G ?)

5 Installer le kit (brancher, configurer,...)

6 Cliquer sur un navigateur web(chrome, mozilla, opera,....)

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 4/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Introduction

Pour atteindre l’objectif de cet exercice, l’utilisateur doitexecuter ces actions dans l’ordre (chaque etape de 1→6 estune action).

Si les actions sont executees correctement et par ordre on ditqu’il s’agit d’un algorithme (meme s’elles ne sont pasexecutees correctement il s’agit toujours d’un algorithme).

Remarques1 La solution proposee dans l’exercice 1 n’est pas unique. Cela veut dire que

l’algorithme d’un probleme donne n’est pas unique. Par exemple dans l’action 4,il suffit de changer l’operateur ou le type de connexion.

2 Chaque etape peut avoir des sous-actions. Par exemple dans l’action 4 on a :

1 Aller a l’agence2 Voir les offres3 chosir un offre4 payer+signer le contrat.

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 5/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Definition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

Qu’est-ce qu’un algorithme

Definition

Un algorithme est une suite finie des etapes (actions,instructions) a appliquer dans un ordre determine a un nombrefini de donnees pour arriver, a un certain resultat, et celaindependamment des donnees.

Un algorithme est l’ensemble de regles operatoires dontl’application permet de resoudre un probleme donne.

Le mot algorithme vient de la transcription latiniseed’Al-Kwharizmi, nom d’un celebre mathematicien arabe, et dumot grec arithmos qui signifie nombre.

⇒Les proprietes d’un bon algorithme .

CorrectPrecisOptimale ( temps d’execution et occupation de la memoire)

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 6/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Definition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

Des exemples

Dans note vie quotidienne de nombreux algorithmes sont executeschaque instant, a titre d’exemple nous citons :

Une recette de cuisine est un algorithme. Elle en contient leselements constitutifs :

des entrees (les ingredients, le materiel utilise)des instructions elementaires simples, dont l’execution ameneau resultat vouluun resultat : le plat prepare.

En sport, l’execution de sequences repondant a des finalitesd’attaque, de defense, de progression, correspond a desalgorithmes.

Demande d’emploi

Le guide d’installation d’un appareil ou un logiciel

Indiquer le chemin a un touriste egare.

etc.Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 7/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Definition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

Des exemples

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 8/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Definition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

Des exemples en informatique

Dans le programme officiel de l’informatique, nous traitons desalgorithmes relatifs aux differents matieres : maths, physique,chimie, SI. A titre d’exemple nous citons :

Le probleme de somme : on se donne un entier naturel n.Comment calculer la somme 1+2+3+....+n ?

Le probleme du tri : on se donne n nombres. Comment lestrier dans l’ordre croissant ?

Le probleme de l’exponentiation : on se donne n un nombreentier naturel et x un « nombre ». Comment calculer xn ?

Comment resoudre une equation du type f(x) = 0 ?

Comment calculer une integrale ?

Comment « resoudre » une equation differentielle ?

Comment resoudre un systeme lineaire ?

Etc.

.Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 9/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Definition d’un algorithmeQuelques exemples d’algorithmesAlgorithme vs Algorithmique

Algorithme vs Algorithmique

L’algorithmique est un ensemble de techniques qui permettentd’elaborer un algorithme. Parmi ces techniques on trouve :

Analyse

Conception

Decomposition

Etc.

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 10/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les operations d’entree/Sortie et l’affectation

Exercice 2

Trouver la somme de deux nombres entiers A=1 et B=2 meme chosepour A=2334 et B=35263 ? Vous remarquez quoi ?

Probleme : calculer la somme de deux entiers a et b.

Cas N◦1 : Pour a=1 et b=1 on obtient s=3Cas N◦2 : Pour a=2334, b=35263 on obtient s= ?

Commentaire : Le cerveau humain est capable de calculer leresultat de la somme de deux entiers, mais son problemereside dans le temps d’execution pour effectuer cetteoperation. Pour remedier a ce probleme on utilise l’ordinateurpour profiter de la vitesse du microprocesseur.

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 11/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les operations d’entree/Sortie et l’affectation

Algorithme

1

2

3

4

conclusion

Dans cet exercice, on peut degager deux ordres qu’il fautdonner au microprocesseur. Il s’agit de :

1 Les operations d’entree/ sortie (entrer et afficher)2 L’affectation (formules de calculs).

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 12/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les tests

Exercice 3

Soient A et B deux nombre reels, resoudre l’equation du premierdegre : A*X +B =0 dans les cas suivants :

Cas N◦1 :A=1 , B=2,

Cas N◦2 A=333, B=234,

Cas N◦3 A=0, B=0

Cas N◦4 dans le cas general

Probleme : resoudre l’equation ax+b=0 avec a, b ∈ R.Cas N◦1 : a=1, b=2, x=-2Cas N◦1 : a=333, b=234, x= ?

Commentaire :Pour cet exercice, on a la meme remarqueque l’exercice 1, toujours le meme inconvenient conernant letemps de calcul necessaire pour l’etre humain afin de resoudrecette equation.

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 13/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les tests

Algorithme

1

2

3

4

5

6

conclusion

Dans cet exercice, on peut degager le troisieme ordre qu’ilfaut donner au microprocesseur, il s’agit de tests.

En effet, le microprocesseur est capable d’effectuer desoperations logiques via l’UAL (unite arithmetique et logique)

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 14/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les boucles

Exercice 2

Soient a, b ∈ R. et n ∈ N, calculer la valeur de (A + B)n dans lescas suivants :

Cas N◦1 :A=1 , B=1, n=0

Cas N◦2 : A=2, B=0, n=10

Cas N◦3 : A=133 , B=331 , n=31

Probleme : calculer la valeur de (A + B)n

Question : Est ce que le microprocesseur peut calculer les operations suivantes ?

5 + 14 →

15 ∗ 33 →

(5 + 4) ∗ (14− 3) →

210 →

(5 + 14)5 →

(a+b)n =

8><>:1 si n = 0 et a + b 6= 0

................................. si .......

................................. si ....

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 15/ 16

IntrodutionNotions de base sur l’algorithmique

Les instructions

Les operations d’entree/sortie et l’affectationLes testsLes boucles

Les boucles

Algorithme

1

2

3

4

5

6

7

8

conclusion

Dans cet exercice, on peut degager le dernier ordre qu’il fautdonner au microprocesseur. Il s’agit de repetition (boucles).

Module 13: Informatique 2: Algorithmique I ENS Casablanca 2016-2017 16/ 16