TP2 : tableaux dynamiques et listes chaînées
|
|
|
- Élisabeth Turgeon
- il y a 10 ans
- Total affichages :
Transcription
1 Licence 2 Informatique 9 / 2014 TP2 : tableaux dynamiques et listes chaînées Contact.h 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 typedef struct contact { 5 char *nom; 6 char *num; 7 char *adresse; 8 char *titre; 9 }contact; 10 Proposition de corrigé par Mahdi Benmoussa 11 //Fonction pour la création de contacts 12 contact creercontact (char *nom, char *num, char *adresse, char *titre){ 13 contact c; 14 c.nom = (char*) malloc(sizeof(char)); 15 c.num = (char*) malloc(sizeof(char)); 16 c.adresse = (char*) malloc(sizeof(char)); 17 c.titre = (char*) malloc(sizeof(char)); c.nom = nom; 20 c.num = num; 21 c.adresse = adresse; 22 c.titre = titre; return c; 25 } //Fonction pour la modification du nom du contact 28 void modificationnom (char **nom, char **num, char **adresse, char **titre, 29 char *nouveau1, char *nouveau2, char *nouveau3, char *nouveau4){ 30 *nom = nouveau1; 31 *num = nouveau2; 32 *adresse = nouveau3; 33 *titre = nouveau4; 34 //return nom; 35 } //Fonction qui affiche un contact 38 void affichercontact (contact c){ 39 printf("nom du contact : %s \n",c.nom); 40 printf("numéro du contact : %s \n",c.num); 41 printf("adresse mail du contact : %s \n",c.adresse); 42 printf("titre professionnel du contact : %s \n",c.titre); 43 } Liste.h 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 1
2 4 #include "Contact.h" 5 6 typedef struct liste{ 7 contact c; 8 struct liste *suiv; 9 }ls; //Fonction d insertion de contacte 12 ls *inserercontact (contact c, ls *l){ 13 ls *p = (ls*) malloc (sizeof(ls)); 14 p->c = c; if(l == NULL){ 17 p->suiv = NULL; 18 l->suiv = p; 19 }else{ 20 p->suiv = l->suiv; 21 l->suiv = p; 22 } return l; 25 } //Fonction de suppression de contacte 28 ls *supprimercontact (contact c, ls *l){ 29 ls *pt, *pred; 30 if (l == NULL) 31 return NULL; 32 else{ 33 pt = (ls*) malloc (sizeof(ls)); 34 pt = l->suiv; 35 pred = (ls*) malloc (sizeof(ls)); 36 pred = l->suiv; 37 if(strcmp(l->suiv->c.nom,c.nom)==0 && 38 strcmp(l->suiv->c.num,c.num)==0 && 39 strcmp(l->suiv->c.adresse,c.adresse)==0 && 40 strcmp(l->suiv->c.titre,c.titre)==0) 41 l->suiv = l->suiv->suiv; 42 else{ 43 while (pt!=null){ 44 if(strcmp(pt->c.nom,c.nom)==0 && 45 strcmp(pt->c.num,c.num)==0 && 46 strcmp(pt->c.adresse,c.adresse)==0 && 47 strcmp(pt->c.titre,c.titre)==0){ 48 pred->suiv = pt->suiv; 49 free(pt); 50 break; 51 }else{ 52 pred=pt; 53 pt=pt->suiv; 54 } 55 } 56 } 57 return l; 58 } 59 } //Fonction de mdofication de contacte 62 ls *modifiercontact (char *nom, char *num, char *adresse, char *titre, 63 char *nouveau1, char *nouveau2, char *nouveau3, char *nouveau4, ls *l){ 64 ls *pt; 65 if (l == NULL) 66 return NULL; 67 else{ 68 pt = l->suiv; 69 while (pt!=null){ 2
3 70 if(strcmp(pt->c.nom,nom)==0 && 71 strcmp(pt->c.num,num)==0 && 72 strcmp(pt->c.adresse,adresse)==0 && 73 strcmp(pt->c.titre,titre)==0){ 74 modificationnom(&pt->c.nom,&pt->c.num,&pt->c.adresse,&pt->c.titre, 75 nouveau1,nouveau2,nouveau3,nouveau4); 76 break; 77 }else{ 78 pt=pt->suiv; 79 } 80 } 81 return l; 82 } 83 } //Afficher tous les contacts 86 void afficherlistecontacts(ls *l){ 87 ls *pt = l->suiv; 88 printf("******************** \n"); 89 printf("liste des contacts : \n"); 90 printf("******************** \n"); 91 if(l==null l->suiv==null) 92 printf("la liste est vide, il n y a pas de contacts! \n"); 93 else{ 94 while (pt!=null) 95 { 96 affichercontact(pt->c); 97 printf(" \n"); 98 pt=pt->suiv; 99 } 100 } 101 } //Fonction pour chercher un contacte 104 ls *cherchercontact(char *nom, char *num, ls *l){ 105 ls *pt = l->suiv; while (pt!= NULL){ 108 if(strcmp(pt->c.nom,nom)==0&&strcmp(pt->c.num,num)==0){ 109 break; 110 } 111 pt = pt->suiv; 112 } 113 return pt; 114 } //Fonction pour trier les contactes 117 ls *trier (ls *l){ 118 int veriter = 0; 119 ls *pt, *tempo; 120 tempo = NULL; 121 pt = l->suiv; 122 while (pt!=null){ 123 ls *nouv = (ls*) malloc(sizeof(ls)); 124 nouv->c.nom = pt->c.nom; 125 nouv->c.num = pt->c.num; 126 nouv->c.adresse = pt->c.adresse; 127 nouv->c.titre = pt->c.titre; 128 if (tempo == NULL){ 129 tempo = (ls*) malloc(sizeof(ls)); 130 tempo->suiv = nouv; 131 nouv->suiv = NULL; 132 } 133 else{ 134 ls *ptempo = tempo->suiv; 135 ls *pred = tempo; 3
4 136 while (ptempo!= NULL){ 137 if (strcmp(pt->c.num, ptempo->c.num) < 0){ 138 pred->suiv = nouv; 139 nouv->suiv = ptempo; 140 veriter = 1; 141 break; 142 } 143 pred = ptempo; 144 ptempo = ptempo->suiv; 145 } 146 if (veriter == 0) 147 pred->suiv = nouv; 148 else 149 veriter = 0; 150 } 151 pt = pt->suiv; 152 } 153 return tempo; 154 } //Affichage du Menu 157 void affichermenu (){ 158 printf(" \n Menu : \n"); 159 printf("option 0 : Quitter l application \n"); 160 printf("option 1 : Charger les contacts depuis un fichier \n"); 161 printf("option 2 : Sauvgarder les contacts dans un fichier \n"); 162 printf("option 3 : Insérer un contact \n"); 163 printf("option 4 : Supprimer un contact \n"); 164 printf("option 5 : Modifier un contact \n"); 165 printf("option 6 : Afficher tous les contacts \n"); 166 printf("option 7 : Chercher un contact \n"); 167 printf("option 8 : Trier les contacts \n"); 168 } //Fonction pour le traitement de la lecture des chaines de caractères 171 static void purger(void) 172 { 173 int c; while ((c = getchar())!= \n && c!= EOF) 176 {} 177 } 178 //Fonction pour le traitement de la lecture des chaines de caractères 179 static void clean (char *chaine) 180 { 181 char *p = strchr(chaine, \n ); if (p) 184 { 185 *p = 0; 186 } else 189 { 190 purger(); 191 } 192 } //traitement du menu de l application 195 ls *traitementmenu (ls *l){ 196 //Déclaration de variables : 197 int j; 198 //int i; //printf("choisir le type de structures à utiliser : "); 201 //scanf("%d",&i); 4
5 202 //Travail sur le choix de la structure affichermenu(); 205 scanf("%d",&j); 206 purger(); while (1){ 210 contact c; 211 char *nom, *num,*adresse,*titre, *nouveau1,*nouveau2,*nouveau3,*nouveau4; 212 nom = (char*) malloc(sizeof(char)); 213 num = (char*) malloc(sizeof(char)); 214 adresse = (char*) malloc(sizeof(char)); 215 titre = (char*) malloc(sizeof(char)); 216 nouveau1 = (char*) malloc(sizeof(char)); 217 nouveau2 = (char*) malloc(sizeof(char)); 218 nouveau3 = (char*) malloc(sizeof(char)); 219 nouveau4 = (char*) malloc(sizeof(char)); 220 switch (j){ 221 case 0: system("clear"); 222 printf("merci pour visite, au revoir! \n"); 223 exit(0); 224 case 1: printf("cette option n est pas encore disponible \n"); 225 break; 226 case 2: printf("cette option n est pas encore disponible \n"); 227 break; 228 case 3: //system("clear"); 229 printf("veuillez entrez les informations du contact a inserer \n"); 230 printf("le nom : "); 231 fgets(nom, 256, stdin); 232 clean(nom); 233 printf("le numéro : "); 234 fgets(num, 256, stdin); 235 clean(num); 236 printf("l adresse mail : "); 237 fgets(adresse, 256, stdin); 238 clean(adresse); 239 printf("le titre professionnel : "); 240 fgets(titre, 256, stdin); 241 clean(titre); 242 c=creercontact(nom,num,adresse,titre); 243 l=inserercontact(c,l); 244 break; 245 case 4: printf("veuillez entrez les informations du contactà supprimer \n"); 246 printf("le nom : "); 247 fgets(nom, 256, stdin); 248 clean(nom); 249 printf("le numéro : "); 250 fgets(num, 256, stdin); 251 clean(num); 252 printf("l adresse mail : "); 253 fgets(adresse, 256, stdin); 254 clean(adresse); 255 printf("le titre professionnel : "); 256 fgets(titre, 256, stdin); 257 clean(titre); 258 c=creercontact(nom,num,adresse,titre); 259 l=supprimercontact(c,l); 260 break; 261 case 5: printf("veuillez entrez les informations du contacts à modifier 262 ainsi que les nouvelles informations \n"); 263 printf("le nom : "); 264 fgets(nom, 256, stdin); 265 clean(nom); 266 printf("le numéro : "); 267 fgets(num, 256, stdin); 5
6 268 clean(num); 269 printf("l adresse mail : "); 270 fgets(adresse, 256, stdin); 271 clean(adresse); 272 printf("le titre professionnel : "); 273 fgets(titre, 256, stdin); 274 clean(titre); 275 printf("le nouveau nom : "); 276 fgets(nouveau1, 256, stdin); 277 clean(nouveau1); 278 printf("le nouveau numéro de téléphone : "); 279 fgets(nouveau2, 256, stdin); 280 clean(nouveau2); 281 printf("la nouvelle adresse mail : "); 282 fgets(nouveau3, 256, stdin); 283 clean(nouveau3); 284 printf("le nouveau titre : "); 285 fgets(nouveau4, 256, stdin); 286 clean(nouveau4); 287 l=modifiercontact(nom,num,adresse,titre, 288 nouveau1,nouveau2,nouveau3,nouveau4,l); 289 break; 290 case 6: afficherlistecontacts(l); 291 break; 292 case 7: printf("veuillez saisir le nom et le numéro de téléphone 293 du contacte à chercher \n"); 294 fgets(nom, 256, stdin); 295 clean(nom); 296 fgets(num, 256, stdin); 297 clean(num); 298 ls *pt = cherchercontact(nom, num, l); 299 if (pt!= NULL){ 300 printf("recherche réussi, voici votre contacte \n"); 301 printf("nom = %s \nnum = %s \n = %s \nprofession = %s \n", 302 pt->c.nom,pt->c.num,pt->c.adresse,pt->c.titre); 303 } 304 else 305 printf("le contacte n existe pas \n!"); 306 break; 307 case 8: l = trier(l); 308 if (l->suiv == NULL) 309 printf("echec du trie, liste vide! \n"); 310 else 311 printf("trie réussi! \n"); 312 break; 313 default: printf("votre choix n est pas correcte!"); 314 break; } 317 affichermenu(); 318 scanf("%d",&j); 319 purger(); 320 system("clear"); 321 } 322 } Principale.c 1 #include "Liste.h" 2 3 int main (){ 4 5 ls *l = (ls*) malloc (sizeof(ls)); 6 l->suiv = NULL; 7 6
7 8 l=traitementmenu(l); 9 10 return 0; 11 } 7
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
Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs
Brefs rappels sur la pile et le tas (Stack / Heap) et les pointeurs (exemples en C) v1.11 - Olivier Carles 1 Pile et Tas Mémoire allouée de manière statique Mémoire Allouée Dynamiquement variables locales
Les structures. Chapitre 3
Chapitre 3 Les structures Nous continuons notre étude des structures de données qui sont prédéfinies dans la plupart des langages informatiques. La structure de tableau permet de regrouper un certain nombre
Les structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Programme 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
Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail
Finalités Archivage Messagerie Evolution pour usage HTML en utilisant Hypermail Réalisé par sa modestie Arnaud de VILLEDON de NAIDE, le 9 mars 2013 Document sous licence GPL. Vous avez le droit d'en faire
Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Introduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Les arbres binaires de recherche
Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s
1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles [email protected]
Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles [email protected] Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables
Java Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Chapitre 1 : La gestion dynamique de la mémoire
Chapitre 1 : La gestion dynamique de la mémoire En langage C un programme comporte trois types de données : Statiques; Automatiques ; Dynamiques. Les données statiques occupent un emplacement parfaitement
#include <stdio.h> #include <stdlib.h> struct cell { int clef; struct cell *suiv; };
#include #include struct cell int clef; struct cell suiv; ; / longueur. pc->suiv est l abréviation de (pc).suiv. pour cette fonction comme pour les suivantes, on donne, lorsqu il existe
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
Programmation système de commandes en C
Programmation système de commandes en C Cours de Programmation système Tuyêt Trâm DANG NGOC Université de Cergy-Pontoise 2012 2013 Tuyêt Trâm DANG NGOC Programmation système de commandes
MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES Maude Manouvrier La reproduction de ce document par
Les fichiers. Chapitre 4
Chapitre 4 Les fichiers Jusqu à maintenant tous les programmes que nous avons conçus travaillaient sur des données qui étaient perdues après chaque session de travail. On peut cependant, c est bien naturel,
Cours 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
TRAVAUX PRATIQUES Programmation Système Langage C / Système UNIX. 2 e année Génie Informatique
Communications entre Processus Communication par tubes. TRAVAUX PRATIQUES Programmation Système Langage C / Système UNIX. 2 e année Génie Informatique Exemple 1: On a deux processus Père/Fils. Le père
Programmation en langage C
Programmation en langage C Anne CANTEAUT INRIA - projet CODES B.P. 105 78153 Le Chesnay Cedex [email protected] http://www-rocq.inria.fr/codes/anne.canteaut/cours C 2 Table des matières 3 Table des
Bases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
INITIATION A LA PROGRAMMATION
2004-2005 Université Paris Dauphine IUP Génie Mathématique et Informatique INITIATION A LA PROGRAMMATION PROCEDURALE, A L'ALGORITHMIQUE ET AUX STRUCTURES DE DONNEES PAR LE LANGAGE C Maude Manouvrier La
Le prototype de la fonction main()
Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme
3IS - Système d'exploitation linux - Programmation système
3IS - Système d'exploitation linux - Programmation système 2010 David Picard Contributions de : Arnaud Revel, Mickaël Maillard [email protected] Environnement Les programmes peuvent être exécutés dans des
Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Initiation. àl algorithmique et à la programmation. en C
Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Cours de C. Allocation dynamique. Sébastien Paumier
Cours de C Allocation dynamique Sébastien Paumier [email protected] Illustrations provenant du site http://tux.crystalxp.net/ 1 Les pointeurs pointeur=adresse mémoire+type type* nom; nom pointe sur une
Cours de C. Petits secrets du C & programmation avancée. Sébastien Paumier
Cours de C Petits secrets du C & programmation avancée Sébastien Paumier [email protected] Illustrations provenant du site http://tux.crystalxp.net/ 1 Affectations étendues a+=expression a=a+expression
Compression de Données - Algorithme de Huffman Document de Conception
ROLLET Samuel SALLE Jennifer Compression de Données - Algorithme de Huffman Document de Conception Projet d'algorithmique et Structure des Données 1 SOMMAIRE 1. Domaine d application....4 1.1 Objectifs
MINIMUM. connaissances nécessaires à la programmation des microcontrôleurs PIC18 en langage C (une introduction au langage c A.N.S.
MINIMUM connaissances nécessaires à la programmation des microcontrôleurs PIC18 en langage C (une introduction au langage c A.N.S.I maj n 4) Equipe de formation sur les microcontrôleurs PIC Robert Toquebeuf
03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing
3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps
Introduction au Langage de Programmation C
Faculté Polytechnique de Mons Service d'informatique Introduction au Langage de Programmation C Mohammed Benjelloun 1 ère Candidature Année académique 2003-2004 Avant-propos Ces notes permettent de se
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
OS Réseaux et Programmation Système - C5
OS Réseaux et Programmation Système - C5 Rabie Ben Atitallah [email protected] RPC - XDR Rappel RPC: Remote Procedure Call Besoin d un environnement de haut niveau pour le développement
Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN [email protected] Année universitaire 2011/2012
Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN [email protected] Année universitaire 2011/2012 2011/2012 Pr. Ben Mamoun 1 Plan du cours (1) 1. Introduction 2. Types, opérateurs
Projet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
INTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Cours Programmation Système
Cours Programmation Système Filière SMI Semestre S6 El Mostafa DAOUDI Département de Mathématiques et d Informatique, Faculté des Sciences Université Mohammed Premier Oujda [email protected] Février
INF 104 (SELC) 2012-2013 Introduction au langage C
INF 104 (SELC) 2012-2013 Introduction au langage C Plan Première partie C après Java Structure d un programme Préprocesseur Variables Types de base Types composés Pointeurs(1) Instructions Deuxième partie
DNS Server RPC Interface buffer overflow. Céline COLLUMEAU Nicolas BODIN
Mémoire DNS Server RPC Interface buffer overflow Céline COLLUMEAU Nicolas BODIN 3 janvier 2009 Table des matières 1 Introduction 2 2 Présentation de la faille 3 3 Exemple d exploitation 5 4 Solutions 10
Algorithmique, Structures de données et langage C
UNIVERSITE PAUL SABATIER TOULOUSE III Algorithmique, Structures de données et langage C L3 IUP AISEM/ICM Janvier 2005 J.M. ENJALBERT Chapitre 1 Rappels et compléments de C 1.1 Structures Une structure
30.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
SUPPORT DE COURS. Langage C
Dpt Informatique 2010-2011 SUPPORT DE COURS Langage C Semestre 1 par : «CaDePe» Marie-Françoise Canut Marianne de Michiel André Péninou Table des Matières 1 Généralités...8 1.1 Introduction aux langages
Programmation avec des objets : Cours 7. Menu du jour
1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes
Conventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert [email protected] Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C
IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en
Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.
I Présentation : Dans le chapitre 1, nous avons vu comment utiliser les appels-systèmes de bas niveau pour créer et accéder à des fichiers sur le disque. Nous avons notamment mis en évidence leur dépouillement
Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski [email protected]
Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski [email protected] Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université
COURS DE LANGAGE C. DIAO Oumar. [email protected]. Université de Rennes 1. Master 1
COURS DE LANGAGE C DIAO Oumar [email protected] Université de Rennes 1 Master 1 théorie de l'information & cryptographie analyse numérique & modélisation Année universitaire 20112012 1 Table des
Derrière toi Une machine virtuelle!
Derrière toi Une machine virtuelle! Yann-Gaël Guéhéneuc [email protected] École des Mines de Nantes, France Object Technology International Inc., Canada D où ça vient? Calculatrice Machine de Turing 1936
COMPARAISONDESLANGAGESC, 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
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE Question 1 : Un câble de catégorie 5 fait référence a : A un câble coaxial fin B un câble coaxial épais C une paire torsadée non blindée (UTP) D une paire torsadée
Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Programmation Classique en langage C
DI GALLO Frédéric Programmation Classique en langage C Cours du Cycle d Approfondissement CNAM ANGOULEME 2000-2001 DI GALLO Frédéric Page 1 01/04/01 PROGRAMMATION CLASSIQUE : LANGAGE C DI GALLO Frédéric
BASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Le système de gestion des fichiers, les entrées/sorties.
Le système de gestion des fichiers, les entrées/sorties. Luigi Santocanale Laboratoire d Informatique Fondamentale, Centre de Mathématiques et Informatique, 39, rue Joliot-Curie - F-13453 Marseille 19
Programmation client-serveur sockets - RPC
Master Informatique M Plan de la suite Programmation client-serveur sockets - RPC Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/people/krakowia
Programmer en JAVA. par Tama ([email protected]( [email protected])
Programmer en JAVA par Tama ([email protected]( [email protected]) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Programmation en langage C Eléments de syntaxe
Programmation en langage C Eléments de syntaxe Université Paul Sabatier IUP Systèmes Intelligents L2 Module Informatique de base 2 Initiation à la programmation en langage C Isabelle Ferrané SOMMAIRE I-
Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
LEs processus coopèrent souvent pour traiter un même problème. Ces
Chapitre 5 Communication interprocessus LEs processus coopèrent souvent pour traiter un même problème. Ces processus s exécutent en parallèle sur un même ordinateur (monoprocesseur ou multiprocesseurs)
Travaux Dirigés n 1 : chaînes de caractères
UE LE315 Travaux Dirigés n 1 : chaînes de caractères Exercice 1 Ecrire une fonction int nombre_caract(char *chaîne) qui retourne la taille d une chaîne de caractères. Exercice 2 Ecrire la fonction void
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Algorithmique I. [email protected] [email protected] [email protected]. Algorithmique I 20-09-06 p.1/??
Algorithmique I [email protected] [email protected] [email protected] Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
COURS D'INFORMATIQUE: LANGAGE C NOTES DE COURS
MASTER PROFESSIONEL LASERS, MATERIAUX, MILIEUX BIOLOGIQUES COURS D'INFORMATIQUE: LANGAGE C NOTES DE COURS Christine ANDRAUD 2007/08 2 PLAN DU COURS: I. Introduction II. III. IV. Notions de bases Types
Structure 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
Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia
Ministère de l Enseignement Supérieur, de la Recherche Scientifique et de la Technologie Direction Générale des Etudes Technologiques Institut Supérieur des Etudes Technologiques de Djerba SUPPORT DE COURS
Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Programmation C. J.-F. Lalande. 15 novembre 2012
Programmation C J.-F. Lalande novembre 0 Ce cours est mis à disposition par Jean-François Lalande selon les termes de la licence Creative Commons Attribution - Pas d Utilisation Commerciale - Partage à
Programmation Système (en C sous linux) Rémy Malgouyres LIMOS UMR 6158, IUT département info Université Clermont 1, B.P.
Programmation Système (en C sous linux) Rémy Malgouyres LIMOS UMR 6158, IUT département info Université Clermont 1, B.P. 86 63172 AUBI Une version PDF de ce document est téléchargeable sur mon site web,
Outils pour la pratique
Cinquième partie Outils pour la pratique 121 CHAPITRE 1 Les bases des séances de TP Avant de lire cettre section, il est suggéré de relire vos notes de cours se rapportant au système d exploitation Unix.
Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)
Algorithmes et Programmes Introduction à l informatiquel! Vie d'un programme! Algorithme! Programmation : le langage! Exécution et test des programmes Chapitre : Algorithmes et Programmes 2 Cycle de vie
Assurance Qualité. Cours de génie logiciel. Renaud Marlet. LaBRI / INRIA http://www.labri.fr/~marlet. (d'après A.-M. Hugues) màj 23/04/2007
1 Cours de génie logiciel (d'après A.-M. Hugues) Assurance Qualité Renaud Marlet LaBRI / INRIA http://www.labri.fr/~marlet màj 23/04/2007 2 Les deux facettes de la qualité Conformité avec la définition
TD2/TME2 : Ordonnanceur et Threads (POSIX et fair)
UE PC2R page 1/8 TD2/TME2 : Ordonnanceur et Threads (POSIX et fair) Exercice 1 (Modélisation) Chemin de Fer Cet exercice est dédié à l étude d un problème de circulation de trains : Voie! out1 in1 Voie!
Corrigés des premiers exercices sur les classes
Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.
as Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Programmation en C. École Nationale Supérieure de Techniques Avancées. Pierre-Alain Fouque et David Pointcheval
École Nationale Supérieure de Techniques Avancées Programmation en C Pierre-Alain Fouque et David Pointcheval E-mail : [email protected] Web : http://www.di.ens.fr/~fouque/ Table des matières
Cours de programmation avancée. Le langage C. Université du Luxembourg 2005 2006
Université du Luxembourg 2005 2006 Cours de programmation avancée. Le langage C Sébastien Varrette Version : 0.4 Nicolas Bernard 2 Table des matières
Corrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Algorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Les processus légers : threads. Système L3, 2014-2015 1/31
Les processus légers : threads Système L3, 2014-2015 1/31 Les threads Les threads sont des processus légers exécutés à l intérieur d un processus L exécution des threads est concurrente Il existe toujours
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
INF111. Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1/inf111/ Massih-Reza Amini
Initiation à la programmation impérative en C http://ama.liglab.fr/ amini/cours/l1// Massih-Reza Amini Université Joseph Fourier Laboratoire d Informatique de Grenoble 2/52 Introduction Structures de contrôle
STS 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,
INTRODUCTION À LA PROGRAMMATION CONCURRENTE
INTRODUCTION À LA PROGRAMMATION CONCURRENTE POLYCOPIÉ DU COURS PCO1 Prof. Claude Evéquoz Prof. Yann Thoma HEIG-VD 2009 Table des matières Table des matières 2 1 Introduction à la programmation concurrente
PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Gestion de la mémoire
433 43 3 Gestion de la mémoire + 1. Qu'est-ce que la mémoire? - Définitions, exemples 2. Allocation contiguë en mémoire - Partitions de taille fixe, de taille variable 3. Pagination et mémoire virtuelle
BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Ecole Supérieure Privée d Ingénierie et de Technologie BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)
Testez votre installation. Créer un répertoire vide
http://www.gnu.org/software/dejagnu/ Exposé sur DejaGNU Sommaire Présentation 1 Comment l obtenir.. 1 Comment obtenir la documentation 1 Comment çà marche 1 Remarque 5 Présentation DejaGnu est un système
Chapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org
Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Diffusé par Le Projet Documentation OpenOffice.org OpenOffice.org Documentation Project How-To Table des matières 1. Introduction...3
Programmation système en C/C++
Programmation système en C/C++ Jean-Baptiste Vioix ([email protected]) 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
Programmation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Utilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Cours 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)
