Chapitre V. Algorithmique. École Na)onale Polytechnique 1 ère année Classes Préparatoires. Ma)ère Informa)que 1. Année 2020/2021

Dimension: px
Commencer à balayer dès la page:

Download "Chapitre V. Algorithmique. École Na)onale Polytechnique 1 ère année Classes Préparatoires. Ma)ère Informa)que 1. Année 2020/2021"

Transcription

1 École Na)onale Polytechnique 1 ère année Classes Préparatoires Année 2020/2021 Ma)ère Informa)que 1 Chapitre V Algorithmique Préparé et présenté par Dr. Meziane Tani I.

2 Plan Introduc)on à l algorithmique Structure d un Algorithme No)on de variable et de constante Séquence d instruc)ons Affecta)on Lecture/Écriture Structures alterna)ves Structure itéra)ves Les types complexes Tableaux Enregistrements Dr. Meziane-Tani I. 2

3 Introduc)on Ordinateur Matériel Logiciel - Composants matériels - Codage de l informa)on - Algèbre de Boole et circuits électroniques - Machine de Von Neumann - Algorithmique - Programma)on Dr. Meziane-Tani I. 3

4 Introduc)on Logiciel = Programmes + Données Un programme : une suite d instruc)ons exécutées dans un ordre donné par le processeur afin de produire un résultat. Un programme : le traitement automa)que (par une machine) d une tâche laborieuse si elle est exécutée par l être humain. Exemples : - un traitement répé))f, un gros calcul, un traitement long, Dr. Meziane-Tani I. 4

5 Introduc)on Un programme est écrit dans un langage de programma)on «compris» par l ordinateur. Le seul langage que comprend l ordinateur est le binaire. Cependant celui-ci n est pas très maniable par l être humain qui doit écrire les codes (le programmeur) => appari)on des langages évolués : Pascal, C, Fortran, C++, Java, etc. Les programmes écrits dans des langages évolués sont traduits (par l ordinateur lui même) vers le langage binaire afin d être exécutés par le processeur : la compilabon. Dr. Meziane-Tani I. 5

6 Introduc)on Énoncé du problème Spécifica-on Cahier des charges Algorithme Analyse Traduc-on PréparaBon du programme Programme (Codes sources) Compila-on Programme exécutable (suite de 0 et de 1) Étapes de réalisa-on d un programme Tests et modifica-ons Dr. Meziane-Tani I. 6

7 Algorithme Extrait du nom du mathéma)cien perse Al Khawarizmi. Algorithme : Ensemble de règles opératoires dont l'applica)on permet de résoudre un problème énoncé au moyen d'un nombre fini d'opérabons. [Larousse] L algorithme est écrit dans un langage facilement compris par l être humain => Décrit les étapes de résolu)on d un problème donné. Exemples : Mode d emploi pour faire fonc)onner une machine à laver. Receke de cuisine pour préparer un plat. I)néraire rou)er pour aller d une ville à une autre.... L Algorithmique fait référence à la science qui étudie les algorithmes. Dr. Meziane-Tani I. 7

8 Algorithme / Programme Algorithme Programme écrit en langage «C» Algorithme Puissance2 Variables x, y : en-ers Début Lire(x) y ç x * x Ecrire(y) Fin Traduc)on #include <stdio.h> #include <stdlib.h> int x, y; int main() { scanf( %d, &x); y = x * x; prin<( y=%d\n, y); return 0; } Avantage : L algorithme est plus compréhensible par un être humain. Dr. Meziane-Tani I. 8

9 Algorithme Le langage algorithmique doit se rapprocher le plus possible du langage humain. Il peut être écrit dans la langue de celui qui écrit l algorithme : français, anglais, arabe, chinois, etc. Le langage algorithmique doit tout de même respecter une certaine syntaxe pour faciliter la compréhension. Un algorithme n est pas un programme prêt à être exécuté par une machine. Il doit être traduit en un programme écrit dans un langage de programma)on. Un algorithme doit être écrit indépendamment du langage de programma)on dans lequel il sera traduit. Pour un même problème il peut exister plusieurs façon de formuler la solu)on, donc : plusieurs algorithmes. Dr. Meziane-Tani I. 9

10 Principales qualités d un algorithme Clair => Compréhensible par d autres personnes Correct => implémente correctement les tâches pour lesquelles il a été conçu. Complet => prend en considéra)on tous les cas possibles en donnant un résultat pour chaque cas. Efficace => Exécute sa tâche efficacement, c est-à-dire avec un coût minimal. Le coût pour un ordinateur se mesure en temps de calcul et d espace mémoire alloué pour le programme et ses données. Dr. Meziane-Tani I. 10

11 ReprésentaBon d un algorithme Deux façons de représenter un algorithme : Représenta)on graphique => Organigramme (n est plus très ublisée aujourd hui) Représenta)on textuelle => Pseudo-code Dr. Meziane-Tani I. 11

12 Pseudo-Code Représenta)on textuelle respectant une certaine syntaxe qui ressemble à un langage de programma)on, d où le nom «pseudocode». Plus pra)que pour écrire un algorithme. Dr. Meziane-Tani I. 12

13 Composants de base d un algorithme Certaines convenbons doivent être respectées pour écrire un algorithme, telles que : Nom : un algorithme doit porter un nom qui généralement décrit la fonc)on de l algorithme ou bien le problème qu il résout. Début et Fin : Délimiter le commencement et la fin de l algorithme par les mots clés : Début et Fin. Noms significabfs : il faut donner des noms significa)fs aux variables afin de rendre l algorithme plus compréhensible par d autres personnes. Commentaires : écrits dans la langue du programmeur, ils sont u)les pour expliquer les étapes de l algorithme. Dr. Meziane-Tani I. 13

14 Structure de base d un algorithme Algorithme Nom de l algorithme /* La parce déclaracons de l algorithme */ Commentaire Constantes // les constantes nécessitent d avoir une valeur dès leur déclara)on const1 ç 10 : en)er Variables // les variables proprement dites var2, var3 : réels Début /* corps de l algorithme */ /* instruc)ons */ Fin Dr. Meziane-Tani I. 14

15 Les variables Dr. Meziane-Tani I. 15

16 NoBon de variable (1/2) Dans un programme, une donnée peut être : Une donnée de départ : une entrée Un résultat intermédiaire obtenu par le programme en cours d exécu)on Résultat défini)f du programme : une sor)e. Pendant l exécu)on d un programme informa)que, chaque donnée doit être sauvegardée temporairement en mémoire centrale. L emplacement où sera stockée ceke donnée peut changer de valeur pendant l exécu)on du programme => l emplacement mémoire contenant une donnée : variable. Dr. Meziane-Tani I. 16

17 NoBon de variable (2/2) Les données manipulées par un programme peuvent être : des nombres (en)ers ou réels), des données logiques (vrai ou faux), des caractères, du texte (suite de caractères), etc. => Il faut réserver de l espace mémoire (nombre de bits) nécessaire au stockage de la variable : déclarabon de variable. Dr. Meziane-Tani I. 17

18 DéclaraBon de variable Avant d u)liser une variable, il faut d abord la déclarer dans la par)e déclara)on de l algorithme. Déclarer une variable consiste à donner : Nom de la variable : appelé aussi «iden)ficateur». Type de la variable : désigne la plage de valeurs que peut avoir la variable (en)er, réel, booléen, etc). Une valeur : n est pas obligatoire et peut se faire à l intérieur du corps de l algorithme. Dr. Meziane-Tani I. 18

