Licence STPI Semestre 3 - Examen de Validation de Module - Janvier 2006 ULSI301 - LANGAGE C

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

Download "Licence STPI Semestre 3 - Examen de Validation de Module - Janvier 2006 ULSI301 - LANGAGE C"

Transcription

1 Licence STPI Semestre 3 - Examen de Validation de Module - Janvier 2006 ULSI301 - LANGAGE C Durée : 2h. - Documents et Calculatrices autorisés. Toutes les réponses doivent être justifiées - Les exercices sont indépendants Dès le moment où une fonction est décrite dans une question, vous pouvez supposer qu elle est correcte pour toute la suite de l exercice, que vous ayez su l écrire ou non. - Exercice I : Matrices 2x2 de Nombres Complexes - I.1 - Nombres Complexes 1 - Ecrivez la structure cplx qui permet de représenter correctement un nombre complexe. 2 - Ecrivez maintenant le type complexe qui permet de représenter correctement un nombre complexe. Vous pourrez vous baser ou pas sur la structure cplx définie précédemment (au choix). Attention : A partir de maintenant, nous n utiliserons plus que le type complexe et plus la structure cplx. 3 - Ecrivez la fonction complexe saisiecomplexe1(void); qui permet la saisie au clavier d un nombre complexe. 4 - Ecrivez une fonction nommée saisiecomplexe2 qui fait le même travail en passage par adresse. 5 - Ecrivez une fonction nommée affichecomplexe qui permet d afficher un nombre complexe a l écran. Vous passerez le nombre complexe à afficher par adresse. 6 - Ecrivez une fonction nommée produitcomplexe qui permet d effectuer le produit de deux matrices de nombres complexes fournies en paramètre. Ces deux matrices seront passées par valeur, alors que le résultat sera passé par adresse. I.2 - Matrices 2x2 On souhaite gérer des matrices 2 2 de nombres complexes. On considère à partir de maintenant que toutes les fonctions, structures et types écrits lors de la question précédente sont déjà définies. Dans cette partie du problème, on choisira systématiquement de faire appel aux fonctions et types déjà définis plutôt que de réécrire des morceaux de programme qui auraient le même but. 1 - Ecrivez la structure puis le type mat22cplx qui permet de gérer une matrice 2 2 de nombres complexes. La nouvelle structure et le nouveau type devront ré-utiliser le type complexe. 2 - En faisant appel aux fonctions déjà écrites pour les nombres complexes, écrivez la fonction saisiematricecomplexe qui permet de faire la saisie au clavier d une matrice 2 2 de nombres complexes. 3 - En faisant appel aux fonctions déjà écrites pour les nombres complexes, écrivez la fonction affichematricecomplexe qui permet de faire l affichage d une matrice 2x2 de nombres complexes. 4 - Toujours en faisant appel aux fonctions déjà écrites pour les nombres complexes, écrivez la fonction produitmatricecomplexe qui permet de calculer le produit de deux matrices de nombres complexes. Le résultat devra être renvoyé via le mécanisme classique de retour et non en passage par adresse. 5 - Application En réutilisant tout ce qui a été écrit plus haut, écrivez un programme qui : Licence STPI Semestre 3 - Examen de Validation de Module - ULSI301 - Langage C - p. 1/2

2 1. Demande à l utilisateur combien de matrices il veut gérer, 2. Crée un tableau en allocation dynamique pour contenir les n matrices, 3. Propose la saisie des n matrices, 4. Calcule le produit de ces n matrices, 5. Affiche la matrice-résultat. Licence STPI Semestre 3 - Examen de Validation de Module - ULSI301 - Langage C - p. 2/2

