Introduction à l'informatique

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

Download "Introduction à l'informatique"

Transcription

1 Introduction à l'informatique Généralités Rappels M. Deloizy Informatique - Généralités 1 Notion d'algorithme M. Deloizy Informatique - Généralités 2 1

2 Algorithme Ensemble de règles opératoires propres à un calcul Calcul, enchaînement des actions nécessaires à l'accomplissement d'une tâche Petit Robert : Méthode proposée pour le traitement d'un problème par un automate Humain ou machine Traitement systématique M. Deloizy Informatique - Généralités 3 Exemple d'algorithme Recette de cuisine : Nom de la recette Ingrédients Réalisation Gâteau au yaourt M. Deloizy Informatique - Généralités 4 2

3 Définition d'un algorithme But recherché (que doit faire l'algorithme?) un gâteau au yaourt pour 6 personnes Outils disponibles Opérateurs, données, règles associées Yaourts, œufs, sucre, huile, sel, levure, moule, four Enchaînement des actions Ordre de traitement Description de la séquence d'actions nécessaires à la réalisation de la recette M. Deloizy Informatique - Généralités 5 Algorithme universel Non lié à un langage de programmation Non lié à une machine Mais Peut être plus ou moins adapté à un type d'automate M. Deloizy Informatique - Généralités 6 3

4 Exemple : Multiplication Classique : 34 x Nécessite la connaissance des tables de multiplication M. Deloizy Informatique - Généralités 7 pair Multiplication à la Russe Uniquement des multiplications par 2, des divisions par 2 et des additions adapté au calcul par des circuits logiques M. Deloizy Informatique - Généralités 8 4

5 Algorithmes multiples Pour résoudre une application, il existe souvent plusieurs algorithmes. Le choix sera fait selon : La rapidité d'exécution La facilité de mise en œuvre par l'automate Le type de données à traiter M. Deloizy Informatique - Généralités 9 Support matériel Architecture d'un ordinateur M. Deloizy Informatique - Généralités 10 5

6 Architecture d'un ordinateur 3 éléments : Le processeur La mémoire Les périphériques M. Deloizy Informatique - Généralités 11 Le processeur Le cœur du système Rôle : Traiter des informations binaires Lire des informations depuis la mémoire Écrire des informations dans la mémoire Réaliser des opérations élémentaires sur infos. Traitement des informations selon un "programme" lu de manière séquentielle au rythme d'une horloge M. Deloizy Informatique - Généralités 12 6

7 La mémoire Stockage Des informations Des programmes ROM Données permanentes RAM Données temporaires Utilisée par le processeur pour le traitement des données et des programmes M. Deloizy Informatique - Généralités 13 La mémoire de masse Stockage de grande capacité Bandes magnétiques, disques, CD, DVD Mémoire non volatile Réinscriptible Pas d'accès direct par le processeur mémoire "lente" (quelques ms) RAM : quelques ns M. Deloizy Informatique - Généralités 14 7

8 Les Périphériques Organes de communication Disposés entre le processeur et le monde extérieur Permettent les échanges avec : L'utilisateur Une autre machine Exemples : Écran, clavier, ports série ou parallèle, USB, réseaux, modem M. Deloizy Informatique - Généralités 15 Le système d'exploitation Permet le dialogue entre l'utilisateur et la machine Gestion des ressources de l'ordinateur Scrutation permanente des sollicitations de l'environnement Contient un interpréteur de commandes Exemples : MS-DOS Windows Unix, M. Deloizy Informatique - Généralités 16 8

9 Les outils de développement L'éditeur de texte L'assembleur Le compilateur L'éditeur de liens Le débuggeur L'interpréteur M. Deloizy Informatique - Généralités 17 L'éditeur de textes Programme permettant la saisie du texte contenant le programme source Éditeur pleine page Enregistrement et récupération de fichier en mémoire de masse Modification aisée du texte Outils divers : Copier-coller Recherche, remplacement Aide à la lisibilité (indentation, coloration, ) M. Deloizy Informatique - Généralités 18 9

