Initiation à la programmation et algorithmique

48
Introduction à la programmation et algorithmique BTS IRIS 1ère année 1

description

Initiation à la programmation et algorithmique. Introduction. Qu’est ce qu’un ordinateur : une machine totalement dénuée d'intelligence capable d’effectuer un grand nombre de tâches Exécute très rapidement et sans erreurs les ordres qu'on lui donne. Qu’est-ce qu’un programme ?. - PowerPoint PPT Presentation

Transcript of Initiation à la programmation et algorithmique

Page 1: Initiation à la programmation et algorithmique

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année1

Page 2: Initiation à la programmation et algorithmique

IntroductionQu’est ce qu’un ordinateur :

une machine totalement dénuée d'intelligencecapable d’effectuer un grand nombre de tâches

Exécute très rapidement et sans erreurs sans erreurs les ordres qu'on lui donne

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année2

Page 3: Initiation à la programmation et algorithmique

Qu’est-ce qu’un programme ?Assemblage et enchaînement

d’instructions élémentaires Écrit dans un langage de

programmationExécuté par un ordinateur afin de

traiter les données d’un problème et renvoyer un ou plusieurs résultats

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année3

Page 4: Initiation à la programmation et algorithmique

Environnement de programmationProgramme s’écrit dans un fichier texte

On écrit les commandes les unes à la suite des autres

Le compilateur vérifie la syntaxe du fichier texte

Avaancer au lieu de avancertraduit en langage machine (100101100101001011…)

Hélas, il ne détecte pas les bugs !!!Si on fonce dans le mur, il ne nous dit rien !

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année4

Page 5: Initiation à la programmation et algorithmique

Environnement de programmationEnvironnement de programmation dédié

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année5

Fichiersource compilateur

Fichiertraduit

Affichage des Erreurs

Page 6: Initiation à la programmation et algorithmique

ProgrammationUn programme est réalisé dans le but

d’effectuer un ensemble de traitements particuliers sur un ensemble de donnéesDéfinir sous quelle forme les données initiales

seront fournies à l’applicationDéfinir sous quelle forme les résultats seront

communiquésExpliciter les différentes actions à réaliser pour

réaliser cette tâche

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année6

Page 7: Initiation à la programmation et algorithmique

Données et traitementsDonnée : valeur stockée

variable ou constanteType

Traitement : opérations sur les données instructions

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année7

TraitementsDonnées initiales résultats

Page 8: Initiation à la programmation et algorithmique

Analyse du problèmeDécomposer la tâche Exemple simple : moyenne de 10 notes

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année8

CalculerMoyenne

Lire et stockerles données

notes

Afficher laDonnée

moyenne

saisie clavier

affichage écran

notes saisies

moyenne affichée

Additionner lesdonnées notes

et stockerdonnée somme

Diviser la donnéesomme par 10et stocker la

donnée moyenne

Page 9: Initiation à la programmation et algorithmique

Sous programmeSous-programme

Diviser pour mieux régnerIntérêts :

Programmer tâche par tâcheMeilleure lisibilité du codeÉconomie de codage et réutilisation

Inconvénients :Nécessite de réfléchir en blocs de

fonctionnalités

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année9

Page 10: Initiation à la programmation et algorithmique

Où on apprend réellement à programmer

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année10

Page 11: Initiation à la programmation et algorithmique

Algorithmique Un peu de vocabulaire…Un peu de vocabulaire…

AlgorithmeAlgorithme : enchaînement des actions : enchaînement des actions (instructions) nécessaires pour résoudre un (instructions) nécessaires pour résoudre un problèmeproblème

Différentes appellationsDifférentes appellations langage algorithmique langage algorithmique pseudo-langage de programmation pseudo-langage de programmation pseudo-code)pseudo-code)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année11

Page 12: Initiation à la programmation et algorithmique

Organisation d’un programme

PROGRAMME monProgr

/* Constantes: initialisation obligatoire */CONST const1 <- 10 : entier

const2 <- "bonjour!" : chaîne

// les variables au sens strictVAR varReel1, varReel2 : réels

varChaine : chaîne

DEBUTInstruction1Instruction2…FIN

déclarations

Corps du programme

Exemple d’un programme :

Page 13: Initiation à la programmation et algorithmique

Où on se rend compte qu’un ordinateur n’est qu’une succession de boites !

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année13

Page 14: Initiation à la programmation et algorithmique

Les donnéesDonnéesDonnées = ensemble des informations

manipulées par un programme

Les données d'un programme sont mémorisées en mémoire centrale dans des variablesvariables (sortes de cases)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année14

Page 15: Initiation à la programmation et algorithmique

Notion de variableUne variable possède :

