Les fichiers et flux de données
|
|
- Élisabeth Boutin
- il y a 6 ans
- Total affichages :
Transcription
1 Les fichiers et flux de données 1 LES MOYENS : 3 CLASSES CRÉER DES INSTANCES DES CLASSES POUR GÉRER LES FICHIERS OUVRIR ET FERMER UN FICHIER - LES FONCTIONS OPEN () CLOSE() LA FONCTION OPEN() LES MODES D OUVERTURE LECTURE ET ÉCRITURE FORMATÉE DES DONNÉES LIRE DES DONNÉES FORMATÉES AVEC L OPÉRATEUR D EXTRACTION >> ECRIRE DES DONNÉES FORMATÉES AVEC L OPÉRATEUR D INJECTION << LECTURE ET ECRITURE NON FORMATÉ - SE DÉPLACER DANS LE FLUX ECRITURES NON FORMATÉES PUT() WRITE() LECTURES NON FORMATÉES GET() READ() SE DÉPLACER DANS LE FLUX DE DONNÉES TELL(P/G), SEEK(P/G) GÉRER L ÉTAT DU FLUX LES FONCTIONS GOOD(), EOF(), FAIL(), BAD() ET CLEAR() DÉTECTER LA FIN DE FICHIER LORS D UNE OPÉRATION DE LECTURE AVEC >> GÉRER LES ERREURS D OUVERTURE DE FICHIER EXEMPLE TRAITEMENT DU FICHIER PIÈCE STRUCTURE DE DONNÉES EXEMPLES DE PROGRAMMES TABLE DES EXEMPLES DE CODE LES MOYENS : 3 CLASSES ISTREAM Les fichiers peuvent être gérés comme des flux de données de la même manière que les entrées sorties standards (Voir Gestion des flux avec *stream). Trois classes sont disponibles : ifstream fichier en lecture seulement ofstream fichier en écriture seulement IFSTREAM fstream fichier en lecture et écriture. IOS IOSTREAM FSTREAM OSTREAM OFSTREAM 1.1 Créer des instances des classes pour gérer les fichiers ifstream fichierentree ; // instance d un flux de données fichier en lecture ofstream fichiersortie; // instance d un flux de données fichier en écriture fstream fichieres; // instance d un flux de données fichier en R/W Remarque : Si les données contenues dans le fichier, ne sont pas modifiées, le fichier doit être ouvert en lecture seulement. 2 OUVRIR ET FERMER UN FICHIER - LES FONCTIONS OPEN () CLOSE() Pour chaque type de fichier, il existe plusieurs méthodes (fonctions à appliquer), les principales sont : open () : ouvre un fichier close(): ferme un fichier ouvert Ces deux fonctions sont obligataires dans le programme. Elles associent un flux de données (stream, tampon, canal) au fichier. open () : Crée un flux (stream) associé à l objet fichier. Ensuite les données du flux sont exploitées int main(void){ ofstream monfichier; monfichier.open("mesure.dat"); //---TRAITEMENT--- monfichier.close(); return 0; David Saint-Mellion page 1/10
2 close() : Enregistre les données du flux dans le fichier, détruit le flux de données et l instance du fichier dans le programme. Remarque : Par défaut, le destructeur appelle la fonction close(). Exemple Ouvrir Fermer un fichier 1 -Ouvrir : Associe un flux de données au fichier monfichier.open("mesure.dat"); Flux de données : monfichier Fichier : mesure.dat Traitement : Modifie les données du flux de données Flux de données : monfichier Fichier : mesure.dat 3 - Fermer : Enregistre les données dans le fichier et détruit le flux de données monfichier.close(); 2.1 La fonction open() Elle ouvre le fichier et associe un flux de données. void open(const char *nom, int mode,int prot=filebuf::openprot); nom : nom du fichier à ouvrir mode : mode d'ouverture du fichier prot : il définit les droits d'accès au fichier dans le cas d'une ouverture avec création (sous UNIX). 2.2 Les modes d ouverture ios::app ios::ate ios::in ios::out ios::binary ios::trunc ios::nocreate ios::noreplace Ajouter toujours les données en fin de fichier Ouvrir le fichier en écriture avec positionnement à la fin du fichier Ouverture en lecture (par défaut pour ifstream) Ouverture en écriture (par défaut pour ofstream) Ouverture en mode binaire (par défaut en mode texte) Détruit le contenu du fichier s'il existe (par défaut pour ofstream) Si le fichier n'existe pas, l'ouverture échoue Si le fichier existe, l'ouverture échoue, sauf si ate ou app sont activés Exemples : Ouverture de fichiers open() #define NOM_FICHIER "mesure.dat" ifstream fichierpiecee; // Fichier Pièce en lecture ofstream fichierpieces; // Fichier Pièce en écriture fstream fichiertmp; // Fichier Pièce en lecture // Ouvre le fichier Pièce en lecture fichierpiecee.open(nom_fichier); // Ouvre le fichier en écriture avec destruction du contenu fichierpieces.open(nom_fichier); //1 // Ouvre le fichier sans destruction du contenu «Mode ajout à la fin» // et avec positionnement à la fin du fichier fichierpieces.open( NOM_FICHIER,ios::app); //2 // Ouvre le fichier en R/W et détruit son contenu fichiertmp.open(fichier_tmp,ios::in ios::out ios::trunc); //1 Les modes d ouverture sont surtout important en écriture. Soit on souhaite : Ajouter des données, le mode naturel est de les insérer à la fin du fichier existant en utilisant les modes d ouverture : ios: :app ou ios: :ate //2. Renouveler les données du fichier, il faut alors détruire les données //1. David Saint-Mellion page 2/10
3 3 LECTURE ET ECRITURE FORMATEE DES DONNEES Un flux de données est associé à l objet fichier. On bénéficie des fonctionnalités des classes iostream (voir diagramme $1) : Les fonctions, les opérateurs injection << et extraction >> et les manipulateurs de flux de données qui s appliquent aussi aux flux de données fichiers. 3.1 Lire des données formatées avec l opérateur d extraction >> Exemple 31 : Lecture formatée avec l opérateur d extraction >> using namespace std ; int main(void){ float cote=0 ; ifstream fmesure; //Crée un objet flux fichier en lecture fmesure.open("mesure.dat"); //Ouvre le fichier fmesure >> cote; cout<<"la cote de la PIECE 1 vaut : "<<cote<<endl; fmesure >> cote; cout<< "la cote de la PIECE 2 vaut : "<<cote<<endl; fmesure.close(); //Ferme le fichier et le flux return 0; Remarques L opérateur d extraction prélève la donnée dans le flux et l affecte à cote. De plus, il gère le déplacement sur l objet suivant se trouvant dans le flux. Cet opérateur peut être surchargé pour s adapter à d autres types de données que ceux du langage C++. Voir : Gestion des flux avec *stream, surcharge des opérateurs >> et << Voir : Exemples $6 3.2 Ecrire des données formatées avec l opérateur d injection << Exemple 32 : Ecriture formatée avec l opérateur d injection << using namespace std ; int main(void){ float cote1=13; float cote2=13.5; float cote3=13.8; ofstream fmesure; // Instance flux fichier en lecture // Ouvre le fichier en lecture avec destruction des données fmesure.open("mesure.dat"); fmesure << cote1<< endl; fmesure << cote2<< endl; fmesure << cote3<< endl; fmesure.close(); // Ferme le fichier et le flux return 0; Résultat dans le fichier Remarques L opérateur d injection affecte la donnée cotex au flux de données. Le retour chariot endl est également injecté pour séparer les données. La fonction close() enregistre les données dans le fichier «mesure.dat». Cet opérateur peut être surchargé pour s adapter à d autres types de données que ceux du langage C++. Pour ajouter les données au fichier existant (à la fin), il faut l ouvrir en mode app monfichier.open("mesure.dat",ios::app); Voir : Gestion des flux avec *stream, surcharge des opérateurs >> et << Voir : Exemples $6 David Saint-Mellion page 3/10
4 4 LECTURE ET ECRITURE NON FORMATE - SE DEPLACER DANS LE FLUX 4.1 Ecritures non formatées put() write() Les fonctions pour lire des données dans un fichier sont issues de la classe ostream Voir Gestion des flux avec *stream. put(char c) Insére le caractère passé en paramètre write(const char*, int n) Insère la chaîne de n caractères, passée en paramètre Exemple : put() monfichier.put( W ); // Ecrit le caractère W dans monfichier Exemples : write() monfichier.write("dupont",6); // Ecrit Dupont dans monfichier const char nom[] = "Dupont"; monfichier.write(nom,sizeof(nom)); // sizeof(nom) vaut 7 octets soit 6 caractères + 0x00(fin chaîne) 4.2 Lectures non formatées get() read() Les fonctions - get(), getline(), read() - permettent de lire des données dans un fichier. Elles sont issues de la classe istream Voir Gestion des flux avec *stream. char get() : Extrait un caractère et le retourne systématiquement - get(&char) l affecte à la variable de référence read( char *s, int n) : Lit une série de caractères( octets), paramètres : Un pointeur sur la zone où les caractères sont affectés et le nombre de caractère à prélever. Exemple : get() char car ; monfichier.get(car); // Lit une caractère dans monfichier et l affecte à car Exemple : read() float cote ; monfichier.read(&cote, sizeof(cote)); // Lit un entier dans monfichier et l affecte à cote 4.3 Se déplacer dans le flux de données tell(p/g), seek(p/g) La position est définie par le type streampos dans <ios> et correspond à la position d un octet dans le flot de données. Trois constantes de positionnement dans le flux de données sont définies : beg Début du flux (0) end Fin du flux cur Position courante dans le flux Les fonctions pour se déplacer dans un flux fichier sont : tellg et seekg - g comme get() réservé au flux fichier en lecture tellp et seekp - p comme put() réservé au flux fichier en écriture Ces fonctions permettent de lire et de fixer une nouvelle valeur à la position dans le flux de données fichier courant. streampos tellp() Retourne la position courante dans le flot de données de sortie. La première position est 0. seekp(streampos position n) Se positionner dans le flot de données de sortie à n octets par rapport au début du flux. seekp(streamoff n, seek_dir dir) Se positionne à n octet(s) par rapport à dir ( au début du flot : dir = beg, à la position courante : dir = cur à la fin du flot : dir = end (n peut être négatif) Les fonctions tellg() et seekg() sont similaires Exemple 43-1 : Relire la dernière donnée écrite float cote=10.1; float cotelu=0; David Saint-Mellion page 4/10
5 fstream fmesure; // Instance fichier en lecture // Ouvre le fichier en R/W et positionnement à la fin pour ajout fmesure.open("mesure.dat",ios::in ios::out ios::ate); fmesure<<cote<<endl; // Écrit la donnée fmesure.seekg(-(sizeof(cote)+sizeof('endl')),ios::end); // Se replace fmesure>>cotelu; // Relit les données cout<<"donnes du flux fichier : "<<cotelu<<endl; Exemple 43-2 : Taille du fichier ifstream fmesure ; streampos positioncourante; // Instance fichier en lecture // Variable de position fmesure.open("mesure.dat"); // Ouvre le fichier streampos positioncourante = monfichier.tellg(); //Mémorise la position début fmesure.seekg(0, ios::end); // Se positionne à la fin cout<<"taille du fichier : "<< fmesure.tellg()<<" octet(s)<< endl; fmesure.seekg(positioncourante, ios::beg); // Reprend la position début Exemple 43-3 : Relire une série de données dans un flux fichier après écriture float cote1=111.1; float cote2=222.2; float cotelu=0; fstream fmesure; // Instance fichier en lecture streampos OldPosition; // Variable de position // Ouvre le fichier en R/W et positionnement à la fin pour ajout fmesure.open("mesure.dat",ios::in ios::out ios::ate); OldPosition=fMesure.tellp(); // Mémorise la position fmesure<<cote1 <<endl<<cote2<<endl; // Écrit les données // Replace le pointeur de flux à l'ancienne position fmesure.seekg(oldposition,ios::beg); // Reprend l ancienne position // Relit les données tq pas EOF voir $542 while(fmesure>>cotelu) cout<<"donnes du flux fichier : "<<cotelu<<endl; fmesure.close(); Voir exemples 64 et 65 5 GERER L ETAT DU FLUX L état du flux de données est indiqué par des drapeaux : (Voir Gérer des flux avec *stream) ios: :eofbit Indique la fin de fichier ios: :goodbit Indique l état normal du flux, lorsqu il ne s est produit aucune erreur ios: :badbit Indique qu une opération a échoué. N interdit pas la poursuite des opérations - warning ios: :failbit Indique qu une erreur logique s est produite lors d une opération de lecture. ios: :harfail Indique qu une erreur grave s est produite. Exemple défaillance matériel : secteur défectueux d un disque, coupure réseau 5.1 Les fonctions good(), eof(), fail(), bad() et clear() Ces fonctions sont des assesseurs des indicateurs des bits d état du flux. Elles renvoient un booléen La fonction clear() permet de repositionner ces indicateurs. Exemple 51 : Evolution des bits indicateurs d état du flux int main(void) { float cote=0; fstream fichierpiece ; fichierpiece.open("mesure.dat"); //Etat 1 // Etat 1 David Saint-Mellion page 5/10
6 while(fichierpiece>>cote){ cout<<"cote "<<cote<<endl; //Etat 2 // Etat 2 fichierpiece.clear(); //Etat 3 return 0; // Le destructeur ferme le fichier // Etat 3 // Etat 1 A l issue de l ouverture du fichier, le flux est dans son état normal : ios::goodbit=1, ios::eofbit=0, ios::badbit=0, ios::failbit=0 // Etat 2 A l issue du parcourt, la fin de fichier est atteinte - eof valide, le flux n est plus dans un état normal : ios::goodbit=0, ios::eofbit=1, ios::badbit=0, ios::failbit=1 // Etat 3 clear() repositionne les indicateurs d état ios::goodbit=1, ios::eofbit=0, ios::badbit=0, ios::failbit=0, // Etat 1 Lors de la tentative d ouverture d un fichier inexistant, le bit fail est activé. En conséquence, good passe à 0 et indique que le flux n est pas dans un état normal. ios::goodbit =0, ios::eofbit=0, ios::badbit=0, ios::failbit=1 Ouverture d un fichier inexistant 5.2 Détecter la fin de fichier lors d une opération de lecture avec >> L opérateur d extraction >> renvoie la valeur la valeur 0 sur l instance de la classe lorsqu il y a une erreur de lecture ou qu il rencontre la fin de fichier - fichierpiece>>cote retourne alors 0. La structure while exécute la boucle tant que EOF n est pas trouvé while(fichierpiece>>cote){ cout<<"cote "<<cote<<endl; Exemple 52 : Lire et afficher toutes les données d un fichier float cote=0 ; ifstream fmesure; //Crée un objet fichier en lecture fmesure.open("mesure.dat"); //Ouvre le fichier fmesure >>cote; // Lit le fichier tq!= EOF while(fmesure>>cote) cout<<cote<<endl; Voir aussi : Exemples 532 et $6 5.3 Gérer les erreurs d ouverture de fichier Pour gérer l échec d ouverture du fichier on utilise les assesseurs fail() ou gool() - fail() renvoie la valeur true (gool() - false), s il y une erreur Voir Gestion des flux avec *stream). Exemple : Gérer les erreurs d ouverture de fichier #define ERREUR_OUVERTURE true if (fichierpiece.fail()==erreur_ouverture){ cerr<<"erreur d'ouverture de NOM_FICHIER "<<endl; return 1; Voir $6 exemples 63, 64 et 65 6 EXEMPLE TRAITEMENT DU FICHIER PIECE Liste de Série : 0 à 20 Série, séparateur des éléments retour chariot \n Série = Date+ Nombre de pièces+ Cotes : séparateur le retour chariot \n Date = année+mois+jour+heure+minutes : alphanumérique, séparateur le point «.» Ex : David Saint-Mellion page 6/10
7 Nombre de pièces : entier, valeurs comprises entre 1 et 100 Cotes : tableau de 1 à 100 réels, séparateur l espace Ex : Structure de données Exemple 61 : Définition de la structure de données Piece // s_piece.h Déclaration de la structure Pièce et des fonctions #include <string> struct Piece { string serie ; int nbrepieces; float cote[100]; ; // Surcharge de l opérateur >> pour Piece istream &operator>> (istream &fluxe, Piece &p); // Surcharge de l opérateur << pour Piece ostream &operator<< (ostream &fluxs, Piece &p); void afficher(piece &p); // s_piece.cpp Définition du corps des fonctions #include "struct_piece.h" // Surcharge de l'opérateur>> istream &operator>> (istream &fluxi, Piece &p) { fluxi>>p.serie; fluxi>>p.nbrepieces; for (int i=0; i<p.nbrepieces; i++) fluxi>>p.cote[i]; return fluxi; // Surcharge de l'opérateur<< ostream &operator<< (ostream &fluxs, Piece &p) { fluxs<<p.serie<<endl; fluxs<<p.nbrepieces<<endl; for (int i=0; i<p.nbrepieces; i++) fluxs<<p.cote[i]<<' '; fluxs<<endl; return fluxs; void afficher(piece &p) { void afficher(piece &p) { cout<<p.serie<< " Nombre de pieces : "<<p.nbrepieces<<endl; cout<<" Cotes : "; for (int i=0; i<p.nbrepieces; i++) cout << p.cote[i] << ' '; cout<<endl; // Saisir la données d'une série de pièces void saisir(piece &p) { int i=0; float saisie; // Saisir les données de la série cout<<"saisissez la serie an.mois.jour.heure.minute"<<endl; cin>>p.serie ; cout<<"saisissez la cote, puis faire ENTR"<<endl; while (cin>>saisie){ p.cote[i]=saisie; i++; David Saint-Mellion page 7/10
8 cout<<"saisissez la cote, puis faire ENTR"<<endl; cout<<"ou Terminez la saisie par CRTL 'Z' "<<endl; // CRTL 'Z' - Fin de fichier sur un PC p.nbrepieces=i; // Renseigne nbrepieces // Le passage des paramètres de la structure est réalisé par Référence 6.2 Exemples de programmes Exemple 62 : Ajouter une série de pièces au le fichier Pièce #include "s_piece.h" #define NOM_FICHIER "piece.dat" int main(void) { Piece serie; ofstream fichierpiece; // Fichier en écriture // Ouverture du fichier en mode Ajout et positionnement à la fin fichierpiece.open( NOM_FICHIER,ios::app); saisir(serie); fichierpiece<<serie ; return 0; // Le destructeur ferme et enregistre le fichier Exemple 63 : Lire et Afficher les données des séries de pièces // Lit le fichier Pièces et affichage des données de chaque série // Gère les erreurs d ouverture de fichier #include "s_piece.h" #define NOM_FICHIER #define ERREUR_OUVERTURE "piece.dat" true int main(void) { Piece serie; int nbreseries=0; ifstream fichierpiece; // Fichier en lecture // Ouvre le fichier et gère l erreur d ouverture fichierpiece.open(nom_fichier); if (fichierpiece.fail()==erreur_ouverture){ cerr<<"erreur d'ouverture de NOM_FICHIER "<<endl<<endl; return 1; // Lit une série et l'affiche while(fichierpiece>>serie){ nbreseries++; cout<<"serie "<<nbreseries<<endl; afficher(serie); cout<<endl; return 0; // Le destructeur ferme le fichier Exemple 64 : Supprimer une série de pièces du fichier Pièce // Les séries sont copiées dans un fichier temporaire sauf la série à supprimer // Puis le fichier temporaire sont copiées dans le fichier Pièce David Saint-Mellion page 8/10
9 #include "s_piece.h" #define NOM_FICHIER #define FICHIER_TMP #define ERREUR_OUVERTURE false "piece.dat" "piece.tmp" int main(void) { Piece serie; int numero=4; // Numéro de la série à supprimer int index=1; ifstream fichierpiecee; // Fichier Pièce en lecture ofstream fichierpieces; // Fichier Pièce en écriture fstream fichiertmp; // Fichier Temporaire en R/W streampos debuttmp; // Variable de position flux // Ouvre le fichier Pièce en lecture fichierpiecee.open(nom_fichier); if (fichierpiecee.good==erreur_ouverture){ cerr<<"erreur d'ouverture de NOM_FICHIER "<<endl<<endl; return 1; // Ouvre le fichier Temporaire et détruit son contenu fichiertmp.open(fichier_tmp,ios::in ios::out ios::trunc); debuttmp=fichiertmp.tellg(); // Mémorise la position début // Copie les séries dans fichiertmp sauf celle à supprimer while(fichierpiecee>>serie){ if(index!=numero){ fichiertmp<<serie; index++; fichierpiecee.close(); // Ferme le fichier Pièce // Ouvre fichierpiece en lecture en détruisant son contenu fichierpieces.open(nom_fichier); fichiertmp.seekp(debuttmp,ios::beg); // Se repositionne au début // Copie les séries de fichiertmp à fichierpiece while(fichiertmp>>serie) fichierpieces<<serie; return 0; // Les destructeurs ferment les fichiers Exemple 65 : Constituer le fichier Série en se déplaçant dans le fichier Pièce // Recherche la taille du fichier Pièces, le nombre de séries // Renseigne le fichier Série avec : la taille du fichier Pièce, le nombre de // séries, le nombre total de pièces et le nombre de pièces dans chaque série #include "s_piece.h" #define NOM_FICHIER #define FICHIER_TMP #define ERREUR_OUVERTURE "piece.dat" "piece.tmp" true int main(void){ Piece serie; int nbreseries=0; int totalpieces=0; int taillefichier=0; David Saint-Mellion page 9/10
10 streampos debutfichierpiece; // Position début fichier Pièce streampos positiontotalpieces; // Position de nbreseries streampos positionnbreseries; // Position de totalpieces ifstream fichierpiece; // Fichier en lecture ofstream fichierserie; // Fichier en écriture // Ouvre le fichier Pièce en lecture fichierpiece.open(fichier_piece); if (fichierpiece.fail()==erreur_ouverture){ cerr<<"erreur d'ouverture de NOM_FICHIER "<<endl; return 1; // Ouvre le fichier Série avec destruction du contenu fichierserie.open(fichier_serie,ios::trunc); // Détermine la Taille du fichier Pièce, écrit la valeur dans fichier Série debutfichierpiece=fichierpiece.tellg(); // Mémorise la position début fichierpiece.seekg(0, ios::end); // Se positionne à la fin taillefichier=fichierpiece.tellg(); fichierserie<<taillefichier<<endl; fichierpiece.seekg(debutfichierpiece, ios::beg);// Se repositionne au début // Réserve l'emplacement pour nbreseries positionnbreseries=fichierserie.tellp(); // Mémorise la position nbreseries fichierserie<<nbreseries<<endl; // Réserve l'emplacement nbreseries // Réserve l'emplacement pour totalpiece positiontotalpieces=fichierserie.tellp(); // Mémorise la position totalpieces fichierserie<<totalpieces<<endl; // Réserve l'emplacement // Lit et écrit le nombre de pieces dans une série while(fichierpiece>>serie){ fichierserie<<serie.nbrepieces<<' '; totalpieces += serie.nbrepieces; nbreseries++; // Ecrit totalpieces dans le fichier Série fichierserie.seekp(positionnbreseries, ios::beg); // Position sur nbreserie fichierserie<<nbreseries; // Renseigne nbreseries fichierserie.seekp(positiontotalpieces, ios::beg); // Position totalpieces fichierserie<<totalpieces; // Renseigne totalpieces return 0; // Les destructeurs ferment les fichiers 7 TABLE DES EXEMPLES DE CODE Exemples : Ouverture de fichiers open()... 2 Exemple 31 : Lecture formatée avec l opérateur d extraction >>... 3 Exemple 32 : Ecriture formatée avec l opérateur d injection <<... 3 Exemple : put()... 4 Exemples : write()... 4 Exemple : get()... 4 Exemple : read()... 4 Exemple 43-1 : Relire la dernière donnée écrite... 4 Exemple 43-2 : Taille du fichier... 5 Exemple 43-3 : Relire une série de données dans un flux fichier après écriture... 5 Exemple 51 : Evolution des bits indicateurs d état du flux... 5 Exemple 52 : Lire et afficher toutes les données d un fichier... 6 Exemple : Gérer les erreurs d ouverture de fichier... 6 Exemple 61 : Définition de la structure de données Piece... 7 Exemple 62 : Ajouter une série de pièces au le fichier Pièce... 8 Exemple 63 : Lire et Afficher les données des séries de pièces... 8 Exemple 64 : Supprimer une série de pièces du fichier Pièce... 8 Exemple 65 : Constituer le fichier Série en se déplaçant dans le fichier Pièce... 9 David Saint-Mellion page 10/10
TP : Gestion d une image au format PGM
TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples
Plus en détailGé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étailProgrammation 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étailCours de C/C++ par la pratique. Hugues Talbot
Cours de C/C++ par la pratique Hugues Talbot 24 octobre 2008 2 Table des matières 1 Comment démarrer? 7 1.1 Un programme simple en C pur.......................... 7 1.2 Un programme en C ++...............................
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailDans 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étailINITIATION 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étailIntroduction à la programmation Travaux pratiques: séance d introduction INFO0201-1
Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un
Plus en détailProjet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai.
Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai. 1 Introduction On considère une grille de 20 lignes 20 colonnes. Une case de la grille peut être vide, ou contenir une et une
Plus en détailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détailSYSTÈME DE GESTION DE FICHIERS
SYSTÈME DE GESTION DE FICHIERS - DISQUE 1 Les couches logiciels réponse requête Requêtes E/S Système E/S Pilote E/S Interruptions utilisateur traitement S.E. commandes S.E. S.E. matériel Contrôleur E/S
Plus en détailFlux de données Lecture/Ecriture Fichiers
Flux de données Lecture/Ecriture Fichiers 1 Un flux de données est un objet qui représente une suite d octets d un programme pour une certaine destination ou issus d une source pour un programme flux d
Plus en détailCours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan
Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre
Plus en détailCompression 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étailIntroduction au pricing d option en finance
Introduction au pricing d option en finance Olivier Pironneau Cours d informatique Scientifique 1 Modélisation du prix d un actif financier Les actions, obligations et autres produits financiers cotés
Plus en détailTravaux 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étailCours 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étailDépartement Automatisation et Informatisation Année 2005-2006. Programmation en C++ Institut des Sciences et Techniques de l Ingénieur d Angers
Département Automatisation et Informatisation Année 2005-2006 Programmation en C++ Institut des Sciences et Techniques de l Ingénieur d Angers 1 Bertrand Cottenceau 1. Introduction du cours de C++...3
Plus en détailSYSTÈME DE GESTION DE FICHIERS SGF - DISQUE
SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE C.Crochepeyre MPS_SGF 2000-20001 Diapason 1 Les couches logiciels réponse SGF requête matériel matériel Requêtes E/S Système E/S Pilote E/S Interruptions Contrôleur
Plus en détailC++ : PROGRAMMATION-OBJET
Cours d informatique 2003/2004 C++ : PROGRAMMATION-OBJET SOMMAIRE : Chapitre 1 : Le concept d objet........ 1 1.1 Objet usuel.............. 1 1.2 Objet informatique Classe........ 2 1.3 Encapsulation.............
Plus en détailProgrammation 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étail30.avr.10 Présentation miniprojet. 9.mars.10 Cours 3 4.mai.10 Cours C++ 1. 16.mars.10 Cours 4 11.mai.10 Cours C++ 2
2ème partie de cours: 23.fév.10 Cours 1 20.avr.10 TEST 24.fév.10 TP1 21.avr.10 miniprojet 26.fév.10 TP réserve 23.avr.10 miniprojet 2.mars.10 Cours 2 27.avr.10 Présentation miniprojet 3.mars.10 TP2 28.avr.10
Plus en détailCours 6 : Tubes anonymes et nommés
Cours 6 : Tubes anonymes et nommés Mécanisme de communications du système de fichiers I-node associé. Type de fichier: S_IFIFO. Accès au travers des primitives read et write. Les tubes sont unidirectionnels
Plus en détailIntroduction 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étailCours 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étailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailCOMPARAISONDESLANGAGESC, C++, JAVA ET
REPUBLIQUE DU BENIN *******@******* MINISTERE DE L ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE(MESRS) *******@******* UNIVERSITE D ABOMEY CALAVI(UAC) *******@******* ECOLE POLYTECHNIQUE D ABPOMEY
Plus en détailLe 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étailet Programmation Objet
FACULTE POLYTECHNIQUE DE MONS Service d Informatique et Programmation Objet Mohammed Benjelloun 2 ème Bachelier Année académique 2008-2009 Table des matières Avant-propos--------------------------------------------------------------------------
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailBases 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étailAvertissement : Ce cours suppose la connaissance et la maîtrise du langage C CONTENU DU COURS BIBLIOGRAPHIE
Enseignement : GI 62 - C++ - Programmation orienté objet (C++) Objectif : Ce module se situe dans la continuité des modules (ii12) et UEL RAN Informatique et permet d'acquérir les bases de la modélisation
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailProgrammation en C/C++
INSA de Lyon Département Génie Electrique Module IF1,IF3,IF4 Programmation en C/C++ Thomas Grenier Nicolas Ducros Tanneguy Redarce Lyon, le 3 mars 2015 2 / 63 Table des matières 1 Développement en C++
Plus en détailARDUINO DOSSIER RESSOURCE POUR LA CLASSE
ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée
Plus en détail1/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étailPROJET 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étailLicence 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étail1.6- Génération de nombres aléatoires
1.6- Génération de nombres aléatoires 1- Le générateur aléatoire disponible en C++ 2 Création d'un générateur aléatoire uniforme sur un intervalle 3- Génération de valeurs aléatoires selon une loi normale
Plus en détailAnalyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
Plus en détailCours 14 Les fichiers
Cours 14 Les fichiers F. Gayral 1 Fichier : définition /media/travaux/documents/fgenseignement/java1/courstpsfgfc/14-fichiers/voirtypefichiers Fichier = ensemble d informations codées et stockées sur une
Plus en détailINTRODUCTION 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étailClaude 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étailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détail1 Lecture de fichiers
Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit
Plus en détailGESTION DES FICHIERS C/UNIX
Licence IG Page 1 sur 6 GESTION DES FICHIERS C/UNIX Introduction Deux modes d appel - Par la bibliothèque standard C (appel de haut niveau) - Par appels système (bas niveau) Nécessite les includes suivant
Plus en détailCours de Système : Gestion de Fichiers
Cours de Système : Gestion de Fichiers Bertrand Le cun et Emmanuel Hyon bertrand.le cun{at}u-paris10.fr et Emmanuel.Hyon{at}u-paris10.fr Université Paris Ouest Nanterre 25 octobre 2011 B.L.C. & E.H. (UPO)
Plus en détail1. 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étailExonet : sauvegarde automatisée d une base de données
Exonet : sauvegarde automatisée d une base de données Description Propriétés Description Intitulé long Formation concernée Matière Présentation Notions Transversalité Outils Mots-clés Durée 4h. Auteur(es)
Plus en détailCours 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étailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailLes 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étailInitiation. à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étailIN 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étailCours 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étailMISE 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étailProgrammation 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étailInfo0101 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étailCours 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étailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailIntroduction à l héritage en C++
Algorithmique/Langage 1ère année Introduction à l héritage en C++ Yacine BELLIK IUT d Orsay Yacine.Bellik@iut-orsay.fr 1 Bibliographie Ce cours est basé sur le livre suivant : Programmer en C++, 5ème édition
Plus en détailAlgorithmique 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étailIntroduction à l algorithmique et à la programmation M1102 CM n 3
Introduction à l algorithmique et à la programmation M1102 CM n 3 DUT Informatique 1 re année Eric REMY eric.remy@univ-amu.fr IUT d Aix-Marseille, site d Arles Version du 2 octobre 2013 E. Remy (IUT d
Plus en détailTP 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étail03/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étailLes 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étailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailBrefs 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étailINTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores
INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN
Plus en détailSTS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module
François SCHNEIDER Lycée Victor-Hugo BESANÇON. STS SE FreeRTOS Programmation réseau WIFI Programmation réseau Socket Tcp FlyPort smart Wi-Fi 802.11 module Prérequis : langage C, connaissance réseau : Ip,
Plus en détailSeance 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étailCentre 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étailDE 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étailExceptions. 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étailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailLe 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étailIRL : Simulation distribuée pour les systèmes embarqués
IRL : Simulation distribuée pour les systèmes embarqués Yassine El Khadiri, 2 ème année Ensimag, Grenoble INP Matthieu Moy, Verimag Denis Becker, Verimag 19 mai 2015 1 Table des matières 1 MPI et la sérialisation
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailLe langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie
Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis
Plus en détail6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure
Plus en détailPremiers 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étailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailRappels 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étailGOL502 Industries de services
GOL502 Industries de services Conception d un service Partie IIb Version 2013 Introduction Conception d un service partie IIb Nous verrons dans ce chapitre Modélisation d un service; Langage de modélisation
Plus en détailTD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting
IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances
Plus en détailINITIATION 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étailProgrammation système en C/C++
Programmation système en C/C++ Jean-Baptiste Vioix (jb.vioix@free.fr) LE2I - ENESAD http://jb.vioix.free.fr 1-41 Programmation en C/C++ sous Unix Il existe des très nombreux outils de développement sous
Plus en détailPré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étailLicence Sciences et Technologies Examen janvier 2010
Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.
Plus en détailRecherche 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étailProgrammation stochastique
Programmation stochastique (Partie 1) IFT-6512 Hiver 2008 Présentation succinte COIN-OR? COmputational INfrastructure for Operations Research. Préalablement, COIN-OR tenait pour Common Optimization INterface
Plus en détailV- 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étailJava 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étailINFO-F-105 Language de programmation I Séance VI
INFO-F-105 Language de programmation I Séance VI Jérôme Dossogne Année académique 2008 2009 Un grand merci à Yves Roggeman pour ses relectures et remarques des codes et commentaires qui ont contribuées
Plus en détailProgrammation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire
Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS CCS Sommaire Généralités sur le langage. 2 Structure d un programme en C.. 3 Les constantes et équivalences.. 4 Les variables...
Plus en détailUtilisation 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étailConventions 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étailETUDE DE CAS en UML : GESTION DES COMMANDES DE PIECES FABRIQUEES PAR LA SOCIETE C
ETUDE DE CAS en UML : GESTION DES COMMANDES DE PIECES FABRIQUEES PAR LA SOCIETE C La société C fabrique des pièces métalliques réalisées dans son atelier. La société C est en relation commerciale uniquement
Plus en détailPrendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;
s Introduction Naissance d'un programme Exercice I-1: Apprendre à décomposer une tâche en sous-tâches distinctes a. Objets nécessaires : 1 tableau, 1 clou, 2 pointes, 1 ficelle, 1 marteau, 1 crayon, 1
Plus en détailProgrammation 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