10 Le code machine Programme "lu" par le processeur : binaire code machine Exemple : B charger A par cont. 3000H 8B 05 ajouter 05H à A F ranger le résultat en 3001H Programmation longue et fastidieuse Très peu lisible, risque d'erreurs élevé M. Deloizy Informatique - Généralités 19 L'assembleur Écriture du code machine en texte clair utilisation de mnémoniques Exemple : LDAA $3000 ADDA #$05 STAA $3001 charger A par cont. 3000H ajouter 05H à A ranger le résultat en 3001H Saisie du texte par un éditeur de textes Texte traduit en code machine par un programme : l'assembleur Amélioration de la lisibilité M. Deloizy Informatique - Généralités 20 10

11 Problèmes liés à l'assembleur Langage du processeur Très différent du langage naturel Pas de gestion évoluée des données Pas de système de protection Propre à chaque processeur Maintenance difficile Portabilité nulle Mais : grande efficacité (pour un bon programmeur) M. Deloizy Informatique - Généralités 21 But : Le compilateur S'affranchir du type de processeur S'affranchir de l'environnement matériel et logiciel Écriture des programmes en langage naturel langage évolué Compilateur : Traduit le texte (source) en code machine M. Deloizy Informatique - Généralités 22 11

12 Utilisation d'un compilateur Bonne lisibilité des programmes Bonne portabilité Gestion de données complexes Gestion de la mémoire du système Gestion standard des périphériques Rapidité d'écriture des programmes Maintenance aisée En + : Optimisation des programmes Systèmes de protection, garde-fous M. Deloizy Informatique - Généralités 23 Défaut des compilateurs Langage évolué très différent du langage machine traduction parfois difficile surcode parfois excessif Exécutable volumineux, lent Vrai avec processeurs anciens ou peu performants M. Deloizy Informatique - Généralités 24 12

13 L'éditeur de liens Création d'un programme : Écriture d'un programme source (texte) Compilation Programme objet (binaire, code machine incomplet) Bibliothèques personnelles Éditeur de liens Bibliothèques du langage Programme exécutable (binaire autonome) M. Deloizy Informatique - Généralités 25 Utilisation de l'éditeur de liens Bibliothèques personnelles extension du langage à sa convenance Portions de programmes réutilisables Dépannage ou amélioration d'une bibliothèque dépannage ou amélioration de tous les programmes qui en dépendent M. Deloizy Informatique - Généralités 26 13

14 Le débuggeur Outil permettant le dépannage des programmes (exécutables) Consultation des données Exécution instruction par instruction Points d'arrêt Souvent intégré dans IDE (Integrated Development Environment) ou EDE (Embedded Development Environment) Éditeur + Compilateur + Éditeur de liens + Débugger M. Deloizy Informatique - Généralités 27 L'interpréteur Exécute le programme pendant la lecture du code source Très lent (chaque instruction est interprétée puis exécutée à chaque utilisation) Présence de la totalité des bibliothèques du langage indispensable Le programme n'est pas autonome (exécuté sous le contrôle de l'interpréteur) Pas d'éditeur de liens Pas d'optimisation de code M. Deloizy Informatique - Généralités 28 14

15 Données utilisées en informatique M. Deloizy Informatique - Généralités 29 Représentation des données Types des données Choisi en fonction de l'utilisation Exemples : Comptage d'un nombre d'étudiants Calcul du sinus d'un angle Écriture d'un texte Données codées en binaire Pour le traitement par le processeur Définition d'un mode de rangement en mémoire pour chaque type de donnée Limitations liées au codage utilisé M. Deloizy Informatique - Généralités 30 15

16 Signé :, -2, -1, 0, 1, 2, Non signé 0, 1, 2, Le type entier Traitement de données entières Adapté aux énumérations M. Deloizy Informatique - Généralités 31 Valeurs limites Codage Signé Non signé 8 bits min max min max H 7F H 0 H FF H 16 bits bits Rem. : En représentation signée, le signe du nombre est donné par le bit de poids le plus fort (1 pour négatif) M. Deloizy Informatique - Généralités 32 16

17 Opérations possibles Arithmétiques Addition (+) Soustraction (-) Multiplication(*) Division entière (/) Modulo (%) Reste de la division entière M. Deloizy Informatique - Généralités 33 Opérations possibles Logiques (bit à bit) ET logique (&) OU logique ( ) OU exclusif (^) Complément à 1 (~) Comparaisons ==, <, >, <=, >=,!= M. Deloizy Informatique - Généralités 34 17