19 DéclaraBon de variables Toute variable u)lisée dans un algorithme doit être déclarée avant son u)lisa)on. En pseudo-code : Exemples : Variables liste d iden-ficateurs : Type Variables i, j, k : encer x, y : réel OK : booléen Chaine1, Chaine2 : Chaîne de caractères Dr. Meziane-Tani I. 19

20 IdenBficateur de variables L iden)ficateur est le nom qu on donne à une variable. Conven)ons : 1. l iden)ficateur commence par une majuscule. Exemples : Nom, Prenom, Age, 2. Les symboles acceptées sont : Chiffres, lekres minuscules, majuscules, )retbas _. Exemples : Informa)que1, Informa)que_1 : corrects 3. Ne commence pas par un chiffre. Exemple : 1Informa)que : incorrect. 4. Éviter les caractère de ponctua)on et les espaces. Exemples : Informa)que 1, Informa)que-1, Informa)que&1 : Incorrects 5. Doit être différent des mots réservés. Exemples : En)er, Début, Variable, De longueur raisonnable. 7. Doit être significa)f et décrit la données manipulée. Dr. Meziane-Tani I. 20

21 Types de variables Le type d une variable détermine l ensemble de valeurs que peut prendre ceke variable ainsi que les opéra)ons correspondantes. Spécifier le type d une variable au moment de sa déclara)on est nécessaire afin de réserver de l espace mémoire pour son stockage. Exemples : En)er court : réserver 2 octets. Caractère : réserver 1 octet. Dr. Meziane-Tani I. 21

22 Types prédéfinies Type Valeur Exemples En)er Les en)ers et les en)ers rela)fs 17, -50, Réel Les réels 13.5, 0.5e3, Booléen Caractère Chaîne de caractères VRAI ou FAUX Les lekres, les chiffres et les symboles sont mis entre apostrophes Les chaînes de caractères sont mises entre guillemets a, B, 3, % Bonjour, Ceci est une chaîne Dr. Meziane-Tani I. 22

23 Les constantes Dr. Meziane-Tani I. 23

24 NoBon de constante Une constante est une variable dont la valeur ne change pas au cours de l exécu)on du programme, elle peut être : un nombre un caractère une chaine de caractères. Une constante doit toujours recevoir une valeur dès sa déclara)on. En pseudo-code : Constante iden-ficateur ç valeur : type Par conven)on, les noms de constantes sont écrits en majuscules Exemple : Pour calculer la surface des cercles, la valeur de pi est une constante mais le rayon est une variable. Constante PI ç 3.14 : réel Variable Rayon : réel Dr. Meziane-Tani I. 24

25 La séquence d instrucbons Dr. Meziane-Tani I. 25

26 Séquence d instrucbons Une instruc)on, appelée aussi «ac-on primi-ve» est une opéra)on de base du processeur, d un langage de programma)on ou bien du langage algorithmique. Les instruc)ons d un algorithme sont habituellement exécutées une à la suite de l autre, de haut en bas et de gauche à droite : elles forment une séquence d instruc)ons. L ordre d exécu)on des instruc)ons est important. Changer l ordre peut cause un dysfonc)onnement de l algorithme. Exemple : Lire(A) A ç A + 1; Ecrire(A) est différent de : Lire(A) Ecrire(A) A = A + 1; Dr. Meziane-Tani I. 26

27 Séquence d instrucbons En algorithmique, une instruc)on peut être : Une affecta)on Une instruc)on d entrée ou de sor)e Une structure alterna)ve Une structure itéra)ve Autres : appel d une fonc)on, Dr. Meziane-Tani I. 27

28 L affectabon Dr. Meziane-Tani I. 28

29 AffectaBon Soit «v» une variable et «E» une expression. Une affecta)on est une instruc)on dans laquelle le résultat de l expression E est affecté à la variable v. La syntaxe de l affecta)on est la suivante : v ç E Important : Le résultat de l expression E doit être du même type que la variable v. Dr. Meziane-Tani I. 29

30 AffectaBon L expression E peut être : Une constante du même type : v ç 12,5 Une variable du même type : v ç u Un ensemble de valeurs ou de variables du même type reliées entre elles par des opérateurs : v ç u+w Remarque : Une affectabon n est pas une équabon mathémabque Exemples : A ç A+1 (incrémenta)on) et A ç A-1 (décrémenta)on) ont un sens en programma)on contrairement aux équa)ons. A+1 ç 3 n est pas une affecta)on possible et ne vaut pas Aç 2. Dr. Meziane-Tani I. 30

31 Opérateurs En algorithmique, un opérateur est un symbole qui représente une opéra)on qui, selon le type des opérandes (variables), peut être : ArithméBque : retourne un résultat numérique Logique : retourne un résultat logique (vrai ou faux) De comparaison : retourne un résultat logique (vrai ou faux) Dr. Meziane-Tani I. 31

32 Opérateurs Type Opérateur Symbole Opérateurs ArithméBques Opérateurs de comparaison addi)on + soustrac)on - mul)plica)on * division / modulo % puissance Est égal = Est différent Est inférieur < Est supérieur > Est inférieur ou égal ^ Est supérieur ou égal Opérateurs logiques Autre Inverse Et Concaténa)on de chaînes de caractères NON Dr. Meziane-Tani I. 32 ET &

33 Quelques exemples OpéraBon ArithméBque : v ç => v vaut 20 OpéraBon de comparaison : v ç 6 > 8 => v (une variable booléenne) vaut faux car 6 n est pas supérieur à 8. OpéraBon logique : v ç (8 % 5 = 3) OU (5 > 10) => v vaut vrai car : 8%5 vaut 3 (8%5 = 3) vaut vrai (5 > 10) vaut faux (vrai OU faux) vaut vrai. Dr. Meziane-Tani I. 33

34 Règles d ublisabon des opérateurs L évalua)on d une expression se fait en tenant compte des priorités des opérateurs. Exemple : 2+5*4 vaut 22 Pour forcer les priorités, des parenthèses sont u)lisées. Exemple : (2+5)*4 vaut 28 Si les opérateurs ont la même priorité, l expression est évaluée de gauche à droite. Exemple : se calcule (2+5)+7 et vaut 14. Dr. Meziane-Tani I. 34

35 Priorités des opérateurs Ordre de priorité Opérateurs 1 () 2 ^ 3 * / % < > 6 = 7 NON 8 ET OU 9 ç Dr. Meziane-Tani I. 35

36 Exemple d exécubon d un algorithme Algorithme Affecta-ons Variables A, B, C: EnCer Début A 7 B 17 A B B A+5 C A+B Fin Déroulement de l algorithme : InstrucBon A B C A 7 7?? B ? A B 17 17? B A ? C A+B Résultats : A = 17 B = 22 C = 39 Dr. Meziane-Tani I. 36

37 Les entrées et sorbes Dr. Meziane-Tani I. 37

38 Les instrucbons d entrées/sorbes Les instruc)ons d entrées et de sor)es permekent à l humain de communiquer avec l ordinateur. Il existe deux types d instruc)ons d entrées/ sor)es : La lecture L écriture Dr. Meziane-Tani I. 38

39 Lecture La lecture est une instruc)on d entrée qui permet d introduire des données numériques ou textuelles au moyen d un clavier. En pseudo-code : Lire(x) L ordinateur enregistre la valeur entrée au clavier à l emplacement mémoire réservé à la variable «x». Il faut toujours déclarer une variable avant de lire sa valeur. A l exécu)on : En exécutant un programme, celui-ci s arrête lorsqu il rencontre une instruc)on de lecture jusqu à l introduc)on de la valeur suivi de l appui sur la touche «Entrée». Dr. Meziane-Tani I. 39

