Les flux d'entrées/sorties en C++

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Les flux d'entrées/sorties en C++"

Transcription

1 1- introduction Les flux d'entrées/sorties en C++ En langage C-ANSI, la librairie d'entrées/sorties (stdio) fournie des fonctions d'entrées/sorties sur les 3 flux d'entrées/sorties standards (stdin, stdout et stderr) putchar(), puts(), printf() ios_base getchar(), gets(), scanf() De même, en langage C++, la librairie SL (Standard Library) fourni un ensemble de classes permettant des entrées/sorties sur les 3 flux d'entrées/sorties standards (stdin, stdout et stderr) les classes istream (objet cin), ostream (objets cout, cerr et clog). Le diagramme de classe ci-dessous montre les relations entre ces classes. basic_ios En réalité, ces noms sont des alias vers les classes basic_ostream et basic_istream et sont définis par les instructions typedef basic_ istream <char> istream; typedef basic_ ostream <char> ostream; basic_istream basic_ostream exemple cout << "Hello world!" << endl; Sur Visual Stusio, on trouvera l'aide sur l'opérateur "<<" dans l'aide en ligne de la classe basic_ostream. istream ostream L écriture <char> derrière les noms de classes signifie qu un mécanisme de template est utilisé par ces classes et que type de donnée utilisé pour les buffer est char pour les istream & ostream. A ne pas confondre cette écriture avec un cast (voir cours C++ 1 ère année chapitre 2 des variables de bases) Les template seront vus dans un cours ultérieur. 2-Les flux d'entrées/sorties standards Ici aussi, les 3 même flux standards sont ouverts cin objet, instance de la classe istream, c'est l'entrée standard (clavier). cout objet, instance de la classe ostream, c'est la sortie standard (écran). cerr objet, instance de la classe ostream, c'est la sortie standard pour les messages d'erreurs (écran). fig 2 exemple char nom[100]; cout << "Tapez votre nom "; cin >> nom; cout << "Bonjour M. " << nom << endl; 3 - Les sorties 3.1 L'opérateur << L'opérateur d'insertion (<<) permet d'envoyer des données sur un flux de sortie. Tous les types de base du C++ et la classe string peuvent être utilisés. int n = 10; cout << n; char *ptr = "bonjour"; cout << ptr; string str("hello World!"); cout << str << " et peut etre chaine " ; Jean-Louis Pascal page 1/1

2 3.2 La méthode put() Cette méthode permet de sortir un caractère sur un flux de sortie. char c = 'x'; cout.put(c); // équivalent à cout << c; Cette méthode peut aussi être chaînée. cout.put('s').put('a').put('l').put('u').put('t').put('\n'); 3.3 La méthode write() Cette méthode permet d'envoyer un tableau de caractère sur un flux de sortie de façon brute (ou binaire). char tab[] = 'a', 'b', '\0', 'c' ; cout.write(tab,4); char s[] = "abcdefghijklmnopqrstuvwxyz"; cout.write(s, strlen(s)); // équivalent à cout << s; Cette méthode peut aussi être chaînée. 4. Les entrées 4.1 L'opérateur >> L'opérateur d'extraction (>>) permet d'extraire une donnée d'un flux d'entrée et de la placer dans une variable. Tous les types de base du C++ et la classe string peuvent être utilisés. string nom; int age; cout << "Entrez votre nom "; cin >> nom; cout << "Entrez votre age "; cin >> age; Cet opérateur peut être chaîné. string nom; int age; cout << "Entrez votre nom et votre age "; cin >> nom >> age; En entrées, l'espace, la tabulation et le "retour chariot" sont considérés comme séparateurs, ils ne sont pas lus par l'opérateur >>. Attention avec les chaînes de caractères, il y a un risque de débordement si la chaînes lue est plus longue que la chaîne réceptrice. Exemple char str[50]; cout << "Entrez votre nom " cin >> str; // PROBLEME si l'utilisateur rentre 50 caractères ou plus. Pour remédier à ce problème, il faut utiliser la classe string qui adapte la longueur de la chaîne automatiquement. string str; cout << "Entrez votre nom " cin >> str; Les méthodes get() Les méthodes get() fournissent tous les caractères présents dans le flux d'entrées, séparateurs compris. int n = cin.get(); char c; cin.get(c); char s[10]; cin.get(s,9,'\n'); Les méthodes getline() Les méthodes getline() fonctionnent de la même façon, elles fournissent tous les caractères présents dans le flux d'entrées, séparateurs compris. char str1[10]; Jean-Louis Pascal page 2/2

3 cin.getline(str1,9); char str2[100]; cin.getline(str2,99,'x'); La fonction getline(istream&, string&) Il existe une fonction (non-membre de istream) qui permet d'extraire des caractères d'un flux d'entrée et de la placer dans une "string". Elle lit une ligne entière jusqu'au caractère '\n' (ou le caractère spécifié par le 3 ème argument) et évite tous les problèmes de débordement causés par des chaînes trop longues. string str; getline(cin,str); getline(cin,str,'x'); 4.5 La méthode read() Cette méthode permet de lire en mode binaire un certain nombre de caractères et de les placer dans un tableau. char tab[100]; cin.read(tab,100); 4.6 Problèmes durant la saisie En plus du problème de débordement (chaîne de caractères trop longue), 2 autres problèmes peuvent survenir Problème de synchronisation entre entrée et sortie int n1, n2; cout << "donnez une valeur pour n1 "; cin >> n1; cout << "merci pour " << n1 << endl; cout << "donnez une valeur pour n2 "; cin >> n2; cout << "merci pour " << n2 << endl; Si l'utilisateur entre 2 nombres sur la même ligne, cela donnera à la console donnez une valeur pour n merci pour 12 donnez une valeur pour n2 merci pour 15 Problème de mauvaise saisie Une mauvaise saisie peut faire échouer la lecture et on risque un "plantage" de programme. int n; do cout << "donnez une valeur "; cin >> n; cout << "le carré de " << n << " est " << n*n << endl; while(n!= 0); Voilà ce que ça peut donner donnez une valeur 3 le carré de 3 est 9 donnez une valeur 4 le carré de 4 est 16 donnez une valeur x le carré de 4 est 16 Jean-Louis Pascal page 3/3