18 Notation nnn 12, -5, +3, 0 M. Deloizy Informatique - Généralités 35 Intérêt des entiers : Utilisation Valeurs exactes, pas d'imprécision Adaptés au comptage, dénombrement Inconvénient : Dynamique limitée Pas de très grand nombre Pas de très petit nombre Inadaptés au calcul scientifique M. Deloizy Informatique - Généralités 36 18

19 Le type booléen Résultat d'une expression logique 2 valeurs possibles : Vrai ou Faux Opérateurs : ET, OU, NON : résultat booléen Ex. : Vrai OU Faux Vrai Vrai ET Vrai Vrai NON Vrai Faux Codage : 1 bit suffit M. Deloizy Informatique - Généralités 37 Le type à virgule flottante Nombres réels (positifs et négatifs) Notation mantisse exposant Permettent une grande dynamique : Très petites valeurs (Ex. : ) Très grandes valeurs (Ex. : ) Problème d'imprécision : Ex. : entre 2.0 et 2.1 infinité de valeurs codage machine nombre de valeurs fini Présence d'arrondis M. Deloizy Informatique - Généralités 38 19

20 Codage Exemple de codage sur 32 bits (IEEE) Mantisse sur 24 bits Exposant sur 8 bits m. 2 e S : signe (1 : négatif, 0 : positif) m : mantisse (1 m < 2) m = 1.xxxxx e : exposant (-128 e 127) f : partie fractionnaire de la mantisse e' : e+127 (1 e' 254) e' f S b 31 b 30 b 23 b 22 b 0 M. Deloizy Informatique - Généralités 39 Valeurs limites e' f S b 31 b 30 b 23 b 22 b 0 Valeur la plus petite positive : S = 0 e' = 1 e = -126 f = 0 m = 1.0 V min = Valeur la plus grande positive : S = 0 e' = 254 e = 127 f = m = = V max = ( ) M. Deloizy Informatique - Généralités 40 20

21 Résolution Valeur suivante de 1.0 : = chiffres significatifs M. Deloizy Informatique - Généralités 41 Valeurs particulières m. 2 e avec m>1 ne permet pas de coder 0.0 Si e' = 0 codage de 0.0 Si e' = 255 codage de NAN M. Deloizy Informatique - Généralités 42 21

22 Autres codages Sur 64 bits (8 octets) : Mantisse sur 52 bits Exposant sur 11 bits Signe sur 1 bit 15 chiffres significatifs Valeurs limites Sur 80 bits 18 chiffres significatifs, M. Deloizy Informatique - Généralités 43 Opérations possibles Arithmétiques Addition (+) Soustraction (-) Multiplication(*) Division (/) Comparaisons ==, <, >, <=, >=,!= M. Deloizy Informatique - Généralités 44 22

23 Notation Forme générale : dd.dde xx dd.dd 10 xx nnn.nnn 2.0, , +4.5, 0.0.nnn ou nnn. 1., -.2, 0. nne nn ou nne nn 1E3, 5.22e-23, +3.2E-2 M. Deloizy Informatique - Généralités 45 Le type caractère Caractères codés pour représentation en machine 7 bits suffisent (128 caractères) Exemple de code : ASCII American Standard Code for Information Interchange Défini par ANSI (American National Standard Institute) M. Deloizy Informatique - Généralités 46 23

24 Codage ASCII Contient : Lettres minuscules et majuscules (ordre alphabétique) : 2x26 caractères Chiffres (ordre croissant de 0 à 9) Ponctuations, caractères typographiques, Caractères de contrôle (codes 0 à 31) Exemples : 'A' = 65, 'B' = 66, 'Z' = 90, 'a' = 97, '0' = 48 CR = 13, LF = 10, TAB = 9, FF = 12, BEL = 7 M. Deloizy Informatique - Généralités 47 Autres codages EBCDIC (IBM) ANSI (jeux de caractères internationaux) ASCII étendu Souvent sur 1 octet Rem. : le langage informatique prend en charge le codage (pas nécessaire de le connaître) M. Deloizy Informatique - Généralités 48 24