40 Écriture L écriture est une instruc)on de sor)e qui permet d afficher des résultats ou bien des messages à l écran. En pseudo-code : Ecrire(liste d expressions) ou Ecrire(expression 1, expression 2, expression 3, ) L ordinateur affiche à l écran la liste des expressions qui peuvent être : Des Variables : affiche les valeurs des variables. Des valeurs numériques : affiche des nombres Des chaînes de caractères: messages affichés à l u)lisateur pour communiquer avec lui. Exemples : Écrire(a) // Affiche la valeur de la variable a Écrire( La valeur de a est :, a) // affiche un message suivi de la valeur de a Écrire( La valeur de b est :, 2) // affiche un message suivi du nombre 2 Écrire( La valeur de b est :, a+2) // affiche un message suivi du résultat de a+2 Écrire( Veuillez introduire la valeur de x ) // affiche un message Dr. Meziane-Tani I. 40

41 Exemple Algorithme AfficherNomComplet A l exécu)on, ce qui est affiché à l écran : variables Nom, Prenom : chaîne de caractères Début Ecrire("entrez le nom") Lire(Nom) Ecrire("entrez le prénom") Lire(Prenom) Ecrire("Votre nom complet est : ", Nom,,Prenom) Fin entrez le nom Benarbi entrez le prénom Mohamed Votre nom complet est : Benarbi Mohamed Remarque : Benarbi et Mohamed sont des valeurs introduites au clavier. Dr. Meziane-Tani I. 41

42 Les structures alternabves Dr. Meziane-Tani I. 42

43 Structure alternabve Une structure alterna-ve, appelée aussi structure condi-onnelle est une structure algorithmique dans laquelle une suite d instruc)ons n est exécutée que si une condi)on est vérifiée. Une condi-on est une expression qui retourne une valeur booléenne. Exemple : (Delta > 0) Remarque : Dans le jargon informa)que, les structures condi)onnelles sont souvent appelées «Tests». Dr. Meziane-Tani I. 43

44 CondiBon composée Une condi)on peut être : Simple : Généralement une opéra)on de comparaison comportant un seul opérateur de comparaison (=,, <,, >, ). Exemple : Age supérieur à 30 : Age > 30. Composée : Une suite d expressions de comparaison reliées par des opérateurs logiques. Exemples : x compris entre 1 et 10 : (x 1) ET (x 10) n divisible par 2 ou 5 : (n % 2 = 0) OU (n % 5 = 0) Dr. Meziane-Tani I. 44

45 Types de structures alternabves 1. Alterna)ve simple Si alors... Finsi 2. Alterna)ve complète Si alors... Sinon... Finsi 3. Alterna)ve imbriquée Plusieurs «Si» imbriqués L instruc)on «Selon» Dr. Meziane-Tani I. 45

46 1. AlternaBve simple Si alors... Finsi Dr. Meziane-Tani I. 46

47 AlternaBve simple La structure algorithmique pour effectuer un test simple est la suivante : Si Condi-on alors /* Séquence d instruc-ons */ Finsi - Condi-on est une expression booléenne qui doit retourner un résultat VRAI ou FAUX. - La séquence d instruc)ons n est exécutée que si la Condi-on retourne un résultat VRAI. - Si Condi-on retourne un résultat FAUX, aucune instruc)on à l intérieur du test n est exécutée et on reprend l exécu)on de l algorithme après le Finsi. Dr. Meziane-Tani I. 47

48 Exemple Exemple : Écrire un algorithme qui permet de lire un en)er x puis de vérifier si sa valeur est posi)ve ou nulle. Dans ce cas afficher un message. Algorithme En-erPosi-f Variables x: EnCer Début Lire(x) Si x 0 alors Écrire( La valeur de x est posi-ve ou nulle ) Finsi Fin Dr. Meziane-Tani I. 48

49 2. AlternaBve complète Si alors... Sinon... Fin si Dr. Meziane-Tani I. 49

50 AlternaBve complète Pseudo-code : Si Condi-on alors /* Séquence d instruc-ons 1 */ Sinon /* Séquence d instruc-ons 2 */ Finsi - Condi-on est une expression booléenne qui doit retourner un résultat VRAI ou FAUX. - La «séquence d instruc)ons 1» est exécutée si la Condi-on retourne un résultat VRAI. - Si Condi-on retourne un résultat FAUX, la «séquence d instruc)ons 2» sera exécutée. Dr. Meziane-Tani I. 50

51 Exemple Exemple : Écrire un algorithme qui permet de lire un en)er x puis d afficher sa valeur absolue. Algorithme ValeurAbsolue Variables x: EnCer Début Lire(x) Si x 0 alors Écrire( La valeur absolue de x est :, x) Sinon /* x < 0 mais pas besoin de revérifier la condi-on */ Écrire( La valeur absolue de x est :, -x) Finsi Fin Dr. Meziane-Tani I. 51

52 3. AlternaBve imbriquée Dr. Meziane-Tani I. 52

53 AlternaBve imbriquée Il est possible d effectuer un test à l intérieur d un autre test : imbricabon. Le degré d imbrica)on n est pas limité mais doit tout de même être raisonnable. Pseudo-code : Si Condi-on 1 alors Si Condi-on 2 alors /* Séquence d instruc-ons 1 */ Sinon /* Séquence d instruc-ons 2 */ Finsi Sinon Si Condi-on 3 alors /* Séquence d instruc-ons 3 */ Sinon /* Séquence d instruc-ons 4 */ Finsi Finsi Dr. Meziane-Tani I. 53

54 Exemple Écrire un algorithme permekant de vérifier si un en)er «x» saisi au clavier est posi)f, nul ou bien néga)f. Afficher un message pour chaque cas. Algorithme Signe Variables x: EnCer Début Lire(x) Si x > 0 alors Écrire( Le nombre est posi-f ) Sinon Si x = 0 alors Écrire( Le nombre est nul ) sinon Écrire( Le nombre est néga-f ) Finsi Finsi Fin Dr. Meziane-Tani I. 54

55 L instrucbon «Selon FinSelon» Les tests imbriqués peuvent parfois être remplacés par l instruc)on Selon FinSelon. Ceci est possible lorsque les tests imbriqués effectuent la comparaison de la même variable avec plusieurs valeurs. Dr. Meziane-Tani I. 55

56 Selon FinSelon En Pseud-code : SELON Condi)on 1 : Ac)on 1 Condi)on 2 : Ac)on 2... Condi)on n : Ac)on n SINON : ac)on_sinon FINSELON 1. La condibon 1 est évaluée : Si la condi)on 1 est vraie, alors on exécute l'ac)on correspondante et on quike la structure selon. Si la condi)on 1 est fausse, on évalue la condi)on 2...et ainsi de suite. 2. Si aucune n'est vraie on effectue l'acbon sinon Remarque : l'ac)on sinon n est pas obligatoire. Si elle n'existe pas alors aucune ac)on n'est exécutée dans le cas où aucune condi)on n et vérifiée. Dr. Meziane-Tani I. 56

57 Exemple Résoudre l exemple précédent (le signe d un nombre introduit au clavier) en u)lisant l instruc)on Selon. Algorithme Signe Variables x: EnCer Début Lire(x) Selon x > 0 : Écrire( Le nombre est posi-f ) x < 0 : Écrire( Le nombre est néga-f ) Sinon : Écrire( Le nombre est nul ) FinSelon Fin Dr. Meziane-Tani I. 57