4 Pour remédier à ces problèmes, il est très fortement conseillé de lire les flux d'entrée ligne par ligne grâce à la fonction getline() (voir 4.4) et ensuite d'extraire les informations des lignes grâce à la classe istringstream (voir 7). 5 Formatage des sorties Des manipulateurs peuvent modifier le format de l'affichage. Le modificateur endl provoque un retour à la ligne. Les modificateurs dec, hex, oct changent la base des nombres entiers, une fois modifiée, la base reste en vigueur jusqu'au prochain modificateur de base. Les modificateurs setw() et setfill() permettent de spécifier la largeur de l'affichage (en nb de caractères) et le caractère de remplissage (espace par défaut). Les manipulateurs (extrait de l'aide de builder C++) Manipulator Use Effect boolalpha io Puts bool values in alphabetic format dec io Converts integers to/from decimal endl o Inserts newline and flushes buffer ends o Inserts end of string character fixed o Puts floating point values in fixed-point flush o Flushes stream buffer hex io Converts integers to/from hexadecimal internal o Adds fill characters at a designated internal point left o Adds fill characters for adjustment to the left noboolalpha io Resets the above noshowbase o Resets the above noshowpoint o Resets the above noshowpos o Resets the above noskipws i Resets the above nounitbuf o Resets the above nouppercase Resets the above oct io Converts to/from octal right o Adds fill characters for adjustment to the right scientific Puts floating point values in scientific setbase(int base) io Sets base for integer (base = 8, 10, 16) setfill(chart c) io Sets fill character for padding setprecision(int n) io Sets precision of floating point values setw(int n) io Sets minimal field width showbase o Generates a prefix indicating the numeric base of an integer showpoint o Always generates a decimal-point for floating-point values showpos o Generates a + sign for non-negative numeric values uppercase o Replaces certain lowercase letters with their uppercase equivalents voir l'exemple suivant et le résultat à l'exécution #include <iomanip> Jean-Louis Pascal page 4/4

5 int n = 1234; double tab[] = 1.234, 12.3, 4.5, 6.78, ; cout << "##### Affichage dans differentes bases #####" << endl; cout << "par defaut n = " << n << endl; cout << "en octal n = " << oct << n << endl; cout << "en hexadecimal n = " << hex << n << endl; cout << "en hexadecimal n = " << hex << uppercase << n << endl; cout << "en décimal n = " << dec << n << endl ; cout << endl << "##### Largeurs de champ et remplissage #####" << endl; cout << endl << " *** par defaut ***" << endl; cout << "valeur = " << tab[i] << endl; cout << endl << " *** avec setw() ***" << endl; cout << setw(15) << "valeur = " << setw(10) << tab[i] << endl; cout << endl << " *** avec setw() et setfill() ***" << endl; cout << setw(15) << setfill('+') << "valeur = " << setw(10) << setfill('*') << tab[i] << endl; ##### Affichage dans differentes bases ##### par defaut n = 1234 en octal n = 2322 en hexadecimal n = 4d2 en hexadecimal n = 4D2 en dúcimal n = 1234 ##### Largeurs de champ et remplissage ##### *** par defaut *** valeur = valeur = 12.3 valeur = 4.5 valeur = 6.78 valeur = *** avec setw() *** valeur = valeur = 12.3 valeur = 4.5 valeur = 6.78 valeur = *** avec setw() et setfill() *** valeur = ***** valeur = ****** valeur = ******* valeur = ****** valeur = *** Jean-Louis Pascal page 5/5

Les entrées sorties en C/C++

Les entrées sorties en C/C++ Les entrées sorties en C/C++ Dans ce chapitre, nous allons voir les fonctions d entrée/sortie du langage C++, extension du langage C. Écriture sur la sortie standard Fonction printf et opérateur

Plus en détail

Entrée et sortie standards (stdin,stdout et cin,cout)

Entrée et sortie standards (stdin,stdout et cin,cout) Chapitre 4 Entrée et sortie standards (stdin,stdout et cin,cout) Pour réaliser les opérations élémentaires d écriture sur l écran ou de lecture des informations du clavier, le C utilise un ensemble de

Plus en détail

1 Les entrées-sorties, les ux

1 Les entrées-sorties, les ux 1 Les entrées-sorties, les ux 1 1.1 Généralités les fonctions d'entrée/sortie n'appartiennent pas au langage C++ mais à la bibliothèque standard Les fonctions d'entrée/sortie sont déclarées dans le chier

Plus en détail

Les flux en C++ Les flux d entrées sorties Les flux standards Les opérations d entrées sorties. Langage orienté objet C++ 1/19.

Les flux en C++ Les flux d entrées sorties Les flux standards Les opérations d entrées sorties. Langage orienté objet C++ 1/19. Les flux en C++ Les flux d entrées sorties Les flux standards Les opérations d entrées sorties 1/19 Les flux de sorties Programme en écriture Flux de données Destination Un flux de sortie représente un

Plus en détail

6. Lecture/écriture formatées et Fichiers. printf / scanf Fichier: Mémoire tampon Accès aux fichiers Modes d'ouverture Lecture / écriture