une valeurvaleur contenue par la case mémoireun identificateuridentificateur : nom unique par lequel on

peut accéder à son contenuun typetype qui définit la taille de la place occupée

Ne pas confondre la variablevariable et son contenucontenuUne variable est un contenantcontenant (case ou boîte)Le contenu d'une variable est uneune valeurvaleur

numérique, alphanumérique…

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année15

Page 16: Initiation à la programmation et algorithmique

Variable

Une variable (VAR) est donc une « boite » dans laquelle on met une valeur (un nombre, un mot…) qui peux changer (si l’utilisateur modifie la valeur par exemple)

Les variables dont la valeur ne change pas au cours de l'exécution du programme sont appelées variables constantes (CONST)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année16

Page 17: Initiation à la programmation et algorithmique

Déclaration de variableDéclarer une variable :

réserver une place en mémoire attribuer l'identificateur à cette place

La déclaration indique :l’identificateurle type

Exemple : VAR maVar : réel

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année17

Page 18: Initiation à la programmation et algorithmique

Types (1)Type caractère

lettres, chiffres, ponctuation, code des opérations, espace, retour chariot,…

Exemples : ‘a’ ‘+’ ‘.’

Type chaîne de caractèresuites de caractèresExemples : « bonjour » « cac40 »

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année18

Page 19: Initiation à la programmation et algorithmique

Types (2)Type entier

les nombres entiersExemples : 3 45 133

Type réelles nombres réelsExemples : 3,14 37,7

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année19

Page 20: Initiation à la programmation et algorithmique

Types (3)Type booléen

que deux valeurs possiblessoit VRAI, soit FAUX

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année20

Page 21: Initiation à la programmation et algorithmique

Exemples de variables

Identificateur : XType : entierValeur : 25

Identificateur : YType : réelValeur : 3,7

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année21

Mémoire centrale(mémoire vive)

25X

3,7Y

Page 22: Initiation à la programmation et algorithmique

Où l’addition devient compliquée

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année22

Page 23: Initiation à la programmation et algorithmique

OpérateursLes opérations possibles sur les variables

dépendent de leur typeOn ne peux pas multiplier des mots…

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année23

Page 24: Initiation à la programmation et algorithmique

Réels opérations possibles

symbole ou mot clé

additionsoustractionmultiplicationDivisioncomparaisons

+-*/<, ≤, >, ≥, =, ≠

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année24

Page 25: Initiation à la programmation et algorithmique

Entiers

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année25

opérations possibles

symbole ou mot clé

additionsoustractionMultiplicationDivisionDivision entièreModulo Comparaisons

+-*/DIV MOD<, ≤, >, ≥, =, ≠

Page 26: Initiation à la programmation et algorithmique

Caractères

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année26

opérations possibles

symbole ou mot clé

comparaisons <, ≤, >, ≥, =, ≠(exemple ‘a’ < ‘z’)

Page 27: Initiation à la programmation et algorithmique

Chaînes

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année27

opérations possibles

symbole ou mot clé

ConcaténationLongueurExtraction

&Longueur (chaîne)Extraction (sous-ch, ch)

Page 28: Initiation à la programmation et algorithmique

Booléens

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année28

opérations possibles

symbole ou mot clé

comparaisonnégationconjonctiondisjonction

=, ≠NONETOU

Page 29: Initiation à la programmation et algorithmique

RappelPROGRAMME monProgr

/* Constantes: initialisation obligatoire */CONST const1 <- 10 : entier

const2 <- "bonjour!" : chaîne

// les variables au sens strictVAR varReel1, varReel2 : réels

varChaine : chaîne

DEBUT

Instruction1Instruction2…

FIN

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année29

déclarationsdéclarations

Corps du programmeCorps du programme

Page 30: Initiation à la programmation et algorithmique

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année30

Page 31: Initiation à la programmation et algorithmique

InstructionsInstruction = ordreordre que peut exécuter

l'ordinateurexécution d'un programme :

Échanges d'informations en mémoireCalculsAffichage des résultats

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année31

Page 32: Initiation à la programmation et algorithmique

InformationsLes informations manipulées par les

instructions peuvent prendre plusieurs formes:des variablesvariablesdes constantesconstantesdes valeurs littéralesvaleurs littérales ("bonjour", 45, VRAI)des expressionsexpressions complexes : combinaisons de

variables, constantes et valeurs littérales avec des opérateurs (2 * r * 3.14)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année32

Page 33: Initiation à la programmation et algorithmique

Les instructions élémentairesAffectationAffectation : le fait de donner une nouvelle

valeur à une variable (mettre un nombre dans une boite)

Saisir Saisir : Permet à l’ordinateur de récupérer ce que l’utilisateur tape au clavier