58 Les structures répébbve Dr. Meziane-Tani I. 58

59 Structure répébbve Une structure répébbve ou structure itérabve est une structure algorithmique qui consiste à répéter un ensemble d instruc)ons un certain nombre de fois. Aken)on : le nombre de répé))ons ne peut être infini! Il faut toujours s assurer que la structure répé))ve s arrête après un nombre fini de répé))ons. Remarques : - En jargon informa)que, une structure répé))ve est généralement appelée «boucle». - Une répé))on est appelée : itérabon. Dr. Meziane-Tani I. 59

60 Structure répébbve Le nombre d itéra)ons peut être donné de deux différentes manières : Un compteur Une condi)on d arrêt des répé))ons Il existe 3 types de structures répé))ves (boucles) : 1. La boucle : «TantQue Faire... FinTantQue» => Condi)on 2. La boucle : «Répéter... Jusqu à» => Condi)on 3. La boucle : «Pour de... à... Pas... FinPour» => Compteur Le choix d un type de boucle dépend des données dont ont dispose (compteur ou condi)on d arrêt). Dr. Meziane-Tani I. 60

61 1. TantQue Faire... FinTantQue Dr. Meziane-Tani I. 61

62 La boucle «TantQue» Une séquence d instruc)ons est répétée tant qu une condi)on est vérifiée. Pseudo-code : TantQue Condi-on Faire /* Séquence d instruc-ons */ FinTantQue Remarques : - La Condi-on est évaluée avant chaque itéra)on. - Il est possible que la séquence d instruc)ons ne soit jamais exécutée. Dr. Meziane-Tani I. 62

63 Exemple Écrire un algorithme qui demande à l u)lisateur d introduire une note jusqu à ce que celle-ci soit valide (0 note 20). Algorithme SaisiNote Variables Note: EnCer Début Ecrire( Introduire une note : ) Lire(Note) TantQue (Note < 0) OU (Note > 20) faire Ecrire( La note n est pas valide. Veuillez recommencer ) Lire(Note) FinTantQue Ecrire( Note Correcte. ) Fin Dr. Meziane-Tani I. 63

64 2. Répéter Jusqu à... Dr. Meziane-Tani I. 64

65 La boucle «Répéter» Répéter une séquence d instruc)ons jusqu à ce qu une condi)on soit vérifiée. Dans ce cas, on sort de la boucle. Pseudo-code : Répéter /* Séquence d instruc-ons */ Jusqu à Condi-on Remarques : - La Condi-on est évaluée après chaque itéra)on. - La séquence d instruc)ons est exécutée au moins une fois. Dr. Meziane-Tani I. 65

66 Exemple Écrire un algorithme qui calcule le nombre, N, des premiers nombres posi)fs tels que leur somme est supérieure ou égale à 100. N =? Algorithme Somme100 Variables N, Somme, i: EnCer ( N) 100 Début Somme 0 i 0 Répéter i i + 1 Somme Somme + i Jusqu à Somme 100 Ecrire( La valeur de N est :, i) Fin Dr. Meziane-Tani I. 66

67 Boucles TantQue/Répéter - Risque de boucle infini - Dans une boucle TantQue ou dans une boucle Répéter, il faut bien choisir la condi)on de sorte que la boucle fini toujours par s arrêter et ce afin d éviter la boucle infini => Problème de satura)on du processeur! Exemple : Algorithme BoucleInfini Variables i: EnCer Début i 1 TantQue i > 0 faire i i+1 FinTantQue Fin Dr. Meziane-Tani I. 67

68 3. Pour de... à... Pas... Faire... FinPour Dr. Meziane-Tani I. 68

69 La boucle «Pour» Une séquence d instruc)ons est exécutée un certain nombre de fois connu à l avance. Pseudo-code : Pour Compteur de Ini-ale à Finale Pas Valeur_Pas Faire /* Séquence d instruc-ons */ FinPour - Compteur : une variable qui sert à compter le nombre d itéra)ons - IniCale : la valeur ini)ale du compteur. Doit être donnée. - Finale : la valeur finale du compteur. Doit être donnée. Finale n est pas toujours supérieure à Ini-ale. - Valeur_Pas : la valeur du pas d incrémenta)on du compteur. Ceke valeur est op)onnelle. Si elle n est pas donnée, elle sera par défaut égale à «1». Dr. Meziane-Tani I. 69

70 Exemple 1 Écrire un algorithme qui demande à l u)lisateur un nombre en)er de départ et qui ensuite affiche les 10 en)ers suivants. Algorithme NombresSuivants Variables Depart, i: EnCer Début Ecrire( Introduire un nombre de départ : ) Lire(Depart) Pour i de 1 à 10 Pas 1 faire /* i est un compteur qui compte les nombres */ Ecrire(Depart+i) /* afficher les en-ers qui suivent la valeur Depart */ FinPour Fin Dr. Meziane-Tani I. 70

71 Exemple 2 Écrire un algorithme qui demande à l u)lisateur un nombre en)er final et qui ensuite affiche les 10 en)ers précédents dans un ordre croissant. Algorithme NombresPrecedents Variables Final, i: EnCer Début Ecrire( Introduire un nombre final ) Lire(Final) Pour i de 10 à 1 Pas -1 faire /* le compteur est décrémenté par pas de -1 */ Ecrire(Final-i) /* afficher les en-ers qui précèdent Final */ FinPour Fin Dr. Meziane-Tani I. 71

72 La boucle «Pour» - Quelques remarques - Avec la boucle «Pour», il n y a pas de risque de boucle infinie car les valeurs «Ini)ale» et «Finale» sont obligatoirement définies avec des valeurs numériques. Pour qu il n y ait pas de dysfonc)onnement de la boucle «pour», il faut éviter de modifier la valeur du compteur à l intérieur de la boucle. Exemple : Pour i de 0 à 10 Pas 1 Faire Ecrire(i) i i + 1 FinPour En ajoutant l incrémenta)on du i à l intérieur de la boucle, ceke variable sera incrémentée de 2 pas à chaque itéra)on. Les valeurs de «i» sont donc : 0, 2, 4, 6, 8, 10. Dr. Meziane-Tani I. 72

73 Remarque Pour/TantQue La boucle Pour peut être remplacée par une boucle TantQue. Pour Compteur de Ini-ale à Finale Pas Valeur_Pas Faire /* Séquence d instruc-ons */ FinPour Compteur Ini-al TantQue Compteur Finale* Faire /* Séquence d instruc-ons */ Compteur Compteur + Valeur_Pas FinTantQue * : la condi)on devient compteur Finale si Finale < Ini)ale. Il n est pas toujours possible de remplacer la boucle TantQue par la boucle Pour sauf si le nombre d itéra)ons est connu. Dr. Meziane-Tani I. 73

74 Choix du type de boucle Si le nombre d itéra)ons est connu à l avance : => Choisir la boucle Pour Sinon : Si la condi)on de la boucle ne peut être vérifié qu après une première itéra)on OU Si au moins une itéra)on est obligatoire : => Choisir la boucle Répéter Sinon : => Choisir la boucle TantQue Dr. Meziane-Tani I. 74

75 Quelques exemples Exemple 1 : Écrire un algorithme qui demande successivement 20 nombres à l u)lisateur, et qui lui dise ensuite quel était le plus grand parmi ces 20 nombres. Exemple 2 : Écrire un autre algorithme qui demande successivement plusieurs nombres à l u)lisateur et affiche leur maximum, mais ceke fois-ci la saisie des nombres s arrête lorsque l u)lisateur entre un zéro. Dr. Meziane-Tani I. 75