3 Licence STPI Semestre 3 - Examen de Rattrapage - Juillet 2006 ULSI301 - LANGAGE C Durée : 2h. - Documents et Calculatrices autorisés. Toutes les réponses doivent être justifiées La qualité du code sera prise en compte dans la notation. Dès le moment où une fonction est décrite dans une question, vous pouvez supposer qu elle est correcte pour toute la suite de l exercice, que vous ayez su l écrire ou non. - Exercice I : Bibliothèque : première version - On veut écrire un logiciel permettant de gérer l ensemble des livres contenus dans une bibliothèque. Pour chaque livre, on a besoin des informations suivantes : Le titre du livre (200 caractères), Le nom de l auteur (100 caractères), l année de son édition. I.1 - Types Ecrivez le type livre qui représente correctement un livre, ainsi que le type bibliotheque qui permette de stocker 100 livres au maximum. Le type bibliotheque devra donc contenir deux champs : un champ tableau suffisamment grand pour contenir les 100 livres possibles, un champ nombre qui contient le nombre de livres actuellement présents dans la bibliothèque. I.2 - Fonction Principale Ecrivez une fonction main qui crée une variable pour la bibliothèque, que vous initialiserez pour qu elle ne contienne aucun livre. I.3 - Fonction d Ajout d un Livre On veut écrire une fonction qui propose la saisie d un livre à l utilisateur et qui ajoute ce livre à la bibliothèque. On propose les trois prototypes suivants : void AjoutLivre1(bibliotheque b); bibliotheque AjoutLivre2(bibliotheque b); void AjoutLivre3(bibliotheque* b); 1 - En supposant dans un premier temps que ces trois fonctions sont correctes, écrivez la ligne de programme que vous ajouteriez dans la fonction main pour appeler chacune d elles. Il est totalement inutile de réécrire entièrement le main. 2 - Expliquez maintenant avec précision pourquoi la fonction AjoutLivre1 ne pourrait pas fonctionner contrairement aux deux autres. 3 - Après avoir calculé sizeof(livre) et sizeof(bibliotheque), expliquez également avec précision pourquoi la fonction AjoutLivre3 est préférable par rapport à AjoutLivre Ecrivez la fonction AjoutLivre Ecrivez la fonction AjoutLivre3. Licence STPI Semestre 3 - Examen de Rattrapage - ULSI301 - Langage C - p. 1/2

4 I.4 - Fonction de recherche Ecrivez une fonction qui affiche tous les livres dont l année d édition est supérieure ou égale à I.5 - Fonction de suppression d un livre (un peu difficile) Proposez une fonction qui permettrait de supprimer un livre de la bibliothèque. - Exercice II : Bibliothèque : deuxième version - On souhaite maintenant gérer une bibliothèque permettant de contenir un nombre de livres maximum non prédéfini. On veut de plus concevoir une structure permettant de faciliter le classement des livres dans la bibliothèque. II.1 - Structrure 1 - Expliquez pourquoi une liste chaînée est une solution élégante à ce problème. 2 - Ecrivez la structure maillon d une telle liste, chaque maillon représentant un livre de la bibliothèque. On supposera qu un chaînage simple est suffisant. II.2 - Ajout d un Livre 1 - Proposez une fonction permettant de saisir puis d ajouter un livre à n importe quel endroit de la bibliothèque. II.3 - Fonction de recherche Ecrivez une fonction qui affiche tous les livres dont l année d édition est supérieure ou égale à II.4 - Fonction de suppression d un livre Proposez une fonction qui permettrait de supprimer un livre de la bibliothèque. On ne tolérera pas les fuites de mémoire. Licence STPI Semestre 3 - Examen de Rattrapage - ULSI301 - Langage C - p. 2/2