6. Lecture/écriture formatées et Fichiers. printf / scanf Fichier: Mémoire tampon Accès aux fichiers Modes d'ouverture Lecture / écriture 1 6. Lecture/écriture formatées et Fichiers printf / scanf Fichier: Mémoire tampon Accès aux fichiers Modes d'ouverture Lecture / écriture 2 Références Site du zèro : Programmer en C http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html

Plus en détail

Petit résumé pour IFT1166

Petit résumé pour IFT1166 Petit résumé pour IFT1166 C est un langage populaire (cours IFT 1810, IFT 1160). JAVA (IFT 1870, IFT 1170, IFT 1176) utilise surtout la syntaxe du C++. De plus, Java est un langage purement orienté objet.

Plus en détail

Fonctions de gestion de fichiers

Fonctions de gestion de fichiers Fonctions de gestion de fichiers 1. Ouverture et fermeture d un fichier Le C offre la possibilité de lire et d'écrire des données dans un fichier. Pour des raisons d'efficacité, les accès à un fichier

Plus en détail

PLAN DU COURS ENTRÉE SORTIE FONCTION PRINTF. Fonction de la bibliothèque stdio.h. Affichage d'un texte:

PLAN DU COURS ENTRÉE SORTIE FONCTION PRINTF. Fonction de la bibliothèque stdio.h. Affichage d'un texte: PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, Tableaux, opérateurs Entrées sorties de base Structures de contrôle Algorithmes de recherche Algorithmes de

Plus en détail

CHAPITRE 3 : Types de base, Opérateurs et Expressions

CHAPITRE 3 : Types de base, Opérateurs et Expressions CHAPITRE 3 : Types de base, Opérateurs et Expressions 1. Types simples Un type définit l'ensemble des valeurs que peut prendre une variable, le nombre d'octets à réserver en mémoire et les opérateurs que

Plus en détail

Les fichiers. Chapitre Les fichiers textes Avantages d un fichier texte Inconvénients d un fichier texte

Les fichiers. Chapitre Les fichiers textes Avantages d un fichier texte Inconvénients d un fichier texte Chapitre 1 Les fichiers En général, un fichier est une suite d informations conservée sur un périphérique de stockage (disquette, disque dur, CDROM, bande). Les limitations technologiques de ces périphériques

Plus en détail

TP Interface graphique et C++ numéro 1

TP Interface graphique et C++ numéro 1 TP Interface graphique et C++ numéro 1 Master IGC - 1 re année année 2010-2011 Ce premier TP a pour objectif de vous familiariser avec le compilateur C++, les entréessorties du langage et l utilisation

Plus en détail

Les flux et les fichiers

Les flux et les fichiers Chapitres traités Hiérarchie des classes représentant le flot Les flux et les fichiers Depuis le temps, nous connaissons bien les objets cin et cout. Du moins nous semblons les connaître. Cette étude nous

Plus en détail

Introduction au langage C - types et variables