76 SoluBon Exemple 1 Algorithme PlusGrandNombre Variables N, i, Max : EnCer Debut Max 0 Pour i de 1 à 20 Pas 1 Ecrire("Entrez un nombre : ) Lire(N) FinPour Si (i = 1) OU (N > Max ) Alors Max N FinSi Ecrire("Le nombre le plus grand était : ", Max ) Fin. Dr. Meziane-Tani I. 76

77 SoluBon Exemple 2 Algorithme PlusGrandNombre2 Variables N, i, Max: EnCer TantQue Debut N 1 i 0 Max 0 TantQue N <> 0 Ecrire("Entrez un nombre : ) Lire(N) i i + 1 Si (i = 1) OU (N > Max) Alors Max N FinSi FinTantQue Ecrire("Le nombre le plus grand était : ", Max) Fin Dr. Meziane-Tani I. 77

78 Algorithme PlusGrandNombre3 Variables N, i, Max: EnCer Debut i 0 Max 0 Répéter Ecrire("Entrez un nombre : ) Lire(N) i i + 1 Si (i = 1) OU (N > Max) Alors Max N FinSi Jusqu à N=0 SoluBon Exemple 2 Répéter Ecrire("Le nombre le plus grand était : ", Max) Fin Dr. Meziane-Tani I. 78

79 Boucles imbriquées En fonc)on du problème abordé, il est possible que les instruc)ons d une boucle soient à leur tour une boucle : du même type ou d un autre type. Exemple : Afficher le triangle ci-dessous en u)lisant une boucle «Pour». * ** *** **** ***** ****** ******* Dr. Meziane-Tani I. 79

80 Algorithme Pyramide Variables i, j: EnCer Début Boucles imbriqués - Exemple - Pour i de 1 à 7 faire /* i compte les lignes */ Pour j de 1 à i faire /* j compte le nombre d étoiles de chaque ligne */ Ecrire( * ) FinPour FinPour Fin Dr. Meziane-Tani I. 80

81 Les types complexes Dr. Meziane-Tani I. 81

82 Types complexes Les types complexes ne désignent pas les nombres complexes! Types complexes : désignent des types de données dont la structure est plus complexe que les types prédéfinies (En)er, Réel, Caractère, etc.). En algorithmique : Les tableaux Les enregistrements Les listes Les Piles et les Files Les arbres Etc. Dr. Meziane-Tani I. 82

83 1 Les tableaux Dr. Meziane-Tani I. 83

84 IntroducBon Reprenons l exemple des boucles où il était demandé d introduire 20 nombres puis d afficher le maximum de ces nombres comme résultat. Supposons qu il fallait afficher les 20 nombres introduits après avoir affiché le maximum. Quelle serait la solu)on? Il faudrait alors sauvegarder les 20 nombres! Comment faire alors pour sauvegarder les 20 nombres? Déclarer 20 variables? Et s il était demandé d introduire 100 nombres? 200 nombres? Il faut stocker tous les nombres dans une seule structure de données (variable) de type Tableau. Dr. Meziane-Tani I. 84

85 Tableau Un tableau est une structure de données qui permet de manipuler un ensemble de données de même type. Un tableau est une variable qui sert à stocker en mémoire plusieurs valeurs. Les données sont stockées de façon «con)güe», c est à dire la première données suivi de la deuxième, suivi de la troisième Et ainsi de suite. Dr. Meziane-Tani I. 85

86 ReprésentaBon d un tableau ReprésentaBon graphique : Élément 1 Élément 2 Élément 3... Élément n-1 Élément n ReprésentaBon en mémoire : RAM Élément 1 Élément 2 Élément 3 : : Élément n Tableau de n éléments Taille du tableau = n x Taille d un élément [Bits] Dr. Meziane-Tani I. 86

87 DéclaraBon d un tableau (1/2) Un tableau est déclaré comme une variable. Déclarer un tableau consiste à donner : Le nom du tableau : il fait référence à l adresse du premier élément du tableau. Le type de données : tous les éléments du tableaux doivent être de même type. Généralement le type fait référence à un type prédéfini (En)er, Réel, etc.) La taille du tableau : le nombre maximal de données qui peuvent être stockées dans le tableau : nécessaire pour la réserva)on d espace mémoire. Dr. Meziane-Tani I. 87

88 DéclaraBon d un tableau (2/2) En pseudo-code : Variable nom_tableau[nombre_elements]: type_elements Exemple : Déclarer un tableau de 20 en)ers. Variable T[20]: EnCer Dr. Meziane-Tani I. 88

89 Accéder aux éléments du tableau Pour accéder à un élément du tableau, il faut donner le nom du tableau et le numéro d ordre (entre crochets []) de l élément dans le tableau. Indices Exemples : T[3] 4. N = T[1]+T[2] Le numéro d ordre est appelé : «Indice». Important : Par conven)on, le premier élément du tableau possède l indice «0» => T[0]. Exemple : Les éléments du tableau précédent sont : T[0], T[1], T[2], T[19] n-2 n-1 T[0] T[1] T[2]... T[n-2] T[n-1] Valeur d un élément Dr. Meziane-Tani I. 89

90 Lecture d un tableau (1/2) Lire un tableau consiste à lire les éléments du tableau. Pour lire les éléments d un tableau, il faut u)liser une boucle qui «répète» le même traitement qui est «lecture d un élément» du tableau. La taille d un tableau étant connue dès sa déclara)on => Une boucle «Pour» peut être u)lisée. Dr. Meziane-Tani I. 90

91 Lecture d un tableau (2/2) Écrire un algorithme qui demande à l u)lisateur d introduire les 20 éléments d un tableau d en)ers T. Algorithme LectureTableau Constante N 20 : EnCer /* La taille du tableau est déclarée comme une constante */ Variables i: EnCer T[N] : EnCer Début Pour i de 0 à N-1 faire /* i : indice qui compte les éléments du tableau */ Ecrire( T[, i, ] = ) /* affiche le nom de la case */ Lire(T[i]) FinPour Fin Dr. Meziane-Tani I. 91

92 Écriture (Affichage) d un tableau Écrire un algorithme qui affiche les 20 éléments d un tableau d en)ers T. Algorithme EcritureTableau Constante N 20 : EnCer /* La taille du tableau est déclarée comme une constante */ Variables i: EnCer T[N] : EnCer Début Pour i de 0 à N-1 faire /* i : indice qui compte les éléments du tableau */ Ecrire( T[, i, ] =, T[i]) /* affiche le nom de la case */ FinPour Fin Dr. Meziane-Tani I. 92

93 Mise à jour d un tableau Les opéra)ons de mise à jour sont les opéra)ons qui permekent de modifier les éléments d un tableau. il existe 3 types de mises à jour : ModificaBon d un élément du tableau InserBon d un élément à un tableau Suppression d un élément du tableau Dr. Meziane-Tani I. 93

94 ModificaBon La modifica)on d un élément du tableau consiste à remplacer la valeur d un élément par une autre valeur. La taille du tableau ne change pas après modifica)on. Avant modificabon : 0 1 p-1 p p+1 n-1 T[0] T[1]... T[p].... T[n-1] Après modificabon : 0 1 p-1 p p+1 n-1 T[0] T[1]... x T[n-1] Dr. Meziane-Tani I. 94

