Informatique 1ère Année

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

Download "Informatique 1ère Année 2012-2013"

Transcription

1 Eléments du langage C 1. Présentation Le langage C est un langage évolué et structuré, assez proche du langage machine destiné à des applications de contrôle de processus (gestion d'entrées/sorties, applications temps réel...). Les compilateurs C possèdent les taux d'expansion les plus faibles de tous les langages évolués (rapport entre la quantité de codes machine générée par le compilateur et la quantité de codes machine générée par l'assembleur et ce pour une même application). Le langage C possède assez peu d'instructions, il fait par contre appel à des bibliothèques, fournies en plus ou moins grand nombre avec ce compilateur. Par exemples : - math.h : bibliothèque de fonctions mathématiques. - stdio.h : bibliothèque d'entrées/sorties standard. 2. Édition, mise au point et exécution d'un programme a. Edition du programme source : à l'aide d'un éditeur (traitement de textes). le nom du fichier contient l'extension.cpp, par exemple: EXI_1.CP* (menu«édit»). b. compilation du programme source : c'est à dire création des codes machine destinés au microprocesseur utilisé. Le compilateur indique les erreurs de système mais ignore les fonctionsbibliothèque appelées par le programme. c. Le compilateur génère un fichier binaire appelé fichier objet: EXI_1.OBJ (commande «compile»). d. Editions de liens: Le code machine des fonctions-bibliothèque est chargé, création d'un fichier binaire appelé fichier exécutable: EXI_1.EXE (commande «build all»). e. exécution du programme (commande «run»). Les compilateurs permettent en général de construire des programmes composés de plusieurs fichiers sources, d'ajouter à un programme des unités déjà compilées Exercice I-1 : Editer EX_1.CPP, compiler et exécuter le programme suivant 1

2 Le langage C distingue les minuscules, des majuscules. les mots réservés au langage C doivent être écrits en minuscules. On a introduit dans ce programme la notion d'interface homme/machine (IHM): - L utilisateur visualise une information sur l'écran, - L'utilisateur, par une action sur le clavier, fournit une information au programme. 4. Exercice I-2 : Modifier le programme comme ci-dessous, puis le tester 5. Les différents types de variables Les entiers : Le langage C distingue plusieurs types d'entiers : Les réels : Le langage C distingue 2 types de réels : 2

3 6. Les initialisations Le langage C permet l'initialisation des variables dans la zone des déclarations : Cette règle s'applique à tous les types : char, int, float Sortie de nombres ou de textes à l'écran : la fonction printf Ce n'est pas une instruction du langage C, mais une fonction de la bibliothèque stdio.h. Exemple: affichage d'un texte: printf ("BONJOUR"); /* pas de retour à la ligne du curseur après l'affichage, */ printf ("BO*JOUR\n"); /* affichage du texte, puis retour à la ligne du curseur. */ La fonction printf exige l'utilisation de formats de sortie, avec la structure suivante: printf("%format",nom_de_variable); Les formats de sortie sont: %d: affichage en décimal (entiers de type int). %x: affichage en hexadécimal (entiers de type int). %f: affichage des nombres réels (le type float). %c: affichage d un caractère. Exercice I-3 : Affichage d'une variable de type char: Tester le programme suivant et conclure. Dans un deuxième temps, le modifier ce programme pour améliorer l'interface utilisateur. 3

4 Le langage C permet aussi un affichage multiple de structure: printf ("format 1 format 2... format n ",variable 1,variable 2,...,variable n ); Exercice I-4 : Tester le *rograme suivant et conclure: Autres fonctions de sorties : - Affichage d'un caractère : La fonction putchar permet d'afficher un caractère: c étant une variable de type char, l'écriture putchar(c); est équivalente à printf ("%c\n",c); - Affichage d'un texte : La fonction puts permet d'afficher un texte: l'écriture puts("bonjour"); est équivalente à printf ("bonjour\n"); Il vaut mieux utiliser puts et putchar si cela est possible, ces fonctions, non formatées, sont d'exécution plus rapide, et nécessitent moins de place en mémoire lors de leur chargement. 8. Les opérateurs Opérateurs arithmétiques sur les réels : + -*/ avec la hiérarchie habituelle. Opérateurs arithmétiques sur les entiers : + - * / (quotient de la division) % (reste de la division) avec la hiérarchie habituelle. Opérateurs logiques sur les entiers :& ET, OU, ^ OU EXClUSIF, ~ COMPLEMENT A UN, <<DECALAGE A GAUCHE, >>DECALAGE A DROITE. Le langage C autorise des écritures simplifiées pour l'incrémentation et la décrémentation de variables. Le langage C autorise des écritures simplifiées lorsqu'une même variable est utilisée de chaque coté du signe = d'une affectation. Ces écritures sont à éviter lorsque l'on débute l'étude du langage C car elles nuisent à la lisibilité du programme. 4

5 9. Les déclarations de constantes Le langage C autorise 2 méthodes pour définir des constantes. 1ere méthode : déclaration d'une variable, dont la valeur sera constante pour tout le programme: Dans ce cas, le compilateur réserve de la place en mémoire, pour la variable pi, mais dont on ne peut changer la valeur. 2ème méthode : définition d'un symbole à l'aide de la directive de compilation #define. 10. Les opérateurs logiques 5

6 11. SAISIE DE NOMBRES ET DE CARACTERES AU CLAVIER A. La fonction getch La fonction getch, appartenant à la bibliothèque conio.h permet la saisie clavier d'un caractère alphanumérique, sans écho écran. La saisie s'arrête dès que le caractère a été frappé. On peut utiliser getch de deux façons: - sans retour de variable au programme : Cela sert généralement comme signal de l utilisateur. Exemple : - avec retour de variable au programme (récupérer un caractère alphanumérique dans une variable) Exemple : B. La fonction scanf La fonction scanf, appartenant à la bibliothèque stdio.h, permet la saisie clavier de n'importe quel type de variable. Les variables à saisir sont formatées, le nom de la variable est précédé du symbole & désignant l'adresse de la variable. La saisie s'arrête avec "ENTER" (c'est à dire retour chariot), les éléments saisis s'affichent à l'écran (saisie avec écho écran). Tout les éléments saisis après un caractère d'espacement (espace, tabulation) sont ignorés. Exemples : 6

7 Remarque : Si l'utilisateur ne respecte pas le format indiqué dans scanf, la saisie est ignorée. Aucune erreur n'est générée. 12. L'instruction SI ALORS SINON Il s'agit de l'instruction altérnative Si A. La structure complète SI Expression ALORS Bloc 1 d Instructions SINON Bloc 2 d instructions L expression (condition) peut être un test de relation (==, <, <=, >, >=,!=), un test logique (&&, et!) ou la combinaison de ces tests. Syntaxe en C : B. La structure réduite SI Expression ALORS FSI Bloc d Instructions 7

8 Syntaxe en C : Remarque : Les { } ne sont pas nécessaires lorsque les blocs ne comportent qu'une seule instruction. 13. L'instruction Pour..Faire Il s'agit de l'instruction itérative Pour For compteur valeur initiale à valeur finale faire Bloc d Instructions Le compteur est une variable entière. Syntaxe en C : Remarques: Les {} ne sont pas nécessaires lorsque le bloc ne comporte qu'une seule instruction. Les 3 instructions du for ne portent pas forcément sur la même variable. Une instruction peut être omise, mais pas les ; Exemple : Le programme ci-dessous est une boucle infinie (répétition infinie du bloc d'instructions). 8