Introduction au langage C - types et variables Chapitre 2 Introduction au langage C - types et variables 1 Le Langage C Le langage C est un langage de bas niveau dans le sens où il permet l accès à des données que manipulent les ordinateurs (bits,

Plus en détail

Jean-Cédric Chappelier

Jean-Cédric Chappelier Informatique I : Cours d introduction à l informatique et à la programmation Entrées/Sorties en C++ Laboratoire d Intelligence Artificielle Faculté I&C Informatique I Cours 11 & 12 : Entrées/Sorties 1

Plus en détail

Objectifs. Introduction. IO Standards. Fichiers. Formatage. EPFL 2016 Jean-Cédric Chappelier & Jamila Sam. Objectifs. Introduction.

Objectifs. Introduction. IO Standards. Fichiers. Formatage. EPFL 2016 Jean-Cédric Chappelier & Jamila Sam. Objectifs. Introduction. du cours d aujourd hui Informatique I : Cours d introduction à l informatique et à la programmation Entrées/Sorties en C++ Présenter les bases des entrées/sorties en C++ : les entrées/sorties clavier/écran

Plus en détail

Programmation I : Cours de programmation (C++) Entrées/Sorties

Programmation I : Cours de programmation (C++) Entrées/Sorties Programmation I : Cours de programmation (C++) Entrées/Sorties Laboratoire d Intelligence Artificielle Faculté I&C Programmation I Cours 11 : Entrées/Sorties 1 / 47 Objectifs du cours d aujourd hui Présenter

Plus en détail

Génie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string

Génie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string Génie Logiciel I Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string Nicolas Kielbasiewicz C.D.C.S.P./I.S.T.I.L./I.C.J. Filière M.A.M.

Plus en détail

Flux. Gestion des Exceptions. SmartPointer. Entrées-sortiessorties Fichiers. F. Cloppet POO Avancée M1 C++ 271

Flux. Gestion des Exceptions. SmartPointer. Entrées-sortiessorties Fichiers. F. Cloppet POO Avancée M1 C++ 271 Notions Complémentaires Flux Entrées-sortiessorties Fichiers Gestion des Exceptions SmartPointer F. Cloppet POO Avancée M1 C++ 271 Généralités Flux = séquence d octets (byte) Flux s écoulent des périphériques

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours de programmation (C++) Entrées/Sorties. Buts des entrées/sorties

Objectifs du cours d aujourd hui. Informatique II : Cours de programmation (C++) Entrées/Sorties. Buts des entrées/sorties du cours d aujourd hui Informatique II : Cours de programmation (C++) Entrées/Sorties Haroud Présenter les bases des entrées/sorties en C++ : les entrées/sorties clavier/écran (cin/cout) les fichiers formatage

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

LE LANGAGE C++ TODO : - Flux d entrées/sorties - 5.1.4 : déclaration d accès (à revoir)

LE LANGAGE C++ TODO : - Flux d entrées/sorties - 5.1.4 : déclaration d accès (à revoir) LE LANGAGE C++ TODO : - Flux d entrées/sorties - 5.1.4 : déclaration d accès (à revoir) v1.5.4.3 14/02/2014 peignotc(at)arqendra(dot)net / peignotc(at)gmail(dot)com Toute reproduction partielle ou intégrale

Plus en détail

Systèmes Informatiques TD 1: langage C entrées/sorties et la fonction main()

Systèmes Informatiques TD 1: langage C entrées/sorties et la fonction main() Systèmes Informatiques TD 1: langage C entrées/sorties et la fonction main() P. Bakowski bako@ieee.org Fonctions printf() et scanf() Les programmes en langages C ont besoin des fonctions qui permettent

Plus en détail

renforcer le contrôle de type :

renforcer le contrôle de type : renforcer le contrôle de type : définitions, prototypes de fonctions surcharge références conversions de void * préférer le compilateur au préprocesseur considérer les entrées/sorties opérations abstraites

Plus en détail

Langage C notes de cours

Langage C notes de cours Langage C notes de cours K. El Omari IUT GTE, UPPA 1 Présentation générale 1.1 Introduction La programmation par le langage C (ainsi que par d autres langages dit compilés) est basée sur : 1. la rédaction

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

2.5- Les flux. 1- Librairies de flux. 2- Manipulation de cin. 3- Lecture et écriture de fichiers. 4- Les flux et les chaînes

2.5- Les flux. 1- Librairies de flux. 2- Manipulation de cin. 3- Lecture et écriture de fichiers. 4- Les flux et les chaînes 2.5- Les flux 1- Librairies de flux 2- Manipulation de cin 3- Lecture et écriture de fichiers 4- Les flux et les chaînes 5- Passage de paramètres en ligne de commande 6- Un exemple de récupération CSV

Plus en détail

Tableaux dynamiques avec vector

Tableaux dynamiques avec vector Tableaux dynamiques avec vector Tableaux statiques Les tableaux que nous avons vus jusqu'ici sont des tableaux statiques: int tab[3]; Cette forme de tableaux vient du langage C, et est encore très utilisée.

Plus en détail

Les entrées et les sorties sont considérées comme des flots. Un flot est associé à un fichier ou à un périphérique.

Les entrées et les sorties sont considérées comme des flots. Un flot est associé à un fichier ou à un périphérique. Le langage C++ Master Actuariat Séance 5 : Les flots C++ - F.CHAKER- M1 Actuariat 2014/2015 1 Les entrées sorties en C++ Les entrées et les sorties sont considérées comme des flots. Un flot est associé

Plus en détail

L agenda électronique

L agenda électronique L agenda électronique Figure 1 : vision d'un agenda électronique pour une semaine donnée Dans cette application, nous allons programmer en C++ les sous-programmes et le programme nécessaire à la saisie

Plus en détail

Programmation système : tampons

Programmation système : tampons Programmation système : tampons Juliusz Chroboczek 12 Octobre 2009 1 Tampons Le programme de copie décrit au cours précédent effectue deux appels système pour chaque octet copié ce qui est tragique. Une

Plus en détail

LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS

LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS 1. PRÉSENTATION. Le langage C a fait son apparition en 1972 pour le développement du système d exploitation Unix. Il est devenu un standard de la norme ANSI en 1983.

Plus en détail

Premiers exemples de traitements

Premiers exemples de traitements #include #include Premiers exemples de traitements void main() float b(0.0); float c(0.0); float delta(0.0); cin >> b >> c; delta = b*b - 4*c; if (delta < 0.0) cout

Plus en détail

3 Lien entre pointeurs et tableaux.

3 Lien entre pointeurs et tableaux. programme sont dit dynamiques. On se limite ici aux tableaux statiques à une seule dimension, analogue aux vecteurs manipulés en mathématiques. Ils se déclarent sous la forme : type_d_élément variable_tableau[taille];

Plus en détail

ISMIN 1A Programmation 1 : Examen de programmation C. Réponses. Partie 1. Questions ouvertes

ISMIN 1A Programmation 1 : Examen de programmation C. Réponses. Partie 1. Questions ouvertes ISMIN 1A Programmation 1 : Examen de programmation C Réponses Partie 1. Questions ouvertes 1. Soit la déclaration suivante, char tab[] = "". Que contient le tableau tab? Réponse : tab[0] = \0. tab est

Plus en détail

Algorithmique et programmation : les bases (C) Corrigé

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

Plus en détail

cours 7 - entrées/sorties et fichiers

cours 7 - entrées/sorties et fichiers cours 7 - entrées/sorties et fichiers G. Bianchi, G. Blin, A. Bugeau, S. Gueorguieva, R. Uricaru 2015-2016 Programmation 1 - uf-info.ue.prog1@diff.u-bordeaux.fr utilisation avancée de printf retour de

Plus en détail

module SIN21 Rendre un syste me communicant Analyse UML et algorithmie 1 Modification du cahier des charges

module SIN21 Rendre un syste me communicant Analyse UML et algorithmie 1 Modification du cahier des charges Module SIN221 Rendre un syste me communicant Analyse UML et algorithmie Objectifs : Modifier des diagrammes UML suite à la modification du cahier des charges. Caractériser et valider une classe en C++.

Plus en détail

Programmation C++ Le langage impératif. Stéphane Vialette. 12 novembre 2012. LIGM, Université Paris-Est Marne-la-Vallée

Programmation C++ Le langage impératif. Stéphane Vialette. 12 novembre 2012. LIGM, Université Paris-Est Marne-la-Vallée Programmation C++ Le langage impératif Stéphane Vialette LIGM, Université Paris-Est Marne-la-Vallée 12 novembre 2012 Stéphane Vialette (LIGM UPEMLV) Programmation C++ 12 novembre 2012 1 / 67 C++ : chronologie

Plus en détail

Ch1 : Eléments de base du langage C

Ch1 : Eléments de base du langage C Ch1 : Eléments de base du langage C Fathi Mguis Atelier de programmation 1 LFSI1/LARI1 A.U : 2014-2015 Plan 1 Généralités 2 Avantages 3 Structure d un programme en C 4 Les diverse phases d un programme

Plus en détail

Variables, types simples, expressions et instructions simples

Variables, types simples, expressions et instructions simples 2.2 - Chap. 05 Variables, types simples, expressions et instructions simples 1 / 5 Variables, types simples, expressions et instructions simples 1 Variable de types simples 1.1 Notion de variable Une variable

Plus en détail

Labo 3 Classes simples

Labo 3 Classes simples 1. Présentation 1.1. Objectifs pédagogiques Labo 3 Classes simples - Mettre en œuvre la notion de classe sur des cas simples. 1.2. Recommandations - Appliquer de façon judicieuse les principes d encapsulation.

Plus en détail

Janvier 2015. Licence 3 info Université de Lille 1. Vers C++ venant de C et de Java. Adrien Poteaux et Alexandre Sedoglavic.

Janvier 2015. Licence 3 info Université de Lille 1. Vers C++ venant de C et de Java. Adrien Poteaux et Alexandre Sedoglavic. Vers C++ venant Licence 3 info Université de Lille 1 Janvier 2015 Généralités Le C++ est un langage de programmation développé à partir de 1980 par Bjarne Stroustrup. Nous utiliserons la normalisation

Plus en détail

Programmation en C++ IO en C++/SL. Standard Library Types, objets pour IO L'entrée de clavier Sortie à l'écran Fichiers

Programmation en C++ IO en C++/SL. Standard Library Types, objets pour IO L'entrée de clavier Sortie à l'écran Fichiers Programmation en C++ IO en C++/SL Standard Library Types, objets pour IO L'entrée de clavier Sortie à l'écran Fichiers 1 Librairie Standard (SL) Les opérations d'entrée/sortie sont définies dans la bibliothèque

Plus en détail

INF 2005 Programmation orientée objet avec C++ Texte 2

INF 2005 Programmation orientée objet avec C++ Texte 2 INF 2005 Programmation orientée objet avec C++ Texte 2 1. Mots clés du langage C++ et premiers pas... 2 1.1 Les mots clés du langage C++... 2 1.2 Familiarisation avec le langage... 3 2. Les entrées-sorties...

Plus en détail

Organisation des données et structures de stockage

Organisation des données et structures de stockage ING2 - ING3 Nvx 2009-2010 Organisation des données et structures de stockage I. Stockage de l information en C Ce chapitre rappelle brièvement et complète certaines notions de base vues en première année

Plus en détail

1. Eléments de base du langage C

1. Eléments de base du langage C 1 1. Eléments de base du langage C Généralités Programme et sous-programme Fonction C Structure d un programme C Vocabulaire de base et syntaxe Exemples 2 Généralités Crée en 1972 par D. Ritchie pour écrire

Plus en détail

Informatique III: Programmation en C++ Introduction. Examens. Chargé de cours François Fleuret francois.fleuret@epfl.ch

Informatique III: Programmation en C++ Introduction. Examens. Chargé de cours François Fleuret francois.fleuret@epfl.ch Informatique III: Programmation en C++ Lundi 24 Octobre 2005 Chargé de cours François Fleuret francois.fleuret@epfl.ch Assistant Mathieu Salzmann mathieu.salzmann@epfl.ch Assistants étudiants Ali Al-Shabibi

Plus en détail

Un exemple d'utilisation des fichiers texte en Ada.

Un exemple d'utilisation des fichiers texte en Ada. Un exemple d'utilisation des fichiers texte en Ada. Le programme suivant a pour objet de lire des tableaux 2D de caractères dont le contenu a été mémorisé dans des fichiers texte (lisibles et modifiables

Plus en détail

TP d' UML/C++ - Encapsulation

TP d' UML/C++ - Encapsulation TP UML-C++ Encapsulation Contrôle qualité : Conversion en différente bases Analyse Codage Validation Encapsulation d'objet Utilisation de la classe "string" de la STL Observations : page 1 sur 6 But :

Plus en détail

AP6 & INF1 C++ & Génie Logiciel Introduction. Welcome!

AP6 & INF1 C++ & Génie Logiciel Introduction. Welcome! AP6 & INF1 C++ & Génie Logiciel Introduction Welcome! Objectifs du cours Apprendre un langage orienté objet : C++ Découvrir, par la pratique, les notions fondamentales de la Programmation Orientée Objet

Plus en détail

INFO-F-101 Programmation Projet 4

INFO-F-101 Programmation Projet 4 INFO-F-101 Programmation Projet 4 Année académique 2008-2009 1 Introduction Une image peut-être décomposée en un tableau de points élémentaires appelés pixels (abréviation de picture element). Supposons

Plus en détail

USTL - Licence ST-A 1ère année 2005-2006 Initiation à la programmation. CTD : Variables et types de données

USTL - Licence ST-A 1ère année 2005-2006 Initiation à la programmation. CTD : Variables et types de données USTL - Licence ST-A 1ère année 2005-2006 Initiation à la programmation 1 Motivation 1.1 Un problème CTD : Variables et types de données État initial : Tas 1 un nombre quelconque de cartes, les autres tas

Plus en détail

HELdV - IPL 17/2-21/02/2014

HELdV - IPL 17/2-21/02/2014 Présentation 1 Les fichiers standards Toute application Linux (également sur d'autres systèmes) utilise trois fichiers spéciaux ouvert automatiquement au début de son exécution, ce sont les fichier stdin

Plus en détail

NFA032 Programmation objet avec Java

NFA032 Programmation objet avec Java NFA032 Programmation objet avec Java CNAM-Paris-Île-de-France Première session 2013 (sujet bis) Documents et calculatrice interdits. Le barème est donné à titre indicatif. Exercice 1 : programmation objet

Plus en détail

Le langage C. Séance n 4

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

Plus en détail

Algorithmique Correction du DS1

Algorithmique Correction du DS1 Algorithmique Correction du DS1 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Exercice 1 Exercice 1 Un service de reprographie facture : 0.10

Plus en détail

Programmation shell sous Unix/Linux sh, ksh, bash (avec exercices corrigés) (4ième édition)

Programmation shell sous Unix/Linux sh, ksh, bash (avec exercices corrigés) (4ième édition) Introduction 1. Définition du shell 19 2. Caractéristiques d'un interpréteur de commandes 19 3. Interpréteurs de commandes (shells) 20 3.1 Historique 20 3.2 Avec quel shell faut-il programmer? 21 3.2.1

Plus en détail

Linux et Compilation

Linux et Compilation Département Informatique Laboratoires de système d exploitation Introduction Linux et Compilation par Louis SWINNEN Ce document est disponible sous licence Creative Commons indiquant qu il peut être reproduit,

Plus en détail

Notion de portée locale (1)

Notion de portée locale (1) Notion de portée locale (1) Les notions de portée locale v.s. globale définies pour les blocs sont également valides dans le cadre des fonctions 1. Comme dans le cas des blocs, la portée permet de résoudre

Plus en détail

LIF 1 TP 3 : Passage de paramètres / Tableaux 1D

LIF 1 TP 3 : Passage de paramètres / Tableaux 1D LIF 1 TP 3 : Passage de paramètres / Tableaux 1D Objectifs : Traduction d algorithmes en langage C Mode de passage des paramètres : données, données/résultats (cas particulier des tableaux). Utilisation

Plus en détail

java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream

java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream java.io.* java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream Byte streams Les programmes utilisent des bytes de 8-bits pour réaliser des entrées/sorties de byte

Plus en détail

C++ / MC-II1 - Cours n o 3 Allocation Mémoire et Constructeurs

C++ / MC-II1 - Cours n o 3 Allocation Mémoire et Constructeurs C++ / MC-II1 - Cours n o 3 Allocation Mémoire et Constructeurs Sebastien.Kramm@univ-rouen.fr IUT GEII Rouen 2010-2011 S. Kramm (IUT Rouen) MCII1 - Cours 3 2010-2011 1 / 47 Sommaire 1 Rappels de C et définitions

Plus en détail

Cours Langage C. Passage de paramètres à la fonction main Pointeur de fonction Allocation dynamique

Cours Langage C. Passage de paramètres à la fonction main Pointeur de fonction Allocation dynamique Cours Langage C Passage de paramètres à la fonction main Pointeur de fonction Allocation dynamique I Passage de paramètres à la fonction main Tout exécutable C doit comporter une fonction main dont le

Plus en détail

GESTION DES FICHIERS. Plan

GESTION DES FICHIERS. Plan Chapitre 10 GESTION DES FICHIERS Objectif: Connaître et manipuler les différentes primitives de gestion de fichier de niveau haut. Pré requis: Les fonction d'entrées sorties Les pointeurs Les structures

Plus en détail

La programmation Impérative par le Langage C

La programmation Impérative par le Langage C La programmation Impérative par le Langage C 1. Introduction 1.1 Qu est-ce que la programmation impérative? Un programme est constitué de plusieurs lignes d instructions. Chaque instruction permet d effectuer

Plus en détail

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (3ième édition)

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (3ième édition) Introduction 1. Objectif de l'ouvrage 15 2. Fonctionnement d un site web 16 Utilisation d EasyPHP 1. Introduction 19 2. Installation d'easyphp 20 3. Prise en main d EasyPHP 20 4. Création d une première

Plus en détail

4/ Introduction à la Programmation Objet avec le langage C++

4/ Introduction à la Programmation Objet avec le langage C++ Cours programmation - Marc Jachym Licence professionnelle Métrologie dimensionnelle et qualité IUT de St Denis, Université Paris 13 4/ Introduction à la Programmation Objet avec le langage C++ 4.1/ La

Plus en détail

Langage procédural C

Langage procédural C Langage procédural Le langage C Laboratoire ISIR (email: ouarti@isir.upmc.fr) 2011 2012 Classe de mémorisation La classe de mémorisation est un élément qui influence la gestion des variables Lorsqu elle

Plus en détail

L1-S2 MPI : Programmation Impérative

L1-S2 MPI : Programmation Impérative L1-S2 MPI : Programmation Impérative Correspondances Langage de Réalisation C++ Ce résumé constitue un aide-mémoire rédigé sous forme d exemples qui illustrent partiellement l utilisation des différentes

Plus en détail

GL / C++ Chapitre 7. Lien Dynamique Méthodes Virtuelles

GL / C++ Chapitre 7. Lien Dynamique Méthodes Virtuelles GL / C++ Chapitre 7 Lien Dynamique Méthodes Virtuelles 1. Pointeur sur un objet d'une classe dérivée Considérons les classes écrites précédemment : Personne Etudiant // dérive de personne Salarie // dérive

Plus en détail

Série 16: Entrées-sorties sur les fichiers Buts

Série 16: Entrées-sorties sur les fichiers Buts Série 16: Entrées-sorties sur les fichiers Buts Dans cette série, vous allez voir comment on peut écrire et lire dans un fichier. Ceci est très utile quand on veut par exemple initialiser un programme

Plus en détail

Langage de programmation C++

Langage de programmation C++ Langage de programmation C++ Mohamed Tounsi Institut Supérieur d'informatique et Mathématiques Monastir Janvier 2013 Mohamed Tounsi (ISIMM) Langage de programmation C++ Janvier 2013 1 / 14 La notion de

Plus en détail

Complément du cours Langage C

Complément du cours Langage C Complément du cours Langage C Licence Fondamentale SMI (semestre 3) Pr. Mouad BEN MAMOUN ben_mamoun@fsr.ac.ma Année universitaire 2013/2014 2013/2014 Pr. Ben Mamoun 1 Chapitre 9 Types structures, unions

Plus en détail

1 Hello world. 2 Sorties en C. DUT Informatique M3101 Système S3 2015 / 2016. Travaux Pratiques n o 0 : Rappels de programmation C

1 Hello world. 2 Sorties en C. DUT Informatique M3101 Système S3 2015 / 2016. Travaux Pratiques n o 0 : Rappels de programmation C DUT Informatique 2015 / 2016 Travaux Pratiques n o 0 : Rappels de programmation C Nom(s) : Groupe : Date : Objectifs : renouer avec les notions, la manipulation et l écriture de programmes C, en particulier

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

Les Fichiers en Pascal

Les Fichiers en Pascal Les Fichiers en Pascal Université de Toulouse II DEUG MASS Année 2004-2005 Patricia PASCAL < ppascal@laas.fr > - Page 1 / 31 - Plan du cours sur les fichiers les fichiers, pourquoi, comment? (p3) les différents

Plus en détail

Introduction au langage C++

Introduction au langage C++ Introduction au langage C++ D après les notes d introductives au C++ de Stéphane Menozzi http://www.proba.jussieu.fr/~menozzi/ Maxime Pallud IMACS/X-TEC Bat 404 Tel: 01 69 33 46 86 Mail: pallud@imacs.polytechnique.fr

Plus en détail

Tableau R : 255 0 0 255 255 0. Tableau G : 0 255 255 255 255 0. Tableau B : 0 0 255 0 255 0. Chaque carré représente un pixel

Tableau R : 255 0 0 255 255 0. Tableau G : 0 255 255 255 255 0. Tableau B : 0 0 255 0 255 0. Chaque carré représente un pixel Mini-Projet n 2 : Jouer avec les images. A rendre pour le lundi 14 novembre 2011 avant midi. Introduction : Une image est un ensemble de pixels dont chacun est défini par trois valeurs, que l'on note R,

Plus en détail

Avant-propos. Introduction Chapitre 1. Mécanismes essentiels du shell Chapitre 2. A. Définition du shell... 18

Avant-propos. Introduction Chapitre 1. Mécanismes essentiels du shell Chapitre 2. A. Définition du shell... 18 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr Saisissez la référence ENI de l'ouvrage RI3PRO dans la zone de recherche et validez.

Plus en détail

ULCO-L1-Algo1-CM : Initiation à l algorithmique avec le langage C++

ULCO-L1-Algo1-CM : Initiation à l algorithmique avec le langage C++ ULCO-L1-Algo1-CM : Initiation à l algorithmique avec le langage C++ Table des matières 1 Généralités 3 1.1 Définitions/Glossaire....................................... 3 1.2 Exemples d algorithmes de la

Plus en détail

Normes de programmation en langage C++

Normes de programmation en langage C++ Normes de programmation en langage C++ Bakhtouchi Abdelghani EMP, Bordj El Bahri bakhtouchi@yahoo.fr ANNEE: 2009/2010 Sommaire 1. Introduction.. 1 2. Présentation.. 1 2.1. Format des fichiers source. 1

Plus en détail

Cours C++ Lorsque je lance Dev C++, il apparaître l'écran ci-contre.

Cours C++ Lorsque je lance Dev C++, il apparaître l'écran ci-contre. Cours C++ Définition : Le langage C est un langage de programmation inventé par MM. Kernighan et Ritchie au début des années 70. Au début des années 90, Bjarne Stroustrup fait évoluer le langage vers le

Plus en détail

CONNECT. Mode d emploi. ios

CONNECT. Mode d emploi. ios CONNECT Mode d emploi ios fr Table des matières 1 Qu est-ce que JURA Connect?... 3 2 Premiers pas...4 3 Smartphones/tablettes compatibles... 5 4 Assistant de configuration...6 Bienvenue dans l assistant

Plus en détail

Flots. Les mécanisme d'entrées/sorties

Flots. Les mécanisme d'entrées/sorties 1. Hiérarchie de classes 2. Manipulateurs 3. Fichiers 4. Formatage des sorties 5. Entrées 6. Manipulateurs, le retour Flots Les mécanisme d'entrées/sorties Hiérarchie de classes Les entrées et sorties

Plus en détail

Langages de haut niveau

Langages de haut niveau Langages de haut niveau Introduction Un assembleur est un programme traduisant en code machine un programme écrit à l'aide des mnémoniques Les langages d'assemblage représentent une deuxième génération

Plus en détail

Travaux Pratiques d Informatique 1

Travaux Pratiques d Informatique 1 Faculté Polytechnique de Mons Service d Informatique Travaux Pratiques d Informatique 1 par Mohammed BENJELLOUN Avec la participation de : J-F Bauwens, Assistant S. Mahmoudi, Assistant E. Malengreau, Assistante

Plus en détail

1 Pointeurs, références, alias et tableaux

1 Pointeurs, références, alias et tableaux 1 Pointeurs, références, alias et tableaux 1 1.1 Définitions Un pointeur est une variable contenant l'adresse d'un objet en mémoire. Un pointeur est déni par le couple (type, adresse) de l'objet pointé.

Plus en détail

Excel 2002 VBA Programmation

Excel 2002 VBA Programmation Excel 2002 VBA Programmation SOMMAIRE Débuter la programmation... 3 A) Cahier des charges... 3 1 - Quel(s) est(sont) le(s) résultat(s) à obtenir?... 3 2 - Quelles sont les données initiales à fournir?...

Plus en détail

Visual Basic T. EL AZZAOUI. toufik.elazzaoui@student.emi.ac.ma 2015-2016

Visual Basic T. EL AZZAOUI. toufik.elazzaoui@student.emi.ac.ma 2015-2016 Visual Basic T. EL AZZAOUI toufik.elazzaoui@student.emi.ac.ma 2015-2016 Plan: - La programmation - Langage de programmation - Langage BASIC / Langage Visual Basic. - L environnement de développement de

Plus en détail

Programmation : Exercices

Programmation : Exercices Programmation : Exercices IUT de Villetaneuse R&T 1 ère année Laure Petrucci 6 novembre 2007 1 Premiers programmes Exercice 1.1 : Machine à dessiner On souhaite écrire un programme pour afficher des dessins.

Plus en détail

Laboratoires de système d exploitation. Introduction à PERL. par Louis SWINNEN

Laboratoires de système d exploitation. Introduction à PERL. par Louis SWINNEN Département Informatique Laboratoires de système d exploitation Introduction à PERL par Louis SWINNEN Ce document est disponible sous licence Creative Commons indiquant qu il peut être reproduit, distribué

Plus en détail

LES PROCÉDURES ET LES FONCTIONS

LES PROCÉDURES ET LES FONCTIONS LES PROCÉDURES ET LES FONCTIONS 165 LES PROCÉDURES ET LES FONCTIONS CHAPITRE 7 OBJECTIFS EXPOSER LE PRINCIPE DE LA DÉCOMPOSITION DES PROGRAMMES DANS LE LANGAGE PASCAL. PRÉCISER LE RÔLE ET L UTILITÉ DES

Plus en détail

Les tableaux (ou vecteurs) (1/3) Cours numéro 3: Programmation impérative LI213 Types et Structures de données. Les tableaux (3/3) Les tableaux (2/3)

Les tableaux (ou vecteurs) (1/3) Cours numéro 3: Programmation impérative LI213 Types et Structures de données. Les tableaux (3/3) Les tableaux (2/3) Les tableaux (ou vecteurs) (1/3) Le type tableau est une des réponses à la question : LI213 Types et Structures de données Licence d Informatique Université Paris 6 comment agréger un très grand nombre

Plus en détail

Représentation des nombres (2)

Représentation des nombres (2) Univ. Lille 1 - Licence Informatique 2ème année 2013-14 Codage de l'information Représentation des nombres (2) Objectifs du TP Ce TP a pour but 1. d'étudier la programmation des conversions entiers

Plus en détail

QC ETL QUASAR Conseil QC ETL. - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL. - 3 L écriture de procédures de transformation

QC ETL QUASAR Conseil QC ETL. - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL. - 3 L écriture de procédures de transformation QC ETL - 1 - Qu est-ce qu un ETL? - 2 Les fonctionnalités de QC ETL - 3 L écriture de procédures de transformation 1 1 Qu est-ce qu un ETL? La création d un SIAD (Système d Information d Aide à la Décision)

Plus en détail

Les conteneurs STL C++

Les conteneurs STL C++ Les conteneurs STL C++ 2014 tv - v.1.0 Sommaire La librairie standard C++ 2 Notion de conteneurs......................................... 2 Notion de complexité.........................................

Plus en détail

Conseils pour mettre en forme un rapport avec LibreOffice Texte (Writer). Sommaire, pagination, note de bas de page.

Conseils pour mettre en forme un rapport avec LibreOffice Texte (Writer). Sommaire, pagination, note de bas de page. Conseils pour mettre en forme un rapport avec LibreOffice Texte (Writer). Sommaire, pagination, note de bas de page À partir de LO 5 Table des matières 1 Introduction...2 2 Création de la page de garde

Plus en détail

Manipulations 2 Types agrégés : les tableaux en C... 2 Conteneur : les tableaux en C++... 7 Synonyme de type... 9

Manipulations 2 Types agrégés : les tableaux en C... 2 Conteneur : les tableaux en C++... 7 Synonyme de type... 9 TP Développement n 4 2012 tv - v.1.0 Sommaire Manipulations 2 Types agrégés : les tableaux en C.................................. 2 Conteneur : les tableaux en C++..................................

Plus en détail

Fiche n 12 : classes et objets (initiation au C++)

Fiche n 12 : classes et objets (initiation au C++) Fiche n 12 : classes et objets (initiation au C++) Nous entrons maintenant dans l'univers de la programmation objet et de C++. Une classe peut être vue comme une évolution d'une structure qui comporte

Plus en détail

Chapitre. Calculs binaires, octaux, décimaux ou hexadécimaux

Chapitre. Calculs binaires, octaux, décimaux ou hexadécimaux Chapitre 5 Calculs binaires, octaux, décimaux ou hexadécimaux La calculatrice peut effectuer les opérations suivantes qui impliquent différents systèmes numériques. Conversion de systèmes numériques Opérations

Plus en détail