95 Algorithme de modificabon Écrire un algorithme qui permet de modifier l élément qui se trouve à l emplacement «p» d un tableau d en)ers T par la valeur de «x». Algorithme Modifica-on Constante N 20 : EnCer Variables p, x: EnCer T[N] : EnCer Début Lire(x,p) T[p] x /* remplacer la valeur de T[p] par x */ Fin Dr. Meziane-Tani I. 95

96 InserBon L inser)on d un élément «x» à l emplacement «p» d un tableau consiste à : Décaler vers la droite tous les éléments à par)r de l indice p. Insérer cet élément dans la case T[p] => la taille du tableau après inser)on : n+1. Avant inserbon : 0 1 p-1 p p+1 n-1 T[0] T[1] T[p-1] T[p] T[p+1]. T[n-1] Après inserbon : 0 1 p-1 p p+1 p+2 n T[0] T[1] T[p-1] x T[p] T[p+1]. T[n-1] Dr. Meziane-Tani I. 96

97 Algorithme d inserbon Écrire un algorithme qui permet d insérer un élément «x» à l emplacement «p» d un tableau, T, d en-ers. T est supposé donné. Algorithme Inser-on Constante N 20 : EnCer Variables i, p, x: EnCer T[N], T_nouveau[N+1] : EnCer /*T_Nouveau : Nouveau tableau après inser-on de x. */ Début Lire(x,p) Pour i de 0 à p-1 faire /* Les éléments de 0 à p-1 sont conservés dans le tableau T_nouveau */ T_nouveau[i] T[i] FinPour Pour i de p+1 à N faire /* Ceƒe boucle décale les éléments de p+1 à N-1. */ T_nouveau[i] T[i-1] FinPour T_nouveau[p] x /* Insérer l élément x à l emplacement p */ Fin Dr. Meziane-Tani I. 97

98 Suppression La suppression d un élément qui se trouve à l emplacement «p» d un tableau consiste à : Décaler vers la gauche tous les éléments à par)r de l indice p+1. => la taille du tableau après inser)on : n-1. Avant suppression : 0 1 p-1 p p+1 n-1 T[0] T[1] T[p-1] T[p] T[p+1]. T[n-1] Après suppression : 0 1 p-1 p n-2 T[0] T[1] T[p-1] T[p+1]. T[n-1] Dr. Meziane-Tani I. 98

99 Algorithme Suppression Constante N 20 : EnCer Variables i, p, x: EnCer Algorithme de suppression Écrire un algorithme qui permet de supprimer l élément qui se trouve à l emplacement «p» d un tableau, T, d en-ers. T est supposé donné. T[N], T_nouveau[N-1] : EnCer /*T_Nouveau : Nouveau tableau après suppression de x. */ Début Lire(p) Pour i de 0 à p-1 faire /* Les éléments de 0 à p-1 sont conservés dans le tableau T_nouveau */ T_nouveau[i] T[i] FinPour Pour i de p à N-2 faire /* Ceƒe boucle décale les éléments de p+1 à N-1. */ FinPour T_nouveau[i] T[i+1] /* la suppression est effectuée en affectant à T[p] T[p+1] */ Fin Dr. Meziane-Tani I. 99

100 Algorithme de Recherche Principe Étant donnés un tableau T et une valeur x(l élément que l on cherche), plusieurs types de problèmes peuvent être posés : l élément est-il ou non dans la collec)on? autrement dit x T? si l élément est dans la collec)on, où peut-on le trouver? autrement dit, pour quel indice i a-t-on T[i]=x? Ceke dernière ques)on pouvant être déclinée de plusieurs façons : quel est le plus pe)t indice I tel que T[i]=x? quel est le plus grand? quels sont tous les indices? Dr. Meziane-Tani I. 100

101 Algorithmes de recherche Dans un ensemble de données non triées : Recherche séquen)elle Dans un ensemble de données triées : Recherche séquen)elle Recherche dichotomique Dr. Meziane-Tani I. 101

102 Recherche séquenbelle - Ensemble non trié - Principe : Parcourir un ensemble de données à la recherche d un élément. Arrêter la recherche dès que l élément est trouvé. Algorithme RechercheSéquen)elle Constante N 20 : EnCer Variables Trouve : Booléen i,x : EnCer T[N] : EnCer Début Lire(x) Trouve Faux i 0 TantQue (NON Trouve) ET (i<n) faire Si T[i]=x alors Trouve Vrai FinSi i i+1 FinTantQue Dr. Meziane-Tani I. 102 Fin.

103 Recherche séquenbelle - Ensemble trié - Principe : En supposant que l ensemble est trié par ordre croissant, parcourir l ensemble des éléments dont l élément recherché est inférieur. Arrêter la recherche dès que l élément courant devient supérieur ou égale ou qu on a parcouru tout l ensemble. Algorithme RechercheSéquen)elle2 Constante N 20 : EnCer Variables Trouve : Booléen i,x : EnCer T[N] : EnCer Début Lire(x) i 0 TantQue (i < n) ET (x > T[i]) i i+1 FinTantQue Si (i < n) ET (x = T[i]) alors Trouve Vrai Sinon Trouve Faux FinSi Fin. Dr. Meziane-Tani I. 103

104 Recherche dichotomique - Ensemble trié - Dichotomie vient de dic)onnaire : méthode inspirée de la recherche d un mot dans un dicbonnaire. Principe : Diviser le tableau en deux par)es et comparer la valeur recherchée avec l'élément situé au milieu du tableau (l'élément médian). Si la valeur recherchée correspond à l'élément médian, alors l'algorithme s'arrête et renvoie l'indice de cet élément. Sinon l'algorithme va répéter la recherche uniquement dans la par)e qui peut contenir la valeur recherchée. Dr. Meziane-Tani I. 104

105 Recherche dichotomique 0 1 Diviser le tableau en deux par)es 0 1 Si x < milieu 0 1 Rediviser la par)e gauche en deux par)es 0 1 Dr. Meziane-Tani I. Ainsi de suite 105

106 Recherche dichotomique Algorithme RechercheDichotomique Constante N 20 : EnCer Variables Trouve : Booléen x, d, f, m : EnCer // d : indice du premier élement T[N] : EnCer // f : indice du dernier élement Début // m : indice du milieu d 0 f n 1 TantQue d < f faire m (d+f)/2 /* Milieu du tableau : Division en-ère */ Si T[m] < x alors d m+1 /*rechercher dans la par-e gauche*/ Sinon f m /*rechercher dans la par-e droite*/ FinSi FinTantQue Si x = T[d] alors Trouve Vrai Sinon Trouve Faux FinSi Fin. Dr. Meziane-Tani I. 106

107 2 Les enregistrements Dr. Meziane-Tani I. 107

108 Enregistrements Un enregistrement est un type ou une structure de données permekant de définir un ensemble fini de données (ou variables) qui ne sont pas du même type (contrairement aux tableaux où tous les éléments doivent être de même type). Exemple : Le nom, le prénom, l âge et la moyenne d un élève sont des données de types différents mais qui restent reliés par la no)on d élève => Nous pouvons regrouper alors ces 4 informa)ons dans un enregistrement. Les éléments qui composent un enregistrement sont appelés : «Champs». Exemples : Nom, Prénom, Dr. Meziane-Tani I. 108

109 DéclaraBon d un type enregistrement Avant de déclarer une variable de type enregistrement, il faut d abord définir son type. Nom_Enregistrement : Enregistrement Nom_Champ_1 : Type_Champ_1 Nom_Champ_2 : Type_Champ_2 Nom_Champ_n : Type_Champ_n FinEnregistrement La défini)on d un type se fait dans la par)e déclara)on des variables juste avant la déclara)on des variables et après la déclara)on des constantes. Dr. Meziane-Tani I. 109