9 14. L'instruction itérative Tant Que.. Faire Tant Que Condition faire Bloc d Instructions La condition est une expression logique et le bloc d instructions sera répété tant que la condition est Vraie. Le test se fait d'abord, le bloc d'instructions n'est pas forcément exécuté ==> le nombre de répétition 0. Syntaxe en C : Remarques: Les {} ne sont pas nécessaires lorsque le bloc ne comporte qu'une seule instruction. On peut rencontrer la construction suivante: while (expression); terminée par un ; et sans la présence du bloc d'instructions. Cette construction signifie: "tant que l'expression est vraie attendre". Si la condition est toujours vraie, le bloc sera répété infiniment. 15. L'instruction itérative Répéter.. Jusqu à Répéter Bloc d Instructions Jusqu à Condition La condition est une expression logique et le bloc d instructions est répété tant que la condition est Fausse. Le test se faisant après, le bloc est exécuté au moins une fois ==> le nombre de répétition >0. 9

10 Syntaxe en C : Notez bien la présence du point-virgule «;» tout à la fin! Remarques: Les {} ne sont pas nécessaires lorsque le bloc ne comporte qu'une seule instruction. En langage C (contrairement à l algorithmique et en Pascal), le bloc d instruction est répété tant que la condition est vrai. Si la condition est toujours vraie, le bloc sera répété infiniment. 16. L'instruction alternative Cas.. Parmi Cas Expression Parmi Valeur 1 : Bloc 1 d Instructions Valeur 2 : Bloc 2 d Instructions Valeur n : Bloc n d Instructions Sinon Bloc d Instructions - Cette instruction peut être vue comme une superposition d instructions Si.. Sinon. - L expression peut être arithmétique ou logique ; et le type des valeurs doit être le même type de l expression. 10