25 Notation et opérations possibles Notation : 'X', '0', '2' '\r', '\n', '\t' '\\', '\'' (caractère d'échappement : \ ) Opérations possibles : Additions, soustraction avec des entiers Ex. : 'A' + 1 'B' Comparaisons Ex. : 'A' < 'E' M. Deloizy Informatique - Généralités 49 Chaînes de caractères Ensemble ordonné de caractères représentant un mot, une phrase. Particularité : Nombre de caractères variable Taille très variable M. Deloizy Informatique - Généralités 50 25

26 Codage Codages possibles : <Nombre d'octets>, <oct1>, <oct2>,, <octn> limitation du nombre de caractères Exemple : "TOTO" : 04, 54, 4F, 54, 4F problème si plus de 255 caractères <oct1>, <oct2>,, <octn>, <délimiteur> le délimiteur ne doit pas faire parti du texte. Exemple : "TOTO" : 54, 4F, 54, 4F, 00 M. Deloizy Informatique - Généralités 51 Notation et opérations possibles Notation : "Bonjour" ne fait pas apparaître le codage Opérations possibles : Concaténation ("Bon" + "jour" "Bonjour") Accès à un caractère Taille de la chaîne ("Bonjour" 7) Comparaisons ("Alfred" < "Arthur") M. Deloizy Informatique - Généralités 52 26

27 Le type adresse Données et programmes rangés en mémoire Chaque donnée, chaque instruction a une adresse propre Le processeur accède aux données et aux instructions grâce à leur adresse adresse C32C H C32D H C32E H C32F H C330 H Contenu mémoire 2A H F0 H 12 H 45 H C5 H Variable toto c1 c2 x M. Deloizy Informatique - Généralités 53 Indirection Une donnée peut contenir une adresse pointe sur une autre donnée Ex. : ptr pointe sur c2 Pointeur On peut modifier c2 de manière indirecte en agissant sur ptr Indirection adresse C32C H C32D H C32E H C32F H C330 H Contenu mémoire C3 H 2F H 12 H 45 H C5 H Variable ptr c1 c2 x Remarque : On peut avoir des indirections multiples M. Deloizy Informatique - Généralités 54 27

28 Les tableaux Données rangées de manière contiguë en mémoire Données indicées (vecteurs) Tout type de donnée peut être organisé en tableau Exemple : t 0 t 1 t 2 t n Caractéristiques d'un tableau : Adresse du 1er élément Nombre d'éléments Type des données contenues M. Deloizy Informatique - Généralités 55 Constantes Données non modifiables Utilisées dans des expressions Exemple : P = 2.0 * PI * Rayon Constantes M. Deloizy Informatique - Généralités 56 28

29 Constantes explicites Valeur écrite explicitement L'écriture indique le type de la constante : 2, -3 : entiers 1.0, 2E4 : virgules flottantes 'z', '2' : caractères "TOTO" : chaîne de caractères M. Deloizy Informatique - Généralités 57 Constantes prédéfinies Utilisées par l'intermédiaire d'un nom de symbole Utilisation identique à constante explicite Avantages : Permet une meilleure lisibilité Facilite la maintenance Évite des écritures & modifications multiples réduit le risque d'erreurs Exemple : constante TVA = Pull_ttc = Pull_ht*(1+TVA) Chemise_ttc = Chemise_ht*(1+TVA) M. Deloizy Informatique - Généralités 58 29

30 Écriture d'un programme Principes de base M. Deloizy Informatique - Généralités 59 Constitution d'un programme Ensemble de fonctions ou procédures Une fonction particulière : démarrage du programme, point d'entrée M. Deloizy Informatique - Généralités 60 30

31 Fonctions Composées d'instructions Exécutées séquentiellement Instructions : Expressions, ex. : y=a+b, y=sin(a) Contrôle de déroulement, ex. : si y<0 alors Utilisation de données : variables ou constantes M. Deloizy Informatique - Généralités 61 Exemple de programme #include <stdio.h> int carre(int x) { int c; c = x*x; return c; } int main() { int v, r; printf("entrer un nombre : "); scanf("%d",&v); r = carre(v); printf("le carré de %d est %d\n",v,r); return 0; } M. Deloizy Informatique - Généralités 62 31

32 Noms des données Règles s'appliquent aux : Variables, constantes Noms de fonction et procédures Débutent par une lettre ou '_' Sont composés de lettres, chiffres et '_' Les lettres ne sont pas accentuées Minuscules et majuscules autorisés, distincts ou non Exemples : Titi, x, t12, _10, _A_, titi M. Deloizy Informatique - Généralités 63 Déclarations Donner un nom aux données utilisées Indiquer le type Indiquer la classe d'allocation Exemple : int a, b, toto; double v, res; char t[10]; static int z; M. Deloizy Informatique - Généralités 64 32

33 Classe d'allocation Façon dont la donnée est créée par le compilateur : Allocation statique : Donnée créée au chargement du programme Emplacement fixe pendant durée d'exécution Valeur laissée précédemment retrouvée à chaque accès Allocation dynamique : Donnée créée lors de la déclaration Valeur initiale aléatoire Donnée détruite en fin d'utilisation M. Deloizy Informatique - Généralités 65 Portée des données Données connues par la totalité du programme ou par une portion seulement : Donnée globale Toutes les fonctions du programme peuvent y accéder Donnée locale Définie pour une portion de programme (par exemple une fonction) Inconnue hors de cette portion M. Deloizy Informatique - Généralités 66 33

34 Règles de portée Deux variables ne peuvent pas avoir le même nom dans la même zone de portée Si une donnée locale porte le même nom qu'une donnée globale, la donnée globale devient inaccessible masquage de la donnée globale M. Deloizy Informatique - Généralités 67 Structures conditionnelles Contrôle du déroulement du programme M. Deloizy Informatique - Généralités 68 34

35 Structure conditionnelle simple Si <expression : booléen> alors finsi if (x<4) { y = 0; z = 2; } x = x+z; Exécuté si x < 4 M. Deloizy Informatique - Généralités 69 Structure conditionnelle alternative Si <expression : booleen> alors sinon finsi if (x<4) { z = 2; Exécuté si x < 4 } else { z = 3; Exécuté si x 4 } x = x+z; M. Deloizy Informatique - Généralités 70 35

36 Structure itérative Tant que Tant que <condition : booléen> faire FinTantQue i = 0; while (i<10) { printf("%d : %d\n", i, t[i]); i = i+1; } printf("%d valeurs.\n",i); Exécuté si i < 10 et re-exécuté tant que i < 10 Valeur de i : 10 M. Deloizy Informatique - Généralités 71 Structure itérative Faire tant que Faire tant que <condition : booléen> do { printf("entrer un nombre : "); scanf("%d",&v); } while (v < 0); printf("valeur : %d\n",v); Exécuté au moins une fois et Re-exécuté tant que v < 0 M. Deloizy Informatique - Généralités 72 36

37 Structure itérative Pour Pour <valeur initiale> jusqu'à <valeur finale> faire FinPour Facilité d'écriture Peut être remplacé par Tant que for(i=0; i<10; i++) { printf("valeur %d : ",i+1); scanf("%d",&t[i]); } M. Deloizy Informatique - Généralités 73 Branchement Aller à Détourner brutalement le déroulement du programme À éviter Manque de lisibilité Pas nécessaire if (x<0) { printf("erreur.\n"); goto fin; } fin: exit(1); M. Deloizy Informatique - Généralités 74 37

38 Instructions M. Deloizy Informatique - Généralités 75 Affectations Transfert de la valeur d'une expression dans une variable Exemple : x = 3+b; transfère (3+b) dans la variable x Variable Expression compatible M. Deloizy Informatique - Généralités 76 38

39 Affectations autorisées Entier Entier Virgule flottante Caractère Virgule flottante Virgule flottante Entier Caractère Caractère Entier Booléen Booléen Adresse Adresse M. Deloizy Informatique - Généralités 77 Expressions Arithmétiques ou logiques Utilisation d'opérateurs : Lecture de gauche à droite Prise en compte des priorités Ex. : y = 2*a + 3*b y = (2*a) + (3*b) Utilisation de ( ) pour forcer la priorité Priorités classiques : * et / ont la même priorité - et + ont la même priorité * et / sont prioritaires sur + et Les opérateurs logiques utilisent l'algèbre de Boole M. Deloizy Informatique - Généralités 78 39

40 Exemple : y a / 2/ x 3* b / 2 Priorités Quand appel de fonction : y Arguments évalués avant l'appel Fonction variable calculée Ex. : y = 2 * sin(x) y = sin(a + acos(b)*2) a 3 b 2 x 2 M. Deloizy Informatique - Généralités 79 Opérateurs logiques Utilisés dans les structures conditionnelles Utilisent l'algèbre de Boole ==,!=, <, >, <=, >=, &&,,! Exemple : if(!( (x<'a') (x>'z') ) ) A B A B A B if( (x>='a') && (x<='z') ) M. Deloizy Informatique - Généralités 80 40

41 Fonctions M. Deloizy Informatique - Généralités 81 Utilité des fonctions Décomposer un problème complexe en sous problèmes plus simples Analyse descendante Éviter la répétition de lignes de programmes Améliorer la lisibilité Faciliter la maintenance (constitution de bibliothèques) Renvoie une valeur dépendant de paramètres transmis Fonction qui ne renvoie rien : Procédure, sous-programme M. Deloizy Informatique - Généralités 82 41

42 À définir : Définition d'une fonction Nom de la fonction Type de la valeur renvoyée Type des paramètres transmis Exemples : Utilisation : double sin(double x) y = sin(3.0); void clrscr(void) clrscr( ); double pow(double y, double x) y = pow(2.0, 0.5)/2.0; M. Deloizy Informatique - Généralités 83 Fonctions et paramètres Lors de l'appel d'une fonction, les paramètres : Sont tout d'abord évalués Sont transmis dans l'ordre de leur écriture le type doit être compatible Exemple : void fct(int a, double x) { } a, x : variables locales à fct fct(3,2.0*sin(1.0)); M. Deloizy Informatique - Généralités 84 42

43 Transmission par valeur La valeur du paramètre est recopiée Valeur initiale du paramètre (variable locale de la fonction) int somme(int a, int b) { int s; s = a+b; (15) return s; } X = somme(2, 5*3); M. Deloizy Informatique - Généralités 85 Inconvénients de la transmission par valeur Paramètre encombrant (ex. : tableau) Une fonction ne renvoie qu'une valeur M. Deloizy Informatique - Généralités 86 43

44 Transmission par référence On transmet l'adresse du paramètre plutôt que sa valeur utilisation d'un pointeur (type adresse) M. Deloizy Informatique - Généralités 87 Pointeurs int v; int *p; p = &v; v est un entier p est l'adresse d'un entier (*p : entier) p prend comme valeur l'adresse de v Pour accéder à v, on utilise la notation *p signifie : l'entier pointé par p (ici : v) Pour charger 5 dans v, on peut donc écrire : v = 5 *p = 5 *(&v) = 5 M. Deloizy Informatique - Généralités 88 44

45 Pointeurs et fonctions int ProdQuot(int a, int b, int *p, int *q) { *p = a * b; if (b == 0) return 0; *q = a / b; return 1; } int main( ) { int u, v, x; x = 3; if (ProdQuot(x,2,&u,&v) == 0) { printf("%d x 2 = %d\n", x, u); } else { printf("%d x 2 = %d et %d / 2 = %d\n",x,u,x,v); } return 0; } M. Deloizy Informatique - Généralités 89 Fonctions réentrantes Fonction exécutée plusieurs fois simultanément appelée de nouveau pendant son exécution Systèmes multi-tâches Interruptions Contrainte : Pas de donnée statique Utilisation de données dynamiques Nouvelles données à chaque déclaration Données propres à chaque appel de fonction M. Deloizy Informatique - Généralités 90 45

46 Fonctions récursives Fonction qui se rappelle elle-même L'appel peut être direct ou non Particularités : Fonctions réentrantes Un point de sortie doit être prévu Intérêt : Écriture condensée et rapide de programmes Inconvénients : Peu efficace à l'exécution Gourmand en ressources M. Deloizy Informatique - Généralités 91 Langage C M. Deloizy Informatique - Généralités 92 46

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

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

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 prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative

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

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

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

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

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

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

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

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

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie 1 Professeur : Haouati Abdelali CPGE Lycée Omar Ibn Lkhattab - Meknès www.haouati.com haouaticpge@gmail.com Partie I : Généralités et algorithmique de base 1. Environnement matériel et logiciel

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

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence

Algorithmique & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence Licence Algorithmique & Langage C Paternité - Pas d'utilisation Commerciale Partage des Conditions Initiales à l'identique 2.0 France Vous êtes libres : * de reproduire, distribuer et communiquer cette

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 cordeau@onera.fr 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

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

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

Informatique Générale

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

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

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

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

Plus en détail

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 elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

Annexe : La Programmation Informatique

Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de

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

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel) Algorithmes et Programmes Introduction à l informatiquel! Vie d'un programme! Algorithme! Programmation : le langage! Exécution et test des programmes Chapitre : Algorithmes et Programmes 2 Cycle de vie

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) mugwaneza@univmed.fr I. Représentation des nombres Codage et représentation de l'information Information externe formats