110 Exemples Personne: Enregistrement Nom : Chaîne de caractère Prénom : Chaîne de caractère Age : En-er FinEnregistrement Date: Enregistrement Jour : En-er Mois : En-er Année : En-er FinEnregistrement Point: Enregistrement Num : En-er Abscice : Réel Ordonnée : Réel FinEnregistrement Complexe: Enregistrement Re : Réel Im: Réel FinEnregistrement Dr. Meziane-Tani I. 110

111 DéclaraBon de variables de type Enregistrement Une fois que le type Enregistrement défini, on peut déclarer des variables de ce type de la même manière que la déclara)on de variables de types primi)fs est faite. Pseudo-code : Nom_variable : Nom_Enregistrement Exemple : P: Personne Dr. Meziane-Tani I. 111

112 ManipulaBon d un enregistrement La manipula)on d un enregistrement est faite à travers les champs qui le définissent. Pour accéder au champ d un enregistrement : Exemples : Personne.Age Complexe.Im Nom_Variable.Nom_champs Les champs d un enregistrement sont considérés comme des variables qui peuvent être u)lisées dans tout type d instruc)ons : affecta)ons, lecture/écriture,. Dr. Meziane-Tani I. 112

113 Exemple Afficher les champs de l enregistrement P de type Personne. Nous supposons que les champs ont été lus auparavant. Algorithme EnregistrementPersonne Personne: Enregistrement /*défini-on du type Personne*/ Nom : Chaîne de caractères Prenom : Chaîne de caractères Age : En-er FinEnregistrement Variables P : Personne /*déclara-on de la variable P de type Personne*/ Début Ecrire ( Le nom de la personne est :, P.Nom) Ecrire ( Le prénom de la personne est :, P.Prenom) Ecrire ( L âge de la personne est :, P.Age) Fin. Dr. Meziane-Tani I. 113

114 Remarque Un enregistrement peut contenir un champ d un autre type enregistrement. Exemple : Une personne possède une date de naissance. Date: Enregistrement Jour : En-er Mois : En-er Année : En-er FinEnregistrement Personne: Enregistrement Nom : Chaîne de caractère Prénom : Chaîne de caractère Date_Naiss : Date FinEnregistrement Le champs Date_Naiss est manipulé comme suit : P.Date_Naiss.Jour P.Date_Naiss.Mois P.Date_Naiss.Année Variables P: Personne Dr. Meziane-Tani I. 114

115 Références Introduc)on à l algorithmique, C. Paris 7, Cours. Darmangeat, Université Ini)a)on à l algorithmique, 2007 Algorithmique, A. EL Harraj, 2015, Cours. Les bases de l informa)que et de la programma)on, R.M. Di Scala, Dr. Meziane-Tani I. 115

Cours d Informatique

Cours d Informatique Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V [email protected] [email protected] 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que CQP 112 Introduc/on à la programma/on Thème 2 : Architecture d un système informa/que Département d informa/que CQP 112 : Introduc/on à la programma/on Plan 1. Historique des ordinateurs 2. Composants

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Bases de programmation. Cours 5. Structurer les données

Bases de programmation. Cours 5. Structurer les données Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Évolu>on et maintenance

Évolu>on et maintenance IFT3912 Développement et maintenance de logiciels Évolu>on et maintenance Bruno Dufour Université de Montréal [email protected] Modifica>on des logiciels Les modifica>ons sont inévitables Des nouveaux

Plus en détail

Cours d algorithmique pour la classe de 2nde

Cours d algorithmique pour la classe de 2nde Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Concepon et réalisaon

Concepon et réalisaon Concepon et réalisaon Vendée Etudes & Réalisaons de Soluons Informaques 10 rue des Sables 85540 Mouers les Mauxfaits h%p://sarl-versi.fr [email protected] Mainate 2 une logiciel d aide à la communicaon

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

Chap III : Les tableaux

Chap III : Les tableaux Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction

Plus en détail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE Programmation Impérative Licence 2ème Année 2014 2015 UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie [email protected] 2 Programmation Impérative

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

1 Recherche en table par balayage

1 Recherche en table par balayage 1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

Initiation à la Programmation en Logique avec SISCtus Prolog Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Informatique Générale

Informatique Générale Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) [email protected] Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

Plus en détail

Les structures. Chapitre 3