11 Syntaxe en C : Remarques: Le bloc "default" n'est pas obligatoire. En langage C (contrairement à l algorithmique et en Pascal), le bloc d instruction est répété tant que la condition est vrai. Complément sur les conditions : En langage C, une expression nulle de type entier (int) est fausse, une expression non nulle de type entier (int) est vraie. Par conséquent, les deux portions de programmes suivants sont équivalentes 1) Et 2) Et 11

12 17. Les tableaux : La déclaration d un tableau : - Comme les variables d'un tableau doivent être de même type, on doit préciser ce type au moment de la déclaration du tableau. De même, on précise lors de la déclaration du tableau sa capacité ou taille (le nombre de variables qu'il contient). La syntaxe d une déclaration est : <type> <nom_tableau>[<taille>] ; Exemple : int T[ 4 ]; //déclare un tableau T contenant 4 variables de type int. - On peut aussi déclarer un tableau multidimensionnel (dans lequel les éléments des tableaux sont aussi des tableaux). La déclaration d un tableau avec un nombre quelconque d indices suit la syntaxe suivante : <type> < nom> [ <taille1> ][<taille2>]...[<taillen> ]; La déclaration avec initialisation d un tableau : - Il est possible d'initialiser les éléments d'un tableau à la déclaration: <type> <nom_tableau>[<taille >] = <valeurs d initialisation >; Telle que les valeurs d'initialisation sont écris entre accolades (par ordre croissant d'indice) et séparés par des virgules. La syntaxe générale des valeurs d'initialisation est donc : <type> <nom>[<taille >] = {<valeur_0 >, <valeur_1 >,..., <valeur_n>}; On peut aussi écrire : <type> <nom>[] = {<valeur_0 >, <valeur_1 >,..., <valeur_n>}; Exemple : on crée un tableau contenant les 5 premiers nombres impairs de la sorte : int T[ 5 ] = {1, 3, 5, 7, 9} ; - Dans le cas d un tableau multidimensionnel, les valeurs d initialisation sont des sous-listes indiquées à leur tour avec des accolades séparées par des points-virgules. Dans le cas échéant, les éléments non initialisés sont remplis par des zéros. Exemple : les déclarations : int t1[4][4] = {{ 1, 2, 3 },{ 4, 5, 6 },{ 7, 8, 9 }}; int t2[4][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; allouent et représentent dans l ordre les deux tableaux de la figure suivante : Accès aux éléments d un tableau : Les éléments d'un tableau à n éléments sont indicés de 0 à n-1. On note T[i] l'élément d'indice i du tableau T. 12