5 Licence STPI Semestre 3 - Contrôle Continu - Novembre 2006 ULSI301 - LANGAGE C Durée : 1h Documents et Calculatrices interdits. NOM : Prénom : Groupe : - Exercice I : Correspondances de Types - Soit un programme qui débuterait de la façon suivante : void f1(int k); 2 int* f2(void); 4 int main(void) { 6 char Carac; char* pcarac; 8 char tcarac[50]; 10 int Entier; int* pentier; 12 int tentier[50]; Donnez le type des expressions ci-après : Expression Votre Réponse Expression Votre Réponse (A à H) (A à H) Carac pentier tentier *pcarac tcarac+5 pcarac[0] tentier[50] *tcarac malloc(10*sizeof(char)); f1(2); f2(); *f2(); tcarac[10] &Carac &pentier &(*pcarac) &(tcarac[0]) &Entier 824 ((char*)25875) en répondant par A, B, C, D, E, F, G ou H avec : A char B char* C char** D int E int* F int** G void H void* Vous répondez directement sur cette feuille. Toute réponse fausse compte comme un point négatif. Licence STPI Semestre 3 - Contrôle Continu - ULSI301 - Langage C - p. 1/3

6 - Exercice II : Syntaxe du Langage C - Soit un programme qui débuterait de la façon suivante : int main(void) 2 { char* pcarac; 4 int Entier; int* pentier1; 6 int* pentier2; int* pentier3; 8 int* pentier4; int tentier[50]; 10 pentier1 = (int*) malloc(50*sizeof(int)); 12 pentier3 = tentier+10; pentier4 = pentier ; Pour chacune des expressions ci-après : Expression Votre Réponse (A à C) pentier2 = *(malloc(10*sizeof(int))); pentier2 = (char*) pcarac; pentier2 = (int*)pcarac; pentier2 = tentier; pentier2 = tentier[5]; pentier2 = Entier; pentier3[0] = 3; pentier3[50] = 2; *pentier4 = 10; Entier = *pentier2; pcarac[5] = H ; *(pentier3+2) = 5; pentier = 5; Indiquez si : A : elle n est pas correcte syntaxiquement, c est à dire qu elle provoque une erreur de compilation, en d autres termes gcc afficherait une erreur B : elle est correcte syntaxiquemnent (gcc n affiche aucune erreur) mais fait planter le programme C : elle se compile et s exécute correctement Vous répondez directement sur cette feuille. Toute réponse fausse compte comme un point négatif. N.B. : il est vivement conseillé de représenter l état de la RAM sur un schéma au brouillon. - Exercice III : Allocation Mémoire - Soit le programme ci-dessous : Licence STPI Semestre 3 - Contrôle Continu - ULSI301 - Langage C - p. 2/3

7 int* f(void); 2 4 int main(void) { 6 int *p; 8 p = f(10); printf("10 au carre vaut %d",p[11]); 10 } int* f(void) {int T[50]; 16 int i; for(i = 0; i < 50; i++) 18 { T[i] = i*i; 20 } return T; 22 } III.1 - Ca Plante! Expliquez pourquoi ce programme "plante de temps en temps" : (quelques lignes) III.2 - Modification Réécrivez le et modifiez le pour éliminer ce problème. Licence STPI Semestre 3 - Contrôle Continu - ULSI301 - Langage C - p. 3/3

8 Licence STPI Semestre 3 - Examen - Janvier 2007 ULSI301 - LANGAGE C Durée : 2h. - Documents et Calculatrices interdits. Toutes les réponses doivent être justifiées - Les exercices sont indépendants Dès le moment où une fonction est décrite dans une question, vous pouvez supposer qu elle est correcte pour toute la suite de l exercice, que vous ayez su l écrire ou non. La qualité du code écrit fera partie des critères d évaluation. - Exercice I : QCM - Dans cet exercice, toute réponse fausse compte comme un point négatif. La note atribuée à cet exercice sera calculée par la formule max(votrenote,0). Vous répondrez directement sur cette feuille. Soit un programme qui débuterait de la façon suivante : 1 typedef struct { 3 char** lignes; char* data; 5 long largeur,hauteur; } image; 7 void f1(image k); 9 image* f2(int l,int h); 11 int main(void) { 13 image img; image* pimg; Donnez le type des expressions ci-après, en supposant qu elles soient tapées après la ligne 15 : Expression Votre Réponse Expression Votre Réponse (A à L) (A à L) pimg (pimg[0]).data pimg+5 *(pimg.largeur) &((*pimg).lignes); f1(pimg); img.data+2 &(img.largeur) (*img).data *(f2(5,3)); f2(); f1(*pimg); img.lignes[3] &(img.lignes[5][3]) en répondant par A, B, C, D, E, F, G, H, I, J, K ou L avec : A char B char* C char** D long E long* F long** G img H img* I img** J void K void* L syntaxe incorrecte Licence STPI Semestre 3 - Examen - ULSI301 - Langage C - p. 1/4

9 - Exercice II : Polynômes - On veut représenter les polynômes sous forme d une structure de données : a 0 x 0 + a 1 x 1 + a 2 x a i 1 x i a n 1 x n 1 + a n x n On choisit de les représenter sous forme d un tableau. Chaque case du tableau contiendra un terme, représenté par : le coefficient a i, qui est un réel, la valeur de l exposant i, qui est une valeur entière On considèrera que tout terme ayant un exposant négatif ne fait pas partie du polynôme. Ainsi, si on représente le polynôme 1 + 2x 5x 3 dans un tableau "trop grand" permettant de stocker 5 termes en tout, il pourrait être représenté par le tableau suivant : ?? -1?? -1 Dans ce tableau, les trois premiers termes sont donc significatifs, les deux derniers ne le sont pas. II.1 - Fonctions de base 1 - Ecrivez le type termepoly qui représente correctement un terme du polynôme. 2 - Ecrivez le type Polynome qui représente correctement un Polynôme complet de degré quelconque. La structure devra contenir notamment le nombre de termes total (significatifs + non significatifs) ainsi qu un pointeur sur l ensemble des termes. 3 - Ecrivez la fonction : Polynome CreerPoly(int nbtermes); qui renvoie un polynôme de nbtermes correctement initialisé. L exposant de chaque terme sera initialement affecté à la valeur 1. Note 1 : le polynôme généré est donc un "polynôme vide" au sens où il ne contient aucun terme significatif. Note 2 : votre programme doit pouvoir gérer un nombre quelconque de termes. L exemple donné plus haut sur 5 termes n est qu un exemple! Note 3 : Si pour une raison ou pour une autre le polynôme ne pouvait pas être créé, il faut que le polynôme renvoyé ait un nombre de termes égal à 0 et que son pointeur pointe sur NULL. 4 - Ecrivez la fonction : Polynome AjoutTerme1(float coefficient, int exposant, Polynome P); qui ajoute un terme significatif au polynôme. Par exemple, à partir de l exemple du polynôme 1 + 2x 5x 3, ajouter le terme 3x 2 revient à obtenir : ?? Réécrivez la fonction d ajout, alors appelée AjoutTerme2, qui, au lieu de renvoyer le Polynome, ne renverra rien. Dans ces conditions, justifiez pourquoi on est obligés de passer le polynôme par adresse à la fonction. 6 - Ecrivez la fonction AjoutTerme2 décrite ci-dessus. Licence STPI Semestre 3 - Examen - ULSI301 - Langage C - p. 2/4

10 II.2 - Opérations sur les Polynômes 1 - Ecrivez la fonction : Polynome AjoutPolynomes(Polynome P1, Polynome P2); qui renvoie un polynôme qui serait la somme des deux polynômes. Note : Dans cette question, le polynôme-résultat pourra contenir des termes "non significatifs". 2 - Ecrivez la fonction : void ProduitPolynomes(Polynome* P1, Polynome* P2, Polynome* R); qui fournit via la variable R un polynôme qui contient le produit des deux polyômes. Note : Dans cette question, on ne cherchera pas à factoriser les termes de même degré. II.3 - Evaluation d un Polynôme 1 - Ecrivez la fonction : float EvalPoly(Polynome* P,float x); qui calcule, la valeur que vaut P au point x. 2 - Expliquez l intérêt de passer le polynôme par adresse dans la fonction EvalPoly. 3 - On souhaite sauvegarder les données dans un fichier. Ecrivez la fonction : void SavePoly(char* Nom, Polynome* P, float x1, float x2, float p); qui sauvegarde dans un fichier texte les valeurs y = P (x) pour x situé entre x 1 et x 2 avec un pas p. II.4 - Fonction Principale En réutilisant toutes les fonctions déjà écrites, écrivez une fonction main qui crée les 3 polynômes suivants : P 1 (x) = x 2 + 3x + 1 P 2 (x) = 5x P 3 (x) = x + 7 Le programme produira le polynôme suivant : P 4 (x) = P 1 (x) (P 2 (x) + P 3 (x)) Enfin, le programme sauvera dans un fichier "RESULTATS.TXT" les valeurs du polynôme P 4 (x) évaluées entre x = 1 et x = 5.2 pour un pas sur x de Annexe : Prototypes de Fonctions Standard - /* fonctions associées aux fichiers (stdio.h) */ 2 FILE* fopen(char* nom, char* mode); int fwrite(void* buf, int taillecase, int nbcases,file* f); 4 int fread(void* buf, int taillecase, int nbcases,file* f); void fclose(file* f); 6 /* fonctions pour le traitement des chaines de caractères (string.h) */ 8 int strlen(char* s); // renvoie la taille de la chaine de caractères s 10 /* gestion de la RAM (stdlib.h) */ void* malloc(int nombreoctets); 12 void free(void* ptr); Licence STPI Semestre 3 - Examen - ULSI301 - Langage C - p. 3/4

11 14 /* autres fonctions (stdio.h) */ sprintf(char* destination, char* format,...); 16 // sprintf est identique à printf mais le résultat est mis dans // destination au lieu d être affiché à l écran 18 /* fonctions mathématiques (math.h) */ 20 double pow(double x,double y); //calcule x^y Licence STPI Semestre 3 - Examen - ULSI301 - Langage C - p. 4/4

12 Licence STPI Semestre 3 - Examen de Rattrapage - Février 2007 ULSI301 - LANGAGE C Durée : 2h. - Documents et Calculatrices interdits. Toutes les réponses doivent être justifiées - Les exercices sont indépendants Dès le moment où une fonction est décrite dans une question, vous pouvez supposer qu elle est correcte pour toute la suite de l exercice, que vous ayez su l écrire ou non. La qualité du code écrit fera partie des critères d évaluation. - Exercice I : QCM - Dans cet exercice, toute réponse fausse compte comme un point négatif. La note atribuée à cet exercice sera calculée par la formule max(votrenote,0). Vous répondrez directement sur cette feuille. Soit un programme qui débuterait de la façon suivante : 1 typedef struct { 3 char** lignes; char* data; 5 long largeur,hauteur; } image; 7 void f1(image* k); 9 image f2(void); 11 int main(void) { 13 image img; image* pimg; Donnez le type des expressions ci-après, en supposant qu elles soient tapées après la ligne 15 : Expression Votre Réponse Expression Votre Réponse (A à L) (A à L) pimg pimg.data (pimg[0]).data (*pimg).largeur) f1(&img); &(img.data); pimg+4 &img img.data f2(5,3); f1(pimg); f1(&pimg); **(*pimg).lignes; &*(img.lignes[2]) en répondant par A, B, C, D, E, F, G, H, I, J, K ou L avec : A char B char* C char** D long E long* F long** G image H image* I image** J void K void* L syntaxe incorrecte Licence STPI Semestre 3 - Examen de Rattrapage - ULSI301 - Langage C - p. 1/3

13 - Exercice II : Figures à 3 dimensions - On veut représenter des figures à 3 dimensions dans l espace (par exemple un cube) : A B F C E D Pour celà, on a besoin de définir la notion de "point" dans l espace à 3 dimensions. Chaque point sera décrit par ses 3 coordonnées x, y et z, pas nécessairement entières. Ensuite, nous avons besoin de définir la notion de "figure à 3 dimensions", qui sera décrite notamment par un tableau contenant les points formant la figure à représenter. Par exemple, dans le cas du cube, il est clair qu il faudra 6 points, donc 6 cases dans ce tableau. II.1 - Fonctions de base 1 - Ecrivez le type point qui représente correctement un point en 3 dimensions. 2 - Ecrivez le type figure3d qui représente correctement une figure complète à 3 dimensions. Cette structure contiendra, en plus des données (les points eux-mêmes), le nombre de points que constituent la figure ainsi que le nombre de points utilisés. Le but de ce dernier champ est de pouvoir toujours savoir le numéro de la case qui suit le dernier point ajouté. Par exemple, si l on a créé une figure3d de 10 points et que l on n a rempli que les coordonnées de 3 points à cette figure, ce champ vaudra Ecrivez la fonction : figure3d CreeFigure(int nbpoints); qui renvoie une figure de nbpoints correctement initialisée. Les coordonnées x, y, et z de tous les points seront placées à la valeur 0, et le nombre de points utilisés sera placé à la valeur 0. Note 1 : votre programme doit pouvoir gérer un nombre quelconque de points. L exemple du cube, constitué de 6 points, n est qu un exemple! Note 2 : Si pour une raison ou pour une autre la figure3d ne pouvait pas être créée, il faut que le polynôme renvoyé ait un nombre de points égal à 0 et que son pointeur pointe sur NULL. 4 - Ecrivez la fonction : figure3d AjoutPoint1(float x, float y, float z, figure3d f); qui met le point constitué des coordonnées x, y et z à la place indiquée par le champ "nombre de points utilisés", puis ajoutera 1 à ce champ. 5 - Réécrivez la fonction d ajout, alors appelée AjoutPoint2, qui, au lieu de renvoyer la figure3d, ne renverra rien. Dans ces conditions, justifiez pourquoi on est obligés de passer par adresse la figure3d à la fonction. 6 - Ecrivez une fonction qui calcule la distance entre deux points : float Distance(point* P1, point* P2); Expliquez ici l intérêt du passage par adresse pour cette fonction précise. Licence STPI Semestre 3 - Examen de Rattrapage - ULSI301 - Langage C - p. 2/3

14 II.2 - Opérations sur les Figures à 3 dimensions 1 - Ecrivez la fonction : figure3d ConcatenerFigures(figure3d f1, figure3d f2); qui renvoie une figure qui serait la concaténation de deux figures. 2 - Ecrivez la fonction : figure3d Tri(figure3d f, point p); qui trie les points de la figure par ordre croissant de distance par rapport au point p passé en paramètre. Vous choisirez la méthode qui vous plait le mieux. Note : pour info, on retrouve ce type de sous-programme dans tous les jeux en 3 dimensions. II.3 - Fichier Ecrivez une fonction : void SaveFigure(char* Nom, figure f ); qui sauvegarde dans un fichier texte les points qui composent la figure f. Chaque point devra être sur une ligne du fichier texte, et sur chaque ligne on doit voir dans l ordre les valeurs de x, y et z séparées par une tabulation. II.4 - Fonction Principale En réutilisant toutes les fonctions déjà écrites, écrivez une fonction main qui crée une figure contenant un cube de côté 10 et une pyramide à base carrée de hauteur 5, placée juste au dessus du cube. Faites ensuite concaténer les deux figures au programme, et faites lui trier les points dans l ordre croissant par rapport au point ( 5, 0, 0) sur la figure concaténée. Enfin, le programme sauvera dans un fichier "MAISON.TXT" la figure résultant. - Annexe : Prototypes de Fonctions Standard - /* fonctions associées aux fichiers (stdio.h) */ 2 FILE* fopen(char* nom, char* mode); int fwrite(void* buf, int taillecase, int nbcases,file* f); 4 int fread(void* buf, int taillecase, int nbcases,file* f); void fclose(file* f); 6 8 /* gestion de la RAM (stdlib.h) */ void* malloc(int nombreoctets); 10 void free(void* ptr); 12 /* autres fonctions (stdio.h) */ sprintf(char* destination, char* format,...); 14 // sprintf est identique à printf mais le résultat est mis dans // destination au lieu d être affiché à l écran 16 /* fonctions mathématiques (math.h) */ 18 double pow(double x,double y); //calcule x^y double sqrt(double x); //calcule racine(y) Licence STPI Semestre 3 - Examen de Rattrapage - ULSI301 - Langage C - p. 3/3

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

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

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

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

Travaux Dirigés n 1 : chaînes de caractères

Travaux Dirigés n 1 : chaînes de caractères UE LE315 Travaux Dirigés n 1 : chaînes de caractères Exercice 1 Ecrire une fonction int nombre_caract(char *chaîne) qui retourne la taille d une chaîne de caractères. Exercice 2 Ecrire la fonction void

Plus en détail

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

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

Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs

Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs Brefs rappels sur la pile et le tas (Stack / Heap) et les pointeurs (exemples en C) v1.11 - Olivier Carles 1 Pile et Tas Mémoire allouée de manière statique Mémoire Allouée Dynamiquement variables locales

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

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

Algorithmique, Structures de données et langage C

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

Plus en détail

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

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

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

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

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

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

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

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

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

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 de Programmation Impérative: Zones de mémoires et pointeurs

Cours de Programmation Impérative: Zones de mémoires et pointeurs Cours de Programmation Impérative: Zones de mémoires et pointeurs Julien David A101 - david@lipn.univ-paris13.fr Julien David (A101 - david@lipn.univ-paris13.fr) 1 / 1 Z`o n`e s `d`e m`é m`o i r`e Julien

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

Cours 1: Java et les objets

Cours 1: Java et les objets Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/

Plus en détail

Le prototype de la fonction main()

Le prototype de la fonction main() Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme

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

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

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

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

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

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

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

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004 Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)

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

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

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

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

INF111. Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1/inf111/ Massih-Reza Amini

INF111. Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1/inf111/ Massih-Reza Amini Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1// Massih-Reza Amini Université Joseph Fourier Laboratoire d Informatique de Grenoble 2/52 Introduction Structures de contrôle

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

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

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

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

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

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

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

Plus en détail

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

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

Plus en détail

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

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

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

Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail

Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail Finalités Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail Réalisé par sa modestie Arnaud de VILLEDON de NAIDE, le 9 mars 2013 Document sous licence GPL. Vous avez le droit d'en faire

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

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Débuter avec Excel. Excel 2007-2010

Débuter avec Excel. Excel 2007-2010 Débuter avec Excel Excel 2007-2010 Fabienne ROUX Conseils & Formation 10/04/2010 TABLE DES MATIÈRES LE RUBAN 4 LE CLASSEUR 4 RENOMMER LES FEUILLES DU CLASSEUR 4 SUPPRIMER DES FEUILLES D UN CLASSEUR 4 AJOUTER

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

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année

MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année 2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES Maude Manouvrier La reproduction de ce document par

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

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

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX TABLE DES MATIERES Livret Utilisateur Excel 2007 Niveau 2 INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX... 4 Les tableaux croisés dynamiques... 4 Création d un tableau croisé... 5 Comparer des

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

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

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

Poker. A rendre pour le 25 avril

Poker. A rendre pour le 25 avril Poker A rendre pour le 25 avril 0 Avant propos 0.1 Notation Les parties sans * sont obligatoires (ne rendez pas un projet qui ne contient pas toutes les fonctions sans *). Celles avec (*) sont moins faciles

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

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

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ; CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe

Plus en détail

Cours de C. Petits secrets du C & programmation avancée. Sébastien Paumier

Cours de C. Petits secrets du C & programmation avancée. Sébastien Paumier Cours de C Petits secrets du C & programmation avancée Sébastien Paumier paumier@univ-mlv.fr Illustrations provenant du site http://tux.crystalxp.net/ 1 Affectations étendues a+=expression a=a+expression

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

Excel 2007 Niveau 3 Page 1 www.admexcel.com

Excel 2007 Niveau 3 Page 1 www.admexcel.com Excel 2007 Niveau 3 Page 1 TABLE DES MATIERES UTILISATION DE LISTES DE DONNEES... 4 REMARQUES PREALABLES SUR LES LISTES DE DONNEES... 4 METTRE EN FORME LE TABLEAU... 6 METTRE LA LISTE A JOUR... 7 a/ Directement

Plus en détail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS Mémento Ouvrir TI-Nspire CAS. Voici la barre d outils : L insertion d une page, d une activité, d une page où l application est choisie, pourra

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

STAGE IREM 0- Premiers pas en Python

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

Plus en détail

ERETES-SERIES. Support de formation. Formation ERETES ERETES-SERIE 1/58

ERETES-SERIES. Support de formation. Formation ERETES ERETES-SERIE 1/58 ERETES-SERIES Support de formation 2013 Formation ERETES ERETES-SERIE 1/58 1. Introduction... 4 2. La base de données «Serie»... 5 3. Les Interfaces... 11 4. Le Bloc-Notes... 14 5. La gestion des nomenclatures...

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

Les arbres binaires de recherche

Les arbres binaires de recherche Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s

Plus en détail

Programmation en Java IUT GEII (MC-II1) 1

Programmation en Java IUT GEII (MC-II1) 1 Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)

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

Programmation système de commandes en C

Programmation système de commandes en C Programmation système de commandes en C Cours de Programmation système Tuyêt Trâm DANG NGOC Université de Cergy-Pontoise 2012 2013 Tuyêt Trâm DANG NGOC Programmation système de commandes

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

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

Exercices sur les interfaces

Exercices sur les interfaces Exercices sur les interfaces Fabrice Rossi 18 octobre 1999 1 Le type Object 1.1 Manipulations élémentaires Exercice 1.1 : Indiquer l affichage produit par le programme suivant : public class UpCast1 {

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

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

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

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

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

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

Gestion de la mémoire

Gestion de la mémoire 433 43 3 Gestion de la mémoire + 1. Qu'est-ce que la mémoire? - Définitions, exemples 2. Allocation contiguë en mémoire - Partitions de taille fixe, de taille variable 3. Pagination et mémoire virtuelle

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

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

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

Outils pour la pratique

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

Plus en détail

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

Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon

Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon 13 janvier 2015 2 Table des matières Organisation générale du cours 7 1 Notions générales d algorithmique et de programmation

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

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

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing 3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps

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