Les structures. Chapitre 3 Chapitre 3 Les structures Nous continuons notre étude des structures de données qui sont prédéfinies dans la plupart des langages informatiques. La structure de tableau permet de regrouper un certain nombre

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithmique et programmation : les bases (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES TYPES DE DONNÉES DU LANGAGE PASCAL LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

Cours d Algorithmique et de Langage C 2005 - v 3.0

Cours d Algorithmique et de Langage C 2005 - v 3.0 Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU [email protected] Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation : Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de

Plus en détail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice

Plus en détail

DOCUMENTATION KAPTravel Module de gestion des appels de disponibilité

DOCUMENTATION KAPTravel Module de gestion des appels de disponibilité DOCUMENTATION KAPTravel Module de gestion des appels de disponibilité 01/06/15 KAPT Tous Droits Réservés 2 PRÉSENTATION Ce+e présenta3on va vous perme+re de prendre en main la plateforme de ges3on KAPTravel

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture des Systèmes d Information Architecture des Systèmes d Information Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Logiciel de Base. I. Représentation des nombres

Logiciel de Base. I. Représentation des nombres Logiciel de Base (A1-06/07) Léon Mugwaneza ESIL/Dépt. Informatique (bureau A118) [email protected] I. Représentation des nombres Codage et représentation de l'information Information externe formats

Plus en détail

Représentation d un entier en base b

Représentation d un entier en base b Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Cours d initiation à la programmation en C++ Johann Cuenin

Cours d initiation à la programmation en C++ Johann Cuenin Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................

Plus en détail

CORRECTION EXERCICES ALGORITHME 1

CORRECTION EXERCICES ALGORITHME 1 CORRECTION 1 Mr KHATORY (GIM 1 A) 1 Ecrire un algorithme permettant de résoudre une équation du second degré. Afficher les solutions! 2 2 b b 4ac ax bx c 0; solution: x 2a Solution: ALGORITHME seconddegré

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

Plus en détail

Feuille TD n 1 Exercices d algorithmique éléments de correction

Feuille TD n 1 Exercices d algorithmique éléments de correction Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments

Plus en détail

INTRASTAT 2015. No ce explica ve Merkbla

INTRASTAT 2015. No ce explica ve Merkbla INTRASTAT 2015 Noce explicave Merkbla Rédacon en chef Alain Hoffmann Rédacon, coordinaon et concepon graphique Luc Kohnen STATEC Instut naonal de la stasque et des études économiques Centre Administraf

Plus en détail

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être

Plus en détail

Les 10 étapes clés pour trouver des clients par internet

Les 10 étapes clés pour trouver des clients par internet Les 10 étapes clés pour trouver des clients par internet Guide pour les entreprises de Home Staging 1 L auteur : Adrian Measures Adrian Measures est responsable du [email protected] sur internet et fondateur de

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

Vers un Système unique d informa4on na4onale de médicaments au Mexique, dans le cadre du suivi de l OMD 8.13

Vers un Système unique d informa4on na4onale de médicaments au Mexique, dans le cadre du suivi de l OMD 8.13 Vers un Système unique d informa4on na4onale de médicaments au Mexique, dans le cadre du suivi de l OMD 8.13 México Angélica Ivonne Cisneros- Luján Lisbonne, 11 septembre 2012 CONTEXTE et DÉSCRIPTION du

Plus en détail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason

Plus en détail

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» Corrigé Cours de Mr JULES v3.3 Classe de Quatrième Contrat 1 Page 1 sur 13 CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» «Correction en rouge et italique.» I. Les nombres décimaux relatifs.

Plus en détail

AVIS A MANIFESTATION D INTERET N 017/MPT/2013/UCP/CAB

AVIS A MANIFESTATION D INTERET N 017/MPT/2013/UCP/CAB AVIS A MANIFESTATION D INTERET N 017/MPT/2013/UCP/CAB RECRUTEMENT D UN CONSULTANT INDIVIDUEL POUR LA REALISATION DE L ETUDE SUR LA PORTABILITE SUR LE MARCHE DES TELECOMMUNICATIONS EN REPUBLIQUE DU CONGO

Plus en détail

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

Plus en détail

Le contrôle fiscal anno 2013

Le contrôle fiscal anno 2013 Le contrôle fiscal anno 2013 Carlos SIX! Administrateur général de la Fiscalité SPF Finances Ges$on des risques Contrôle fiscal CRM & Tolérance zéro ONDEMENT OBJECTIFS STRATEGIQUES Etude externe 2010 constata$ons

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

Structure fonctionnelle d un SGBD

Structure fonctionnelle d un SGBD Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert

Plus en détail

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles [email protected]

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles [email protected] Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables

Plus en détail

Cours 1 : Qu est-ce que la programmation?

Cours 1 : Qu est-ce que la programmation? 1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas [email protected] Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre

Plus en détail

PROJET ALGORITHMIQUE ET PROGRAMMATION II

PROJET ALGORITHMIQUE ET PROGRAMMATION II PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du

Plus en détail

Devenez un virtuose de Google. Atelier en informa5que présenté par Dominic P. Tremblay [email protected]://dominictremblay.com

Devenez un virtuose de Google. Atelier en informa5que présenté par Dominic P. Tremblay h@p://dominictremblay.com Devenez un virtuose de Google Atelier en informa5que présenté par Dominic P. Tremblay [email protected]://dominictremblay.com Google Google est une société fondée en 1998 en Californie par Larry Page et Sergey Brin.

Plus en détail

Rappel sur les bases de données

Rappel sur les bases de données Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant

Plus en détail

Les chaînes de caractères

Les chaînes de caractères Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il

Plus en détail

Rappels Entrées -Sorties

Rappels Entrées -Sorties Fonctions printf et scanf Syntaxe: écriture, organisation Comportement Données hétérogènes? Gestion des erreurs des utilisateurs 17/11/2013 Cours du Langage C [email protected] ibrahimguelzim.atspace.co.uk

Plus en détail

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION 145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu

Plus en détail

Cours Informatique 1. Monsieur SADOUNI Salheddine

Cours Informatique 1. Monsieur SADOUNI Salheddine Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale

Plus en détail

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version 8.05.22

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version 8.05.22 Services bancaires par Internet aux entreprises Guide pratique pour : Rapports de solde Version 8.05.22 Table des matières Avez-vous besoin d aide?... 3 Exigences informatiques... 4 Navigateurs acceptés...

Plus en détail

Compression Compression par dictionnaires

Compression Compression par dictionnaires Compression Compression par dictionnaires E. Jeandel Emmanuel.Jeandel at lif.univ-mrs.fr E. Jeandel, Lif CompressionCompression par dictionnaires 1/25 Compression par dictionnaire Principe : Avoir une

Plus en détail

Outils pour la pratique

Outils pour la pratique Cinquième partie Outils pour la pratique 121 CHAPITRE 1 Les bases des séances de TP Avant de lire cettre section, il est suggéré de relire vos notes de cours se rapportant au système d exploitation Unix.

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

Aide : publication de décisions VS

Aide : publication de décisions VS Aide : publication de décisions VS Table des Matières Introduction... 2 Recherche (Recherche dans le texte intégral)... 2 Filtres... 3 Collection d arrêts... 4 Date de la décision et date de publication...

Plus en détail

Algorithmes récursifs

Algorithmes récursifs Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge www.i3s.unice.fr/ verel 23 mars 2007 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément

Plus en détail

Machines virtuelles Cours 1 : Introduction

Machines virtuelles Cours 1 : Introduction Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 [email protected] PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une

Plus en détail

Microsoft Excel. Tableur

Microsoft Excel. Tableur Microsoft Excel Tableur 1 Introduction à la notion du tableur Un tableur est un logiciel permettant de manipuler des données numériques et d'effectuer automatiquement des calculs sur des nombres stockés

Plus en détail

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0

Plus en détail

EXCEL TUTORIEL 2012/2013

EXCEL TUTORIEL 2012/2013 EXCEL TUTORIEL 2012/2013 Excel est un tableur, c est-à-dire un logiciel de gestion de tableaux. Il permet de réaliser des calculs avec des valeurs numériques, mais aussi avec des dates et des textes. Ainsi

Plus en détail

1 - Se connecter au Cartable en ligne

1 - Se connecter au Cartable en ligne Le Cartable en ligne est un Environnement numérique de travail (ENT) dont la vocation est de proposer un ensemble de services en ligne, personnalisés et sécurisés, accessibles aux élèves et aux professeurs,

Plus en détail

Codage d information. Codage d information : -Définition-

Codage d information. Codage d information : -Définition- Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale

Plus en détail

Algorithmique, Structures de données et langage C

Algorithmique, Structures de données et langage C UNIVERSITE PAUL SABATIER TOULOUSE III Algorithmique, Structures de données et langage C L3 IUP AISEM/ICM Janvier 2005 J.M. ENJALBERT Chapitre 1 Rappels et compléments de C 1.1 Structures Une structure

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

REALISATION d'un. ORDONNANCEUR à ECHEANCES

REALISATION d'un. ORDONNANCEUR à ECHEANCES REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6

Plus en détail

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : [email protected] Page personnelle : http://www.lri.fr/ hivert

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : [email protected] Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes

Plus en détail

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes

Plus en détail

Solutions du chapitre 4

Solutions du chapitre 4 Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (

Plus en détail

Une version javascript sera disponible directement dans le cours prochainement.

Une version javascript sera disponible directement dans le cours prochainement. Author : Cédric Vanconingsloo Ce cours est principalement axé sur la compréhension du fonctionnement d'un ordinateur et l'étude du seul langage qu'il connaisse, le binaire. De ce fait, le cours est relativement

Plus en détail

Correction TD algorithmique

Correction TD algorithmique Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un

Plus en détail

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, [email protected]

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr 6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, [email protected] Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert [email protected] Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

Microprocesseur + Logiciel

Microprocesseur + Logiciel Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS

Plus en détail

Introduction à l algorithmique et à la programmation (Info 2)

Introduction à l algorithmique et à la programmation (Info 2) Introduction à l algorithmique et à la programmation (Info 2) Premier cours: présentation du module, codage et définition de l algorithmique Matthieu Puigt IUT du Littoral Côte d Opale DUT Génie Industriel

Plus en détail

Créer le schéma relationnel d une base de données ACCESS

Créer le schéma relationnel d une base de données ACCESS Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...

Plus en détail

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009 Déroulement Algorithmes et structures de données Cours 1 et 2 Patrick Reuter http://www.labri.fr/~preuter/asd2009 CM mercredi de 8h00 à 9h00 (Amphi Bât. E, 3 ème étage) ED - Groupe 3 : mercredi, 10h30

Plus en détail