13 18. Les chaines de caractères : - en langage C, il n'existe pas de variable de type chaîne de caractères. En effet, les chaines de caractères sont des tableaux de caractères à une dimension (suite d'octets et chaque caractère est codé en ASCII). Leur manipulation est donc analogue à un tableau à une dimension La déclaration d une chaine de caractères : La déclaration d une chaine de caractères n est autre que la déclaration d un tableau de caractères : Char <nom_chaine>[<taille_chaine>] ; Le compilateur réserve (taille-1) cases en mémoire pour la chaîne de caractères: En effet, il ajoute toujours le caractère NUL ('\0') à la fin de la chaîne en mémoire L initialisation: - On initialise une chaine à la déclaration, et seulement à la déclaration de la sorte : char <nom_chaine>[<taille_chaine>] = <valeurs d initialisation >; Où la valeur d'initialisation contient la juxtaposition de caractères formant la chaine entourée de guillemets (double quottes). Exemple : char c [ 50 ] = "Toto"; Cette instruction déclare une chaine de caractères c initialisé à "Toto". Les 5 premiers éléments du tableau seront occupés par les 4 caractères de la chaine ainsi que par le caractère nul, les autres contiendront des valeurs non significatives. Observez bien la déclaration avec initialisation suivante : char c [ 4 ] = "Toto"; Cette déclaration engendrera un warning à la compilation et probablement une erreur à l'exécution car l'affectation du caractère nul à la 5émet position du tableau donnera lieu à un débordement d'indice ENTREE-SORTIE des chaines de caractères: - pour la lecture et l affichage des chaines de caractères, on utilise le format %s dans printf et scanf : printf("%s",ch); scanf("%s",ch); Remarquons qu ici on ne met pas de signe «&». Il existe des fonctions spécifiques telles que gets(ch) pour l'entrée et puts(ch) pour l'impression (l affichage). Remarque : scanf ne permet pas la saisie d'une chaîne comportant des espaces: les caractères saisis à partir de l'espace ne sont pas pris en compte (l'espace est un délimiteur au même titre que nul). Pour saisir une chaîne de type "il fait beau", il faut utiliser gets. 13

14 A l'issue de la saisie d'une chaîne de caractères, le compilateur ajoute '\0' en mémoire après le dernier caractère Fonctions de manipulation de chaines: - Les bibliothèques fournies avec les compilateurs contiennent de nombreuses fonctions de traitement des chaînes de caractères. En BORLAND C, elles appartiennent aux bibliothèques <string.h> ou <stdlib.h>. En voici quelques exemples: Générales <string.h> Comparaison <string.h> Renvoie un nombre: - positif si la chaîne1 est supérieure à la chaine2 (au sens de l'ordre alphabétique) - négatif si la chaine1 est inférieure à la chaîne2 - nul si les chaînes sot identiques. Copie <string.h> Elle recopie chaine2 dans chaine1 et renvoie cette dernière (chaine1). Recherche <string.h> Ces fonctions rendent l adresse (l indice de début) de la chaine recherchée si elle existe, null sinon (null prend la valeur 0 ou Faux). Conversions <stdlib.h> 14

15 19. Les enregistrements (structures): - Une structure est un ensemble hétérogène permettant de définir des objets de nature et de type différents. Seulement pour ces variables structurées on peut accéder aux champs par l'opérateur de champ: «.» placé entre le nom de la variable structurée et le champ Déclaration : Méthode 1 La déclaration est faite avant toute utilisation de cette structure et en dehors de toute fonction suivant la syntaxe suivante: struct nom_structure { Liste de déclarations; }; Les objets de la liste de déclaration sont appelés champs. Ils peuvent être des vecteurs, des variables, des pointeurs ou d'autres structures qui doivent être déclarés précédemment. Lors de la définition d'une structure, des variables dites structurées peuvent être déclarés, qui seront du type associé à la structure. Exemple : Déclaration et utilisation de deux variables f1 et f2 de la structure nommée «fiche» Déclaration : Méthode 2 La syntaxe suivante permet de définir un nouveau type de données (tout comme les types de base ; int, float, char,etc.). et donc, on peut par la suite déclarer des variables de ce type sans passer par le mot clé struct. Typedef struct { Liste de déclarations; } nom_structure; Exemple : reprise de l exemple de la première méthode. 15

16 Attention, l'opérateur d'accès au champ «.» est prioritaire sur tous les autres opérateurs unaires, binaires et n-aires! 20. Les fichiers : Un fichier est un ensemble d informations stockées sur une mémoire de masse (disque dur, disquette, CD- ROM). En C, un fichier est une suite d'octets. Les informations contenues dans le fichier ne sont pas forcément de même type (un char, un int, une structure...) un pointeur fournit l'adresse d'une information quelconque. On distingue généralement deux types d accès : 1- Accès séquentiel (possible sur tout support) : - Pas de cellule vide. - On accède à une cellule quelconque en se déplaçant (via un pointeur), depuis la cellule de départ. - On ne peut pas détruire une cellule. - On peut par contre tronquer la fin du fichier. - On peut ajouter une cellule à la fin. 2- Accès direct (RANDOM I/O) (Utilisé sur disques, disquettes, CD-ROM). - Cellule vide possible. - On peut directement accéder à une cellule. - On peut modifier (voir détruire) n'importe quelle cellule. Il existe d'autre part deux façons de coder ces informations stockées dans un fichier : 16

17 1- En binaire : Fichier dit «binaire», les informations sont codées telles qu elles sont. Ce sont en général des fichiers de nombres. Ils ne sont pas listables. 2- en ACSII : Fichier dit «texte» ou aussi «formaté», les informations sont codées en ASCII. Ces fichiers sont listables. Le dernier octet de ces fichiers est EOF (caractère ASCII spécifique) Déclaration d un fichier La déclaration des fichiers doit figurer AVANT la déclaration de toute autre variable. Elle se fait en définissant un pointeur. Il s'agit de l'adresse du début du fichier. Syntaxe: FILE* fichier; /* majuscules obligatoires pour FILE */ FILE est une structure prédéfinie servant à déclarer la mémoire tampon dans <stdio.h> Opérations sur les fichiers Les opérations possibles avec les fichiers sont: Créer - Ouvrir - Fermer - Lire - Ecrire - Détruire et Renommer. La plupart des fonctions permettant la manipulation des fichiers sont rangées dans la bibliothèque standard <STDIO.H>, certaines dans la bibliothèque <IO.H> pour le BORLAND C++. Le langage C ne distingue pas les fichiers d accès séquentiel des fichiers à accès direct, certaines fonctions de la bibliothèque livrée avec le compilateur permettent l'accès direct. Les fonctions standards sont des fonctions d'accès séquentiel Ouverture d un fichier fopen permet, comme son nom l'indique, d'ouvrir un fichier. Sa syntaxe est : fichier = fopen (char*path, const char *mode); - Path : est une chaine de caractère contenant le chemin (relatif ou absolu) et le nom du fichier (celui figurant sur le disque, par exemple: a :\toto.dat ).. Si le chier est dans le répertoire dans lequel s'exécute le programme, alors le nom du fichier sutffit. - mode est une chaine de caractère contenant "r" pour ouvrir le chier en mode lecture, "w" en mode écriture, "r+" en mode lecture/écriture sur un fichier existant,"a+" en mode lecture/écriture sur un fichier existant avec positionnement du pointeur sur la fin du fichier. fopen renvoie un pointeur de code NULL si le fichier ne peut être ouvert. Pour cela, on opte généralement à executer plusieurs tentatives pour l ouverture d un fichier. Exemple : Do fichier = fopen ( c:toto.dat, r ); While (fichier==null); 17

18 Remarque : à l ouverture d un fichier, le pointeur est positionné au début du fichier (sauf«a+») Fermeture d un fichier fclose permet, comme son nom l'indique, d'ouvrir un fichier. Sa syntaxe est : fclose (char* fichier) ; Path : est le chemin (relatif ou absolu) plus le nom du fichier. Remarque : la fin du processus ferme automatiquement tous les fichiers ouverts Lecture et Ecriture dans un fichier - Il existe plusieurs façons de lire dans un fichier : caractère par caractère, ligne par ligne ou par paquets de caractères. Chaque lecture se faisant à l'aide d'une fonction appropriée. Lors d'un traitement se faisant à partir d'une lecture dans un chier, on appelle de façon itérée une fonction de lecture faisant avancer le pointeur (curseur) dans un chier jusqu'a ce que la fin du chier soit atteinte. L'écriture fonctionne de façon analogue, à un détail prés : il est inutile d écrire le caractère de fin de fichier, il est ajoute automatiquement lors du fclose. Caractère par caractère : - La fonction int fgetc(file* fichier) retourne un caractère lu dans le fichier f. Bien que le caractère lu soit un octet, la fonction retourne son code ASCII (int), d où la nécessité de conversion en cas de besoin. Le caractère EOF indique que la fin du fichier a été atteinte. Exemple : - de la même manière, on peut écrire un caractère dans un fichier en utilisant la fonction : fputc(int c, FILE* stream); Par chaines de caractères : Les deux fonctions char* fgets(char *s, int size, FILE *fichier) et int fputs(const char *s, FILE *fichier) permettent de lire et d'écrire des chaines de caractères dans des fichiers. Pour fgets, il s agit de la lecture de n caractères du fichier et place le résultat dans la chaine s. La lecture s'arrête si la fin du chier est atteinte, ou si un caractère '\n' est lu, ou si (n 1) caractères ont été lus. Exemple : ce programme est équivalent au programme ci-dessus. 18

19 Par paquets : Les deux fonctions fread(void *ptr, int t, int n, FILE *fichier) et fwrite(void *ptr, int taille_paquet, int nombre_paquet, FILE *fichier) sont très utiles lorsque l'on veut sauvegarder un tableau dans un fichier, ou recopier un fichier dans un tableau. La fonction fread lit à partir du fichier n paquets de taille t et les range à partir de l adresse ptr. idem pour la fonction fwrite qui effectue l écriture dans le fichier de n paquets de taille t à partir de l adresse ptr. Ces deux fonctions retournent le nombre de blocs écrits (ou lus) et le pointeur du fichier avance de (n x t) octets. Exemple : Lecture et Ecriture dans un fichier formaté - Les deux fonctions int fscanf(file* fichier, char* format, liste d'adresses) et int fprintf(file* fichier, char* format, liste d'expressions) sont utilisées lorsque l'on veut lire ou écrire dans un fichier formaté (texte ou ASCII). Exemple : Autres opérations sur les fichiers - Détruire un fichier : en utilisant remove (char*path); - Renommer un fichier : rename(char *oldpath, char *newpath); - Positionner le pointeur au début du fichier : void rewind (FILE*path); 19

20 - Positionner le pointeur à une position donnée : int fseek(file* fichier, int n, int direction) ; elle déplace le pointeur de n cases selon la direction : 0 : à partir du début du fichier. 1 : à partir de la position courante du pointeur. 3 : en arrière, à partir de la fin du fichier. - Tester la fin de fichier : int feof(file *fichier); Cette fonction retourne une valeur non nulle si la fin de fichier est atteinte. Elle permet donc de distinguer une erreur de lecture ou d'écriture d'une fin de fichier Gestion des erreurs - fopen retourne le pointeur NUL si erreur (Exemple: impossibilité d'ouvrir le fichier). - fgets retourne le pointeur NULL en cas d'erreur ou si la fin du fichier est atteinte. - La fonction int ferror(file* fichier) retourne 1 si une erreur est apparue lors d une manipulation de fichier, 0 dans le cas contraire. 21. Les fonctions et les procédures (modules ou sous-programmes) : -Une fonction est un sous-programme qui effectue un travail bien précis, à laquelle on passe (généralement) des données et qui retourne (le plus souvent) une valeur. Cette capacité nous permet de créer des routines indépendantes qui pourront être appelées depuis d'autres fonctions. - L'imbrication de sous-programmes n'est pas autorisée en C: une fonction ou une procédure ne peut pas être déclarée à l'intérieur d'une autre fonction ou procédure. Par contre, elle peut appeler une autre fonction ou procédure. Cette dernière doit être déclarée avant celle qui l'appelle. - Une variable connue uniquement à l intérieur d une fonction (ou procédure) ou de main() est une variable locale. Ces variables ne sont accessibles que dans le corps de la fonction ou la procédure, cela signifie qu elles naissent au moment de leur déclaration et qu'elles sont détruites une fois la dernière instruction de la procédure (ou fonction) exécutée. - Une variable connue de tout le programme est une variable globale Les procédures Comme annoncé précédemment, la déclaration ou définition d une procédure doit être avant tout programme principal (main) et tout autre module appelant cette procédure. Cette définition se fait en utilisant le mot clé void et la syntaxe suivante : 20

21 Les variables déclarées ici sont des variables locales, et elles ne sont pas reconnues en dehors de la procédure (elles peuvent être de type : int, float, char, struct, array, file,etc.). Une procédure peut être passante d arguments (ou paramètres) ou pas. Dans l exemple ci-dessous la procédure carre n a pas de passage d argument. Cependant, la procédure ech possède deux arguments entiers en entrée (x et y). Parmi ces arguments, on peut avoir des arguments d entrées et des arguments de sorties. Cependant, les arguments de sorties doivent être passés comme adresses et déclarées comme pointeurs. 21

22 Une procédure déjà déclarée devient une nouvelle instruction, il suffit pour l'exécuter d'utiliser son nom. Par exemple, pour exécuter (on dit aussi appeler ou invoquer) la procédure carre, il suffit d'écrire carre (). L exemple ci-dessous fait appel aux deux procédures déclarées ci-dessus Les fonctions Une fonction n est d autre qu une procédure renvoyant une seul valeur. Lors de sa définition on doit spécifier le type de cette valeur retournée qui lui est aussi le type de retour de la fonction? la valeur doit être renvoyée en utilisant le mot clé return et la syntaxe suivante : Pour faire appel à une fonction, il suffit d écrire son nom, de lui donner ses arguments et bien sur mettre son résultat dans une autre variable (affectation) Remarque : le nom d une fonction ne peut jamais figurer à gauche d une affectation. 22

23 Exemple : 23

Programmation impérative

Programmation impérative Programmation impérative Cours 4 : Manipulation des fichiers en C Catalin Dima Organisation des fichiers Qqs caractéristiques des fichiers : Nom (+ extension). Chemin d accès absolu = suite des noms des

Plus en détail

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers. I Présentation : Dans le chapitre 1, nous avons vu comment utiliser les appels-systèmes de bas niveau pour créer et accéder à des fichiers sur le disque. Nous avons notamment mis en évidence leur dépouillement

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

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

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

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

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

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

Programmation système I Les entrées/sorties

Programmation système I Les entrées/sorties Programmation système I Les entrées/sorties DUT 1 re année Université de Marne La vallée Les entrées-sorties : E/O Entrées/Sorties : Opérations d échanges d informations dans un système informatique. Les

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

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

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

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

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

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 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

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

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

INITIATION A LA PROGRAMMATION

INITIATION A LA PROGRAMMATION 2004-2005 Université Paris Dauphine IUP Génie Mathématique et Informatique INITIATION A LA PROGRAMMATION PROCEDURALE, A L'ALGORITHMIQUE ET AUX STRUCTURES DE DONNEES PAR LE LANGAGE C Maude Manouvrier La

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

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

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

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

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

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

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

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 en langage C Eléments de syntaxe

Programmation en langage C Eléments de syntaxe Programmation en langage C Eléments de syntaxe Université Paul Sabatier IUP Systèmes Intelligents L2 Module Informatique de base 2 Initiation à la programmation en langage C Isabelle Ferrané SOMMAIRE I-

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

Le système de gestion des fichiers, les entrées/sorties.

Le système de gestion des fichiers, les entrées/sorties. Le système de gestion des fichiers, les entrées/sorties. Luigi Santocanale Laboratoire d Informatique Fondamentale, Centre de Mathématiques et Informatique, 39, rue Joliot-Curie - F-13453 Marseille 19

Plus en détail

Compression de Données - Algorithme de Huffman Document de Conception

Compression de Données - Algorithme de Huffman Document de Conception ROLLET Samuel SALLE Jennifer Compression de Données - Algorithme de Huffman Document de Conception Projet d'algorithmique et Structure des Données 1 SOMMAIRE 1. Domaine d application....4 1.1 Objectifs

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

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

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

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

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

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

Langage C. Patrick Corde. Patrick.Corde@idris.fr. 22 juin 2015. Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289

Langage C. Patrick Corde. Patrick.Corde@idris.fr. 22 juin 2015. Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289 Langage C Patrick Corde Patrick.Corde@idris.fr 22 juin 2015 Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin 2015 1 / 289 Table des matières I 1 Présentation du langage C Historique Intérêts

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

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

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

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

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

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

Chapitre 1 : La gestion dynamique de la mémoire

Chapitre 1 : La gestion dynamique de la mémoire Chapitre 1 : La gestion dynamique de la mémoire En langage C un programme comporte trois types de données : Statiques; Automatiques ; Dynamiques. Les données statiques occupent un emplacement parfaitement

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

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

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia Ministère de l Enseignement Supérieur, de la Recherche Scientifique et de la Technologie Direction Générale des Etudes Technologiques Institut Supérieur des Etudes Technologiques de Djerba SUPPORT DE COURS

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

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

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

BTS IRIS Cours et Travaux Pratiques. Programmation C. A. Lebret, TSIRIS, Lycée Diderot, 1995/06. en conformité avec le référentiel du BTS IRIS

BTS IRIS Cours et Travaux Pratiques. Programmation C. A. Lebret, TSIRIS, Lycée Diderot, 1995/06. en conformité avec le référentiel du BTS IRIS BTS IRIS Cours et Travaux Pratiques Programmation C A. Lebret, TSIRIS, Lycée Diderot, 1995/06 en conformité avec le référentiel du BTS IRIS Activité Codage et Réalisation Tâches T3.3, T3.4 et T3.5 Temps

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

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

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

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

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

Bernard HAMM, Évelyne LAVOISIER

Bernard HAMM, Évelyne LAVOISIER 92 MAÎTRISE DE PROGICIELS DE GESTION DE BASES DE DONNÉES ET DE TRAITEMENT DE TEXTE Compte rendu d'un stage à l'usage des professeurs de sciences sociales. Ce stage a été programmé A la demande et avec

Plus en détail

Chapitre 5 : Les procédures stockées PL/SQL

Chapitre 5 : Les procédures stockées PL/SQL I. Introduction Une procédure ou une fonction stockée est un bloc PL/SQL nommé pouvant accepter des paramètres et être appelée. Généralement, on utilise une fonction pour calculer une valeur. Les procédures

Plus en détail

La programmation des PIC en C. Les fonctions, les interruptions.

La programmation des PIC en C. Les fonctions, les interruptions. La programmation des PIC en C Les fonctions, les interruptions. Réalisation : HOLLARD Hervé. http://electronique-facile.com Date : 26 août 2004 Révision : 1.2 Sommaire Sommaire... 2 Introduction... 3 Structure

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

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

Programmation Classique en langage C

Programmation Classique en langage C DI GALLO Frédéric Programmation Classique en langage C Cours du Cycle d Approfondissement CNAM ANGOULEME 2000-2001 DI GALLO Frédéric Page 1 01/04/01 PROGRAMMATION CLASSIQUE : LANGAGE C DI GALLO Frédéric

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

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece

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

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5 1. Introduction... 2 2. Création d'une macro autonome... 2 3. Exécuter la macro pas à pas... 5 4. Modifier une macro... 5 5. Création d'une macro associée à un formulaire... 6 6. Exécuter des actions en

Plus en détail

Utilisation d objets : String et ArrayList

Utilisation d objets : String et ArrayList Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons

Plus en détail

Algorithmique avec Algobox

Algorithmique avec Algobox Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions

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

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

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

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

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

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

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2 Initiation Matlab 2 1 Chaînes de caractères (string) Une chaîne de caractères (string en anglais) est une suite ordonnée de caractères (du texte, par exemple). Sous matlab, les chaînes de caractères sont

Plus en détail

SOMMAIRE. Travailler avec les requêtes... 3

SOMMAIRE. Travailler avec les requêtes... 3 Access Les requêtes SOMMAIRE Travailler avec les requêtes... 3 A) Créer une requête sélection en mode QBE... 3 B) Exécuter une requête à partir du mode Modifier (QBE)... 3 C) Passer du mode Feuille de

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

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