Plus en détail

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Base de l'informatique Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Généralité Comment fonctionne un ordinateur? Nous définirons 3 couches Le matériel

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

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

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

Conception de circuits numériques et architecture des ordinateurs

Conception de circuits numériques et architecture des ordinateurs Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

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

I00 Éléments d architecture

I00 Éléments d architecture I00 I Exemples d ordinateur Pour les informaticiens, différentes machines de la vie courante sont des ordinateurs : par exemple les ordinateurs portables, les ordinateurs fixes, mais aussi les supercalculateurs,

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

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

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul

Plus en détail

Introduction à l informatique en BCPST

Introduction à l informatique en BCPST Introduction à l informatique en BCPST Alexandre Benoit BCPST L informatique en BCPST «L enseignement de l informatique en classes préparatoires de la filière BCPST a pour objectif d introduire puis de

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

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

1 Introduction au codage

1 Introduction au codage CélestineOscarDésiréAnatoleGastonEugène 1 Introduction au codage 1.1 Les ensembles L ensemble de tout les ensembles est Dieu lui-même. Kantor Ensemble des parties d un ensemble désigne l ensemble des sous-ensembles

Plus en détail

UE C avancé cours 1: introduction et révisions

UE C avancé cours 1: introduction et révisions Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple

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

Chapitre 10 Arithmétique réelle