afficherafficher : Permet à l’ordinateur d’afficher sur l'écran ce qu’on veux (le résultat d’un calcul, une variable…)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année33

Page 34: Initiation à la programmation et algorithmique

L’ affectationSyntaxe :

Variable <- Valeur

Valeur évaluée à partir d’une expression : Variable (le contenu d’une autre boite…)Constante (une valeur fixe : PI…)valeur littérale (3 6 5.12…)expressions complexes (un calcul…)

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année34

Page 35: Initiation à la programmation et algorithmique

ExemplesX <- YX <- 25X <- 3,3C <- ‘a’maChaine <- «bonjour»B <- VRAIX <- 25 + Y + 3

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année35

Page 36: Initiation à la programmation et algorithmique

Différence avec le = mathématiquesQuand on dit qu'une variable prend pour

valeur une autre variable, ça ne veut pas dire qu'elles seront toujours égales !

Cela veut seulement dire que la première variable va prendre la valeur de la secondeLe contenu de la première boite sera le même

celui de la seconde boite…Mais si on modifie le contenu de la seconde

boite après, ça n’a pas d’impact sur le contenu de la première boite !

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année36

Page 37: Initiation à la programmation et algorithmique

Exemples Algo : x <- y différend de y <- xMaths : x = y équivaut à y = x

Algo : x + 12 <- y impossible !Maths : x + 12 = y a un sens

Algo : x <- x + 7 a un sensMaths : x = x + 7 impossible

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année37

Page 38: Initiation à la programmation et algorithmique

La saisieSyntaxe :

Saisir variable1 [,variableN]*Permet à un utilisateur de communiquer des

données au programmeAssigne une valeur entrée au clavier dans

une variableTant que l'utilisateur n'entre rien au clavier,

le déroulement du programme est stoppé

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année38

Page 39: Initiation à la programmation et algorithmique

Exemples

Saisir xSaisir x, ySaisir a, b, c, d, e, f

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année39

Page 40: Initiation à la programmation et algorithmique

Avantages Utiliser le même programme pour des

données différentesSans instruction de saisie (ou de lecture sur

un périphérique quelconque), un programme fournirait toujours le même résultat

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année40

Page 41: Initiation à la programmation et algorithmique

Pièges Saisir une valeur ne correspondant pas au

type de la variable où elle doit être stockéeEssayer de mettre un mot dans une variable de

type texteL’utilisateur peut penser que le programme

s’est arrêtéSi il n’y a rien d’affiché, l’utilisateur ne voit

qu’un curseur clignotant…

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année41

Page 42: Initiation à la programmation et algorithmique

L’affichageSyntaxe :

Afficher variable1 [, variableN]*

L'instruction d'affichage permet de fournir des résultats à l'utilisateur à travers l'écran

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année42

Page 43: Initiation à la programmation et algorithmique

ExemplesAfficher xAfficher «bonjour»Afficher x, y, zAfficher x + yAfficher «le résultat de x + y est : », x + y

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année43

On peut afficher plusieurs trucs à la suite grâce à la virgule !

Page 44: Initiation à la programmation et algorithmique

Avantages Permet de fournir un résultatPermet de guider l’utilisateurPermet d’afficher des valeurs intermédiairesPermet de débuguer

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année44

Page 45: Initiation à la programmation et algorithmique

Exemple completPROGRAMME bonjour

CONST bj <- «Bonjour» : chaînemr <- «Monsieur » : chaîne

VAR varNom, ch : chaîne

DEBUTAfficher «Quel est votre nom ?»Saisir varNom ch <- mr & varNomAfficher bj, ch FIN

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année45

Page 46: Initiation à la programmation et algorithmique

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année46

Page 47: Initiation à la programmation et algorithmique

Réaliser un algorithme : exprimer en pseudo-code les règles de traitement d’un problème pour le soumettre à un ordinateur (par un programme)

Les données d’un programme sont mémorisées dans des variables qui sont des cases mémoire

Les instructions permettent de manipuler et de déplacer une donnée d'un endroit à un autre de la mémoire

Introduction à la programmation et algorithmique

BTS IRIS 1ère

année47

Page 48: Initiation à la programmation et algorithmique

Une variable est un contenant, qui contient une et une seule valeur à un moment donné. Elle est caractérisée par un identificateur (son nom)une valeur (qui peut varier au cours du programme, sauf

pour les constantes)un type (qui détermine sa taille et les opérations

possibles)Les instructions de base sont :

l'affectation (permet de changer la valeur d'une variable) la saisie (permet d'assigner à une variable, une valeur

entrée au clavier) l'affichage (permet d'écrire le contenu d'une variable ou

d'une expression à l'écran)Introduction à la programmation et algorithmique

BTS IRIS 1ère

année48