Introduction au Langage de Programmation C

Introduction au Langage de Programmation C Faculté Polytechnique de Mons Service d'informatique Introduction au Langage de Programmation C Mohammed Benjelloun 1 ère Candidature Année académique 2003-2004 Avant-propos Ces notes permettent de se

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

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N

Plus en détail

Les structures de données. Rajae El Ouazzani

Les structures de données. Rajae El Ouazzani Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l

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

Cours Programmation Système

Cours Programmation Système Cours Programmation Système Filière SMI Semestre S6 El Mostafa DAOUDI Département de Mathématiques et d Informatique, Faculté des Sciences Université Mohammed Premier Oujda m.daoudi@fso.ump.ma Février

Plus en détail

Programmation Structurée en Langage C

Programmation Structurée en Langage C École Centrale Marseille Programmation Structurée en Langage C Stéphane Derrode Mathématique et Informatique Révision 2.5, 2006. Table des matières 1 En guise d'introduction... 7 1.1 Quelques repères

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

Comment utiliser le lecteur MP3?

Comment utiliser le lecteur MP3? Comment utiliser le lecteur MP3? Comment utiliser le lecteur MP3? Pour des raisons de sécurité, certaines fonctions sont désactivées lors de la conduite. Bouton PWR Bouton (SOURCE) MENU Touches de changement

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