Chapitre 10 Arithmétique réelle Chapitre 10 Arithmétique réelle Jean Privat Université du Québec à Montréal INF2170 Organisation des ordinateurs et assembleur Automne 2013 Jean Privat (UQAM) 10 Arithmétique réelle INF2170 Automne 2013

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

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

Plus en détail

Programmation en langage C

Programmation en langage C Programmation en langage C Anne CANTEAUT INRIA - projet CODES B.P. 105 78153 Le Chesnay Cedex Anne.Canteaut@inria.fr http://www-rocq.inria.fr/codes/anne.canteaut/cours C 2 Table des matières 3 Table des

Plus en détail

SYSTÈME DE GESTION DE FICHIERS

SYSTÈME DE GESTION DE FICHIERS SYSTÈME DE GESTION DE FICHIERS - DISQUE 1 Les couches logiciels réponse requête Requêtes E/S Système E/S Pilote E/S Interruptions utilisateur traitement S.E. commandes S.E. S.E. matériel Contrôleur E/S

Plus en détail

ALGORITHMIQUE ET PROGRAMMATION En C

ALGORITHMIQUE ET PROGRAMMATION En C Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2

Plus en détail

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE C.Crochepeyre MPS_SGF 2000-20001 Diapason 1 Les couches logiciels réponse SGF requête matériel matériel Requêtes E/S Système E/S Pilote E/S Interruptions Contrôleur

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

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