4. Groupement d objets

4. Groupement d objets Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux

Plus en détail

Le chiffre est le signe, le nombre est la valeur.

Le chiffre est le signe, le nombre est la valeur. Extrait de cours de maths de 6e Chapitre 1 : Les nombres et les opérations I) Chiffre et nombre 1.1 La numération décimale En mathématique, un chiffre est un signe utilisé pour l'écriture des nombres.

Plus en détail

Programmation en C - Sommaire

Programmation en C - Sommaire Programmation en C - Sommaire PROGRAMMATION EN C - SOMMAIRE... 1 CHAPITRE 0 : INTRODUCTION :... 5 I) NOTATIONS ET SYMBOLES :... 5 II) C, LA NAISSANCE D'UN LANGAGE DE PROGRAMMATION PORTABLE... :... 6 1)

Plus en détail

Cours Langage C/C++ Programmation modulaire

Cours Langage C/C++ Programmation modulaire Cours Langage C/C++ Programmation modulaire Thierry Vaira BTS IRIS Avignon tvaira@free.fr «v0.1 Rappel Programmation modulaire (1/2) Le découpage d'un programme en sous-programmes est appelée programmation

Plus en détail

3IS - Système d'exploitation linux - Programmation système

3IS - Système d'exploitation linux - Programmation système 3IS - Système d'exploitation linux - Programmation système 2010 David Picard Contributions de : Arnaud Revel, Mickaël Maillard picard@ensea.fr Environnement Les programmes peuvent être exécutés dans des

Plus en détail

TP, première séquence d exercices.

TP, première séquence d exercices. TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la

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 différents types de données et leurs opérations de base

Les différents types de données et leurs opérations de base Séquence 2 Les différents types de données et leurs opérations de base Contenu Présentation générale... 21 Partie 1 Les 3 familles de données et l'opération d'affectation... 22 1. Les trois familles de

Plus en détail