Initiation. àl algorithmique et à la programmation. en C

Initiation. àl algorithmique et à la programmation. en C Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,

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 ibr_guelzim@yahoo.fr ibrahimguelzim.atspace.co.uk

Plus en détail

Langage Éric Guérin 5 octobre 2010

Langage Éric Guérin 5 octobre 2010 Langage Éric Guérin 5 octobre 2010 Langage C TABLE DES MATIÈRES Table des matières 1 Introduction 7 1.1 Historique........................................... 7 1.2 Architecture matérielle....................................

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

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

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

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

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

SUPPORT DE COURS. Langage C

SUPPORT DE COURS. Langage C Dpt Informatique 2010-2011 SUPPORT DE COURS Langage C Semestre 1 par : «CaDePe» Marie-Françoise Canut Marianne de Michiel André Péninou Table des Matières 1 Généralités...8 1.1 Introduction aux langages

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 Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

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

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

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 florence.henry@obspm.fr Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

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

Structure de base d un ordinateur

Structure de base d un ordinateur Structure de base d un ordinateur 1-Définition de l ordinateur L ordinateur est un appareil électronique programmable qui traite automatiquement les informations. Il est constitué de l unité centrale et

Plus en détail

Architecture matérielle des systèmes informatiques

Architecture matérielle des systèmes informatiques Architecture matérielle des systèmes informatiques IDEC, Renens. Version novembre 2003. Avertissement : ce support de cours n est pas destiné à l autoformation et doit impérativement être complété par

Plus en détail

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université

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

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

Un ordinateur, c est quoi?

Un ordinateur, c est quoi? B-A.BA Un ordinateur, c est quoi? Un ordinateur, c est quoi? Un ordinateur est une machine dotée d'une unité de traitement lui permettant d'exécuter des programmes enregistrés. C'est un ensemble de circuits

Plus en détail

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS CCS Sommaire Généralités sur le langage. 2 Structure d un programme en C.. 3 Les constantes et équivalences.. 4 Les variables...

Plus en détail

MÉTHODES NUMERIQUES. Cours. Licence de Physique Année Universitaire : 2010-2011 Licence Chimie, parcours Physique. Semestre S3

MÉTHODES NUMERIQUES. Cours. Licence de Physique Année Universitaire : 2010-2011 Licence Chimie, parcours Physique. Semestre S3 Licence de Physique Année Universitaire : 2010-2011 Licence Chimie, parcours Physique Semestre S3 Cours MÉTHODES NUMERIQUES Chargé du Cours : M. GAGOU Yaovi E-mail :.gagou@u-picardie.fr URL : http://www.u-picardie.fr/gagou

Plus en détail

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et

Plus en détail

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Chapitre V : La gestion de la mémoire Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping Introduction Plusieurs dizaines de processus doivent se partager

Plus en détail

Conservation des documents numériques

Conservation des documents numériques Conservation des documents numériques Qu'est ce qu'un document numérique? Matthieu GIOUX matthieu.gioux@bnf.fr Contexte de la préservation des documents numériques Une croissance en expansion Développement

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

Les fichiers. Chapitre 4

Les fichiers. Chapitre 4 Chapitre 4 Les fichiers Jusqu à maintenant tous les programmes que nous avons conçus travaillaient sur des données qui étaient perdues après chaque session de travail. On peut cependant, c est bien naturel,

Plus en détail

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, Fabienne.Boyer@imag.fr 6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure

Plus en détail

Cours 14 Les fichiers

Cours 14 Les fichiers Cours 14 Les fichiers F. Gayral 1 Fichier : définition /media/travaux/documents/fgenseignement/java1/courstpsfgfc/14-fichiers/voirtypefichiers Fichier = ensemble d informations codées et stockées sur une

Plus en détail

Éléments d'architecture des ordinateurs

Éléments d'architecture des ordinateurs Chapitre 1 Éléments d'architecture des ordinateurs Machines take me by surprise with great frequency. Alan Turing 1.1 Le Hardware Avant d'attaquer la programmation, il est bon d'avoir quelques connaissances

Plus en détail

Cours 3 : L'ordinateur

Cours 3 : L'ordinateur Cours 3 : L'ordinateur Abdelkrim Zehioua 2éme année Licence Gestion Faculté des sciences Économiques et sciences de Gestion Université A, Mehri - Constantine 2 Plan du cours 1.Définitions de l'ordinateur

Plus en détail

Leçon 1 : Les principaux composants d un ordinateur

Leçon 1 : Les principaux composants d un ordinateur Chapitre 2 Architecture d un ordinateur Leçon 1 : Les principaux composants d un ordinateur Les objectifs : o Identifier les principaux composants d un micro-ordinateur. o Connaître les caractéristiques

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

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

Architecture des ordinateurs Introduction à l informatique

Architecture des ordinateurs Introduction à l informatique Architecture des ordinateurs Introduction à l informatique 17 septembre 2004 1 2 3 4 5 6 Les interrupteurs... 0V 5V Ce sont des composants électroniques qui laissent pser un courant principal lorsque la

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

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

Le codage informatique

Le codage informatique Outils de Bureautique Le codage informatique (exemple : du binaire au traitement de texte) PLAN 3) Le codage binaire 4) Représentation physique des bits 5) Le bit est un peu court... 6) Codage de texte

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

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

Claude Delannoy. 3 e édition C++

Claude Delannoy. 3 e édition C++ Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre

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

2 Comment fonctionne un ordinateur, dans les grandes lignes

2 Comment fonctionne un ordinateur, dans les grandes lignes Programmation 1 Cours n 1 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot Les notes de cours et les feuilles de TD sont disponibles (avec un peu de retard par rapport au déroulement du cours)

Plus en détail