Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia
|
|
|
- Côme Cormier
- il y a 10 ans
- Total affichages :
Transcription
1 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 PROGRAMMATION I Élaboré par : Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia Public cible : Informatique (Niveau I) Version 2007
2
3 AVANT-PROPOS Objectifs généraux Il s agit d un cours d initiation au langage C. Il a pour but de : -découvrir l environnement de programmation C, -savoir réagir devant un problème de programmation. PROGRAMMATION I Public Cible Ce cours est destiné essentiellement aux étudiants du premier niveau des Etudes Supérieures Technologiques, Option Informatique. Volume horaire Ce cours est présenté, de manière hebdomadaire, comme suit : -1h 30mn du Cours Intégré -3h de Travaux Pratiques pour chaque groupe Soit en total : 22,5h de Cours Intégré et 45h de Travaux Pratiques Moyens pédagogiques -Tableau -Micro-ordinateurs équipés de Borland C ou Turbo C -Polycopiés de Travaux Dirigés et Travaux Pratiques Evaluation -Coefficient : 3 -Devoir Surveillé, moyenne des tests 30% -Examen TP, moyenne des TPs (comptes rendus) 30% -Examen final 40%
4 TABLE DES MATIERES CHAPITRE 1 : INTRODUCTION AU LANGAGE C I. Généralités I.1. Informatique I.2. Architecture d un ordinateur I.3. Système d exploitation I.4. Langages de programmation II. Caractéristiques générales du langage C II.1. Caractéristiques II.2. Structure générale d un programme C III. Etapes d exécution d un programme C CHAPITRE 2 : ELEMENTS DE BASE I. Les variables II. Les opérateurs II.1. Opérateurs arithmétiques II.2. Opérateurs relationnels II.3. Opérateurs logiques II.4. Priorité des opérateurs III. Les constantes IV. L instruction d affectation IV.1. L instruction d affectation = IV.2. Les opérateurs d incrémentation et de décrémentation IV.3. Simplification des opérateurs arithmétiques IV.4. Conversion de types V. Les fonctions standard d Entrées/Sorties V.1. Bibliothèque adoptée V.2. Fonction getchar() V.3. Fonction putchar() V.4. Fonction scanf() V.5. Fonction printf VI. Exercice resolu CHAPITRE 3 : LES STRUCTURES DE CONTROLE CONDITIONNELLES I. Définition II. L instruction conditionnelle «if» II.1 L instruction conditionnelle «if» simple II.2. L instruction conditionnelle «if else» II.3. Instructions «if» imbriquées III. L instruction de sélection multiple «switch» IV. Exercice résolu CHAPITRE 4 : LES STRUCTURES DE CONTROLE ITERATIVES I. Définition II. L instruction itérative «For» III. L instruction itérative «while» IV. L instruction itérative «do.. while» V. Choix de la structure répétitive adéquate VI. Exercice résolu
5 CHAPITRE 5 : LES FONCTIONS I. Définition II. Déclaration des fonctions III. Appel des fonctions IV. Exercice résolu CHAPITRE 6 : LES TABLEAUX I. Définition II. Tableaux unidimensionnels II.1. Déclaration d un tableau unidimensionnel II.2. Accès à une case d un tableau unidimensionnel III. Tableaux multidimensionnels III.1. Déclaration d un tableau multidimensionnel III.2. Accès à une case d un tableau multidimensionnel IV. Tableaux et fonctions V. Opérations du tri V.1. Définition V.2. Tri par sélection V.3. Tri à bulles V.4. Tri par insertion VI. Exercice résolu CHAPITRE 7 : LES CHAINES DE CARACTERES I. Définition II. Fonctions standards de manipulation des chaînes II.1. Fonction scanf() II.2. Fonction printf() II.3. Fonction sscanf() II.4. Fonction sprintf() II.5. Fonction gets() II.6. Fonction puts() III. Autres fonctions de manipulation des chaînes III.1. Fonction strlen() III.2. Fonction strcpy() III.3. Fonction strcat() III.4. Fonction strcmp() IV. Exercice résolu BIBLIOGRAPHIE ANNEXES
6 CHAPITRE : 1 INTRODUCTION AU LANGAGE C Objectifs spécifiques -Introduire l informatique -Introduire les langages de programmation -Introduire le langage C -Connaître la structure générale d un programme C PROGRAMMATION I Plan du chapitre I. Généralités II. Caractéristiques générales du langage C III. Etapes d exécution d un programme C Volume horaire 1 séance de cours intégré
7 Chapitre 1 : Introduction au langage C I. GENERALITES I.1. Informatique C est une science qui permet de traiter des informations en utilisant des machines appelées : ordinateurs. Entrées e1 e2 Machine s1 s2 Sorties I.2. Architecture d un ordinateur Un ordinateur est une machine qui permet de stocker des données (informations) structurées et de les traiter à la demande de l'utilisateur, afin de produire un résultat voulu. Le terme «ordinateur» a été proposé en 1955 par J. Perret à la demande d'ibm, pour remplacer le terme «Calculateur». Les ordinateurs sont distingués soit par leurs tailles (micro / mini / mainframe), leurs domaines d'applications (terminal / serveur / station de travail) ou leurs interopérabilités (système d'exploitation ouvert, MS-DOS, MacOS, etc.). Les constituants de base d un ordinateur sont : - Unité de traitement et de commande : C est la partie intelligente de la machine qui prend en charge l exécution des programmes. Le processeur, le «chef d orchestre» de l ordinateur, est lui qui gouverne tout l ordinateur. Traitements : opérations de calcul arithmétiques et logiques. Caractéristiques du microprocesseur : taille, fréquence de l horloge. Premier microprocesseur utilisé par IBM s appelle Il est composé de registres (8 bits). -> (16 bits, Mhz), (32 bits, Mhz), ( Mhz), Pentium, Pentium II, - Unité mémoire Cette unité est représentée par un nombre défini de cellules (ou de composants). A chaque cellule ou composant élémentaire de la mémoire correspond un bit ( 1 ou 0). 1 octet correspond à 8 bits consécutifs. 1 Ko correspond à 1024 octets. 1 Mo correspond à 1024 Ko
8 Chapitre 1 : Introduction au langage C Système de codification des caractères. ASCII (American Standard Code for Information Interchange). Il dispose d une table de codification de caractères (un code étant une loi de correspondance de caractères). (Voir Annexe) Supports mémoires : disques durs, disquettes, CD-ROM, DVD-ROM, Flash Disk - Unité d échange Elle permet de gérer les échanges d informations entre la partie interne de l ordinateur et la partie externe. Les périphériques ou les organes externes : clavier, écran, imprimante, I.3. Système d exploitation - Un système d exploitation est un ensemble de programmes qui permettent d exploiter les possibilités matérielles d un ordinateur. - A chaque système d exploitation correspond un nombre défini de commandes respectant une syntaxe appropriée. - On distingue différents types de systèmes d exploitation : Systèmes d exploitation mono-postes, mono-tâches : un seul poste de travail est reconnu, une seule tâche est permise. DOS. Systèmes mono-postes, multi-tâches : un seul poste est reconnu. Les tâches peuvent être activées en parallèle. C est à travers le partage de temps que le Système d exploitation peut exécuter plusieurs programmes au même temps. Exemples : OS2, Windows 95. Systèmes multi-postes, multi-tâches : plusieurs postes de travail sont reconnus. Chaque poste peut exécuter plusieurs tâches. Unix. I.4. Langages de programmation Un programme est un ensemble d instructions (ordres machines) qui aboutissent à l exécution d un traitement souhaité. - Langage machine : c est un langage de programmation qui utilise des instructions machine (instruction directement exécutée par l unité de traitement (processeur)). Chaque unité de traitement possède un catalogue d instructions machine. - Assembleur : c est un langage qui utilise des mots clés en langage pseudo-naturel pour remplacer les codifications utilisées dans les langages machine
9 Chapitre 1 : Introduction au langage C - Langage évolué : apporte une simplification au niveau de la programmation en intégrant des instructions qui se rapprochent du langage naturel et scientifique. Exemples : Fortran, Cobol, Basic, Pascal, C, II. CARACTERISTIQUES GENERALES DU LANGAGE C II.1. Caractéristiques - Créé dans les années 70 par Denis-Ritchie / Labo Bell Telephone Laboratories. [1] - Conçu pour l écriture du système d exploitation UNIX. - C est l intermédiaire entre langage haut niveau (indépendamment des machines) et langage bas niveau (assembleur). - C est un langage évolué (proche du langage naturel et scientifique), procédural (modulaire), portable (réutilisé et réintégrable dans plusieurs plates formes). II.2. Structure générale d un programme C Un programme C s écrit généralement sous la forme suivante : - 4 -
10 Chapitre 1 : Introduction au langage C /* Déclaration des bibliothèques */ #include<nomfichier1.h> #include<nomfichier2.h>.. /* Déclaration des constantes */ #define cons1 val1 #define cons2 val2.. /* Déclaration des fonctions */ type-de-retour Nom-fonction1(type1 arg1,..., typen argn) /* Début du corps de la fonction1 */ instruction1 ; instruction2 ;.. /* Fin du corps de la fonction1 */ type-de-retour Nom-fonction2(type1 arg1,..., typen argn) /* Début du corps de la fonction2 */ instruction1 ; instruction2 ;.. /* Fin du corps de la fonction2 */.. /* Fonction principale */ type-de-retour main( ) /* Déclaration des variables */ type-variable1 variable1 ; type-variable2 variable2 ;.. /* Corps du programme */ instruction1 ; instruction2 ;.. Remarques : - Une bibliothèque est un fichier comportant un ensemble de fonctions (routines) prêtes à l emploi. Elles peuvent être livrées en standard avec le langage ou créées par le développeur. Exemples : stdio.h, math.h, string.h, - Chaque instruction en C doit se terminer par un point virgule «;». - Les accolades et correspondent au début et à la fin du corps des fonctions. - Une fonction peut ne pas contenir de paramètres. - Les commentaires en C (texte non interprété) sont soit délimités par «/*» et «*/» soit débutés par «//» dans le cas où ils s écrivent sur une seule ligne
11 Chapitre 1 : Introduction au langage C /* ceci est un commentaire sur plusieurs lignes */ // Ceci est un commentaire sur une seule ligne III. ETAPES D EXECUTION D UN PROGRAMME C Le C est un langage compilé (par opposition aux langages interprétés). Cela signifie qu'un programme C est décrit par un fichier texte, appelé fichier source. Ce fichier n'étant évidemment pas exécutable par le microprocesseur, il faut le traduire en langage machine. Cette opération est effectuée par un programme appelé compilateur. [2] L exécution d un programme C passe par les étapes suivantes (Précompilation, Compilation, Edition de liens, Exécution) comme le montre la figure ci-dessous : Programme source Précompilateur #include Programme source précompilé Compilation Programme objet Edition de liens Bibliothèques de fonctions Programme exécutable Exécution d un programme C - 6 -
12 CHAPITRE : 2 ELEMENTS DE BASE Objectifs spécifiques -Manipuler les variables et les constantes, -Manipuler les instructions d affectation et d entrée/ sortie, -Ecrire des programmes C simples. PROGRAMMATION I Plan du chapitre I. Les variables et les opérateurs II. Les instructions d affectation III. Les fonctions standards d Entrées/Sorties IV. Exercice résolu Volume horaire 2 séances de Cours Intégré
13 Chapitre 2 : Eléments de base I. LES VARIABLES Une instruction de déclaration permet de définir une ou plusieurs variables et de leur associer un espace mémoire afin de stocker une ou plusieurs informations. Syntaxe de déclaration : <type> <identificateur>; <type> <identificateur1>, <identificateur2>,, <identificateurn>; <type> : int entier (2 octets) short entier court (2 octets) long ou long int entier long (4 octets) char caractère (1 octet ) float réel (4 octets) double réel ou double précision (8 octets) <identificateur> : chaîne de caractères qui définissent le nom de la variable. Ce nom permet d y faire référence dans le code soit pour récupérer sa valeur soit pour la modifier. Il obéit aux contraintes suivantes : - Peut être composé des lettres (a-z, A-Z), des chiffres (0-9), du caractère souligné (_), - Ne peut pas commencer par un chiffre, - Le langage C différencie les majuscules et les minuscules. Exemples : Remarques : - Le type booléen est déclaré comme étant un entier où la valeur 0 correspond à la valeur «faux». Toute autre valeur est supposée «vrai», - La valeur d une variable du type caractère (char) doit être mise entre quottes ( ' ' ), Exemples : a, h, E. - Les variables du type numérique (int, long, float, double) peuvent être positives ou négatives. - Pour déclarer des variables positives, il suffit d ajouter «unsigned» au type concerné. char c ; float x ; int i, j ; unsigned int k ; /* k est un entier positif */ - 8 -
14 Chapitre 2 : Eléments de base II. LES OPERATEURS II.1. Opérateurs arithmétiques + Addition Soustraction 5-8 * Multiplication 5 * 8 / Division 5 / 8 % Reste de la division euclidienne 5 % 8 Remarques : - Le résultat de la division de deux entiers est un entier. Si le résultat n est pas entier la partie décimale est ignorée. - L opérateur modulo (%) ne peut pas être utilisé avec des nombres décimaux (float, double, ). II.2. Opérateurs relationnels = = Egal!= Différent > Strictement supérieur < Strictement inférieur >= Supérieur ou égal >= Inférieur ou égal II.3. Opérateurs logiques! Non && Et Ou II.4. Priorité des opérateurs Entre les opérateurs que nous venons de présenter, nous pouvons distinguer les classes de priorités suivantes : Priorité 1 (la plus forte): ( ) Priorité 2:!, ++, --, - Priorité 3: *, /, % Priorité 4: +, - Priorité 5: <, <=, >, >= Priorité 6: ==,!= - 9 -
15 Chapitre 2 : Eléments de base Priorité 7: && Priorité 8: Priorité 9 (la plus faible): =, +=, -=, *=, /=, %= - Dans chaque classe de priorité, les opérateurs ont la même priorité. Si nous avons une suite d'opérateurs binaires de la même classe, l'évaluation se fait en passant de la gauche vers la droite dans l'expression. - Pour les opérateurs unaires (!, ++, --) et pour les opérateurs d'affectation (=, +=, -=, *=, /=, %=), l'évaluation se fait de droite à gauche dans l'expression. III. LES CONSTANTES Une constante est une donnée dont la valeur reste fixe tout au long de l exécution d un programme. Syntaxe de déclaration : - Soit hors de la fonction principale main() : #define <nom-constante> <valeur> - Soit dans le corps de la fonction principale main() : const <type> <nom-constante> = <valeur> ; Les deux déclarations suivantes sont similaires : #define pi 3.14 const pi=3.14 ; Remarques : - Une constante ne peut jamais figurer à gauche d une affectation. - Voici quelques constantes caractères : \n Interligne \t Tabulation horizontale \v Tabulation verticale \f Saut de page \\ Back slash \ Cote \" Guillemets
16 Chapitre 2 : Eléments de base IV. L INSTRUCTION D AFFECTATION IV.1. L instruction d affectation = L affectation est une opération qui permet d attribuer une valeur ou le résultat d une expression à une variable déjà déclarée. Syntaxe d affectation: <variable> = <expression> ; Une expression peut prendre deux formes différentes : <expression> : <opérande><opérateur><opérande> i = 5 ; c= ; j = 10 ; k = 10+5 ; k = k + 1 ; <opérateur><opérande> On peut initialiser les variables dès leurs déclarations. int k=0 ; char c= ; IV.2. Les opérateurs d incrémentation et de décrémentation x++ ; x=x+1 ; x--; x=x-1 ; IV.3. Simplification des opérateurs arithmétiques x += y ; x = x + y ; x -= y ; x = x - y ; x *= y ; x = x * y ; x /= y ; x = x / y ; x %= y ; x = x % y ; IV.4. Conversion de types Il est possible de convertir explicitement une valeur en un type quelconque en forçant la transformation (casting (conversion de type forcée)). Syntaxe : (<Type>) <Expression> on se propose de diviser deux variables du type entier. Pour avoir plus de précision, nous voulons avoir un résultat de type rationnel. Pour ce faire, nous convertissons l'une des deux
17 Chapitre 2 : Eléments de base opérandes en float. Automatiquement, le langage C convertira l'autre opérande en float et effectuera une division rationnelle: char A = 3; int B = 4; float C; C = (float)a/b; La valeur de A est explicitement convertie en float. La valeur de B est automatiquement convertie en float. Le résultat de la division (type rationnel, valeur 0.75) est affecté à C. V. LES FONCTIONS STANDARD D ENTREES/SORTIES V.1. Bibliothèque adoptée A chaque utilisation d une fonction d entrée ou de sortie (lecture, écriture), il faut inclure le fichier «stdio.h» à l entête du programme. [3] Ceci se traduit par l instruction suivante : #include<stdio.h> «stdio.h» est le nom d un fichier de définitions, des fonctions et des constantes utilisées dans un programme pour des entrées ou des sorties standards. std standard i input o output h header (entête) V.2. Fonction getchar() Elle permet de renvoyer le code d un caractère saisi à partir de l organe standard d entrée à savoir le clavier. V.3. Fonction putchar() Elle permet d afficher le caractère mis en paramètre sur l organe standard de sortie à savoir l écran. char c ; c=getchar( ) ; char c ; c= ; putchar(c) ;
18 Chapitre 2 : Eléments de base V.4. Fonction scanf() Elle permet d affecter la valeur saisie à partir du clavier à la variable mise en paramètre selon le type concerné. Syntaxe : scanf(<format>, <liste des adresses de variables>) ; <format> : chaîne de caractères délimitée par définissant les spécifications de conversion de types à appliquer au niveau de la lecture. Une spécification de conversion commence par le caractère % suivi d un type de conversion comme suit : %d ou %i entier relatif (int) %u entier naturel (unsigned) %ld long %c char %f float %lf V.5. Fonction printf double Elle permet d afficher sur l écran les variables mises en paramètre selon le type concerné. Syntaxe : printf(<format>, <liste d arguments>) ; <format> : chaîne de caractères délimitée par définissant les spécifications de conversion de types à appliquer au niveau de l affichage. char c,y ; float x ; int i ; scanf( %c, & c) ; scanf( %f %c %d,&x, &y, &i) ; /* saisir un caractère et le stocker dans la variable c */ int i ; char c ; i=5 ; c= ; printf( %c %d, c, i ) ; /* permet d afficher l entier 5 et le caractère a sur l écran */
19 Chapitre 2 : Eléments de base - La fonction printf() peut ne pas contenir des arguments. printf( bonjour ) ; - Lors de l affichage, on peut donner un format spécifique aux résultats. int d=203 ; float f=23.54 ; printf( %5d, d ) ; /* Ceci va réserver 5 cellules en cadrant l entier 203 à droite */ printf( %-5 d, d ) ; /* Cadrage à gauche */ printf( %2.1 f, f) ; /* L affichage se fait avec un seul chiffre après la virgule */ - La fin de ligne ainsi que la tabulation peuvent s énoncer comme suit : \n fin de ligne \t tabulation VI. EXERCICE RESOLU Enoncé : Ecrire un programme C permettant de saisir 2 entiers a et b et d afficher la somme, la soustraction, le produit, la moyenne, le quotient et le reste de la division euclidienne de ces deux entiers. Solution : #include<stdio.h> main() int a, b; scanf("%d%d",&a,&b) ; printf("%d + %d = %d\n", a, b, a+b) ; printf("%d - %d = %d\n", a, b, a-b) ; printf("%d * %d = %d\n", a, b, a*b) ; printf("%d % %d = %d\n", a, b, a%b) ; printf("%d / %d = %d\n", a, b, a/b) ;
20 CHAPITRE : 3 LES STRUCTURES DE CONTROLE CONDITIONNELLES Objectifs spécifiques -Manipuler les structures alternatives qui permettent d évaluer une condition, -Choisir la structure adéquate en fonction du traitement à effectuer, PROGRAMMATION I -Ecrire des programmes faisant appel aux différentes structures conditionnelles. Plan du chapitre I. Définition II. L instruction conditionnelle «if» II. L instruction de sélection multiple «switch» IV. Exercice résolu Volume horaire 2 séances de Cours Intégré
21 Chapitre 3 : Les structures de contrôle conditionnelles I. DEFINITION L instruction conditionnelle permet d évaluer une condition et d exécuter en conséquence un bloc d instructions. II. L INSTRUCTION CONDITIONNELLE «IF» Syntaxe : II.1 L instruction conditionnelle «if» simple if (<condition>) <bloc d instructions > <condition> : expression arithmétique ou logique. - La condition est évaluée. Le résultat est une valeur numérique, - Si le résultat est égal à 1, la condition est interprétée à vrai et par conséquent le bloc d instructions associé est exécuté, - Si le résultat est égal à 0, la condition est interprétée à faux et par conséquent on ne tient pas compte du bloc d instructions. Ecrire un programme qui en testant sur la moyenne permet de vérifier si l étudiant a réussi son examen. Syntaxe : #include<stdio.h> main() float moyenne ; scanf ( %f, &moyenne) ; if(moyenne >= 10) printf( l etudiant a réussi son examen ) ; II.2. L instruction conditionnelle «if else» if (<condition>) <bloc d instructions 1> else <bloc d instructions 2> <condition> : expression arithmétique ou logique. - La condition est évaluée. Le résultat est une valeur numérique
22 Chapitre 3 : Les structures de contrôle conditionnelles - Si le résultat est égal à 1, la condition est interprétée à vrai et par conséquent le bloc d instructions 1 est exécuté. - Si le résultat est égal à 0, la condition est interprétée à faux et par conséquent c est le bloc d instructions 2 qui est exécuté. Ecrire un programme en C qui permet de lire à partir du clavier deux entiers et d afficher l entier le plus petit. NB : - La présence de «else» dans une instruction conditionnelle est facultative. #include<stdio.h> /* bibliothèque standard d entrée/sortie */ main() /* fonction principale */ int i, j; /* déclaration de deux entiers */ printf( Saisissez deux entiers : ) ; scanf( %d %d,&i, &j); /* Saisie de 2 entiers */ if(i < j /* Affichage de l entier1 s il est le plus petit */ printf( %d est plus petit que %d, i, j); else /* Affichage de l entier2 s il est le plus petit */ printf( %d est plus petit que %d, j, i); if ( condition ) <bloc d instructions> - Si un bloc d instructions associé à «if» ou à «else» se réduit à une seule instruction, les accolades peuvent être évitées. If ( condition ) <instruction> ; else <instruction> ; - Le bloc d instructions suivant : If ( a!= 0 ) ; else b=0 ; est équivalent à :
23 Chapitre 3 : Les structures de contrôle conditionnelles if ( a == 0) b=0 ; - La suite d'instructions suivante : if (A>B) MAX=A; else MAX=B; peut être remplacée par : MAX = (A > B)? A : B; Dans le cas général: <expr1>? <expr2> : <expr3> ; C'est-à-dire : Si <expr1> fournit la valeur zéro, alors la valeur de <expr3> est fournie comme résultat. Sinon c est la valeur de <expr2> qui est fournie comme résultat. II.3. Instructions «if» imbriquées Il est à noter que les instructions «if» peuvent être imbriquées comme le montre l exemple suivant : if ( a >= 0) if ( a <= 9) printf ( Chiffre ) ; else printf ( >> 9 ) ; else printf ( << 0 ) ; III. L INSTRUCTION DE SÉLECTION MULTIPLE «SWITCH» L'instruction «switch» permet de faire plusieurs tests de valeurs sur le contenu d'une même variable. Syntaxe : switch ( <variable> ) case Cte1 : <bloc d instructions 1> break; case Cte2 : <bloc d instructions 2> break;.. case CteN: <bloc d instructions N> [ default :
24 Chapitre 3 : Les structures de contrôle conditionnelles <bloc d instructions> ] - <variable>: de type char, int, long - Cte1, Cte2,, CteiN : constantes de type compatible avec la variable évaluée. - La variable est évaluée. Si elle est égale à la Ctei alors c est le bloc d instructions associé qui est exécuté. Si elle est différente de toutes les constantes, c est le bloc d instructions associé à «default» qui est exécuté. - «default» ainsi que le bloc d instructions associé est facultatif. - L instruction «break» permet en général de quitter un bloc d instructions et par conséquent de quitter le bloc «switch». IV. EXERCICE RESOLU Enoncé : Ecrire un programme C qui permet de tester si un caractère saisi à partir du clavier est une voyelle. Solution 1: Utilisation de if #include<stdio.h> main() char c; printf( Saisissez un caractère : ); scanf( %c,&c); if(c== c== c== c== c== c== c== c== c== c== c== ) printf( %c est une voyelle, c); else printf( %c n est pas une voyelle, c); Solution 2: Utilisation de switch #include<stdio.h> main() char c; printf( Saisissez un caractère : ); scanf( %c,&c); switch(c) case : case : case : case : case : case : case : case : case : case : case : case : printf( %c est une voyelle, c);
25 Chapitre 3 : Les structures de contrôle conditionnelles default : printf( %c n est pas une voyelle, c);
26 CHAPITRE : 4 LES STRUCTURES DE CONTROLE ITERATIVES Objectifs spécifiques -Manipuler les structures répétitives, -Choisir la structure adéquate en fonction du traitement à effectuer, -Ecrire des programmes faisant appel aux différentes structures PROGRAMMATION I répétitives. Plan du chapitre I. Définition II. L instruction itérative «for» III. L instruction itérative «while» IV. L instruction itérative «do.. while» V. Choix de la structure répétitive adéquate V. Exercice résolu Volume horaire 2 séances de Cours Intégré
27 Chapitre 4 : Les structures de contrôle itératives I. DEFINITION Les boucles sont des structures qui permettent de répéter ou refaire plusieurs fois la même série d'instructions pour des valeurs différentes jusqu'à ce qu'une condition ne soit plus réalisée. On appelle parfois ces structures instructions répétitives ou itératives. Une itération doit se terminer. Il ne faut jamais écrire des boucles infinies. Pour ce faire, il faut une condition d arrêt. II. L INSTRUCTION ITERATIVE «FOR» Syntaxe : for ( <initialisation> ; <test_de_boucle> ; <incrémentation>) <bloc d instructions> - <initialisation> : séparées par une virgule, ces instruction définissent les initialisations de la boucle. Elles sont exécutées une seule fois avant la première itération. - <test_de_boucle> : expression qui doit être égale à «faux» pour stopper la boucle. Elle est évaluée avant chaque itération. - <incrémentation> : séparées par virgule, elles définissent la séquence d instructions à réaliser entre deux itérations (avant d effectuer l évaluation de <test_de_boucle>). - Tant que le <test_de_boucle> est évalué à vrai, le bloc d instructions est exécuté. Ecrire un programme en C qui permet d afficher les entiers naturels de 1 à 10. #include<stdio.h> main( ) int I ; for( I=1 ; I <= 10 ; I++) printf ( %d, I) ; NB : Lorsque le bloc d instructions est limité à une seule instruction, les accolades associées à l instruction «for» peuvent être évitées. III. L INSTRUCTION ITÉRATIVE «WHILE» Syntaxe : while ( <condition> ) <bloc d instructions>
28 Chapitre 4 : Les structures de contrôle itératives - <condition> : expression arithmétique ou logique à évaluer. - Tant que la condition <condition> est évaluée à vrai, le bloc d instructions est exécuté. Même exemple traité précédemment en faisant maintenant recours à l instruction «while». IV. L INSTRUCTION ITÉRATIVE «DO.. WHILE» Syntaxe : #include<stdio.h> main() int I=1; while ( I <=10) printf( %d,i); I++; do <bloc d instructions> while (<condition>); - La condition est évaluée à la fin de chaque itération. - Le bloc d instructions est exécuté au moins une fois. - Tant que la condition est évaluée à vrai, le bloc d instructions est exécuté. Reprendre l exemple précédent en utilisant cette fois l instruction «do.. while» #include<stdio.h> main( ) int I=1; do printf( %d,i); I++; while ( I <=10); Remarque : [4] Il arrive fréquemment qu'en évaluant un test à l'intérieur d'une boucle, on aimerait arrêter brutalement la boucle ou alors «sauter» certains cas non significatifs. C'est le rôle de l instruction «break» :
29 Chapitre 4 : Les structures de contrôle itératives break : permet de sortir immédiatement d'une boucle for, while ou do while. Il est à noter que si la boucle se trouve elle-même dans une autre boucle, seule la boucle où l'instruction break se trouvait est stoppée. V. CHOIX DE LA STRUCTURE REPETITIVE ADEQUATE Le choix de la structure de contrôle itérative adéquate dépend du problème à résoudre. En effet, si le nombre de répétitions est connu, il est conseillé d utiliser la boucle FOR. Par contre, si le nombre d itérations varie de 1 à n, il est recommandé d utiliser la boucle DO..WHILE. Enfin si le nombre d itérations varie de 0 à n, il est possible d utiliser la boucle WHILE. La figure suivante résume tous ces cas. Vrai Nombre de répétitions connu Faux Boucle for Vrai Exécution au moins une fois Faux Boucle do while Boucle while Choix de structure itérative VI. EXERCICE RESOLU Enoncé : Calculez la somme des N premiers termes de la série harmonique : Solution : #include<stdio.h> main( ) int i, N; float S = 0; 1 + 1/2 + 1/ /N // Initialisation de la série scanf( %d, &N); for( i=1 ; i <= N ; i++) S = S +(float)1/i; printf ( %f, S) ; // Saisie de N // Conversion de type
30 CHAPITRE : 5 LES FONCTIONS Objectifs spécifiques -Décomposer un problème en plusieurs modules, -Ecrire des programmes modulaires, -Passer des paramètres à des fonctions. PROGRAMMATION I Plan du chapitre I. Définition II. Déclaration des fonctions III. Appel des fonctions IV. Exercice résolu Volume horaire 2 séances de Cours Intégré
31 Chapitre 5 : Les fonctions I. DEFINITION Une fonction est un ensemble d instructions structurées dans un bloc accessible via un nom propre appelé le nom de la fonction. Syntaxe : <type de la valeur de retour>] <identificateur> ([<liste des paramètres>]) [<déclaration des paramètres>] <bloc d instructions> La valeur de retour d une fonction est transmise à la fonction appelante via l instruction : return Syntaxe : return(<expression>) Cette instruction permet : - l évaluation de l'<expression>, - la conversion automatique du résultat de l'expression au type de la fonction, - le renvoi du résultat, - la terminaison de la fonction. La fonction MAX est du type int et elle a besoin de deux paramètres du type int. Le résultat de la fonction MAX peut être intégré dans d'autres expressions. NB : - La spécification du type de la valeur de retour est facultative. Si on ne précise pas le type de valeur de retour, le type int est pris par défaut. - Il n est pas nécessaire de spécifier le type de valeur de retour pour une fonction qui ne renvoie pas un résultat. On peut à la limite lui associer le type void comme type du résultat. int MAX(int N1, int N2) if (N1>N2) return N1; else return N2; - Une fonction peut ne pas contenir de paramètres. Dans ce cas, on peut déclarer la liste des paramètres comme void ou simplement comme (). - En principe, l'ordre des définitions dans le texte du programme ne joue pas de rôle, mais chaque fonction doit être déclarée ou définie avant d'être appelée
32 Chapitre 5 : Les fonctions - Une fonction ne peut pas fournir comme résultat des tableaux, des chaînes de caractères ou des fonctions. II. DECLARATION DES FONCTIONS En C, il faut déclarer chaque fonction avant de pouvoir l'utiliser. La déclaration informe le compilateur du type des paramètres et du résultat de la fonction. A l'aide de ces données, le compilateur peut contrôler si le nombre et le type des paramètres d'une fonction sont corrects. Si dans le texte du programme la fonction est définie avant son premier appel, elle n'a pas besoin d'être déclarée. [5] La déclaration d'une fonction se fait par un prototype de la fonction qui indique uniquement le type des données transmises et reçues par la fonction. Syntaxe : <TypeRésultat> <NomFonction> (<TypePar1>, <TypePar2>,...); Reprenons l exemple de la fonction MAX, sa déclaration s écrit : int MAX(int, int) ; Nous pouvons distinguer les différents types de déclaration des fonctions comme suit : - Déclaration locale : Une fonction peut être déclarée localement dans la fonction qui l'appelle (avant la déclaration des variables). Elle est alors disponible à cette fonction. - Déclaration globale : Une fonction peut être déclarée globalement au début du programme (derrière les instructions #include). Elle est alors disponible à toutes les fonctions du programme. - Déclaration implicite par la définition : La fonction est automatiquement disponible à toutes les fonctions qui suivent sa définition. Remarques : - La fonction principale main n a pas besoin d être déclarée. - Les variables déclarées dans un bloc d'instructions sont uniquement visibles à l'intérieur de ce bloc. On dit que ce sont des variables locales à ce bloc. Ainsi, aucune autre fonction n'a accès à ces variables. III. APPEL DES FONCTIONS Pour appeler une fonction à l intérieur d une autre fonction, on fait référence à son identificateur (nom) suivi éventuellement de la liste des paramètres
33 Chapitre 5 : Les fonctions Au moment de l exécution, un appel à une fonction se traduit par le branchement au bloc associé à la fonction, l exécution des instructions du bloc et retour à l instruction qui suit l appel. Lors du passage des paramètres à une fonction, on distingue deux modes à savoir : - Passage des paramètres par valeurs, - Passage des paramètres par adresses. Passage par valeurs : Le mode de passage des paramètres par valeurs ne permet pas de modifier le contenu des variables utilisées comme paramètres réels d une fonction appelante. Les paramètres d'une fonction sont à considérer comme des variables locales qui sont initialisées automatiquement par les valeurs indiquées lors d'un appel. A l'intérieur de la fonction, nous pouvons donc changer les valeurs des paramètres sans influencer les valeurs originales dans les fonctions appelantes. Remarque : Le mode de passage par adresses sera traité au deuxième niveau lors du module Programmation II. IV. EXERCICE RESOLU Enoncé : Ecrire une fonction qui permet de convertir un caractère minuscule (s il l est) en majuscule. Utiliser cette fonction pour convertir un texte en majuscule. Solution : #include<stdio.h> int est_miniscule(char c) return(c >= && c<= ) ; char min_maj(char c) return( + c); main( ) char c ; while((c=getchar())!= ) if (est_miniscule(c)) c=min_maj(c); putchar(c) ;
34 CHAPITRE : 6 LES TABLEAUX Objectifs spécifiques -Ecrire des programmes utilisant la structure tableau, -Manipuler les éléments d un tableau, -Effectuer des traitements spécifiques sur les tableaux, -Maîtriser le mécanisme de tri. PROGRAMMATION I Plan du chapitre I. Définition II. Tableaux unidimensionnels III. Tableaux multidimensionnels IV. Tableaux et fonctions V. Opérations du tri VI. Exercice résolu Volume horaire 2 séances de Cours Intégré
35 Chapitre 6 : Les tableaux I. DEFINITION Un tableau est un ensemble de cellules mémoires de même type consécutives et accessibles à travers un identificateur (le nom du tableau) et un indice (le numéro de la cellule).[6] Le tableau T disposant de 6 éléments. Mathématiquement parlant, T est un vecteur de dimension 6. En C, le nom d'un tableau est le représentant de l'adresse du premier élément du tableau. Les adresses des autres composantes sont calculées (automatiquement) relativement à cette adresse. II. TABLEAUX UNIDIMENSIONNELS II.1. Déclaration d un tableau unidimensionnel Syntaxe : <type> <identificateur>[<dimension>]; - <type> : type du tableau. C est le type des différents éléments du tableau. - <identificateur> : nom accordé au tableau - <dimension> : le nombre de cases réservées au tableau char ch[10] ; /* un tableau de caractères de dimension 10 */ int tab[5] ; /* un tableau d entiers de dimension 5 */ II.2. Accès à une case d un tableau unidimensionnel - Il est à noter que la première cellule du tableau est d indice 0 - Pour accéder à la i ème case d un tableau, il suffira d écrire : <nom_du_tableau>[ i ] int Tab[3] ; Tab[0]=2 ; Tab[1]=3 ; Tab[2]=-9 ; - On peut initialiser un tableau unidimensionnel de la manière suivante : III. TABLEAUX MULTIDIMENSIONNELS Syntaxe : Tab int jours[12]=31,28,31,30,31,30,31,31,30,31,30,31 = 2, 3, 9 ; ; III.1. Déclaration d un tableau multidimensionnel
36 Chapitre 6 : Les tableaux <type><identificateur>[<nombre_tableaux>]<taille_lignes> [<taille_co lonnes>] ; char matrice[4][5] ; /* matrice est un tableau de 4 lignes et 5 colonnes. */ Ceci réserve une zone mémoire de 4 * 5 = 20 caractères. int tableau [3] [4] [5] ;/* il s agit de 3 tableaux de tableaux de 4 * 5 entiers. Remarque : Un tableau multidimensionnel peut être déclaré comme un tableau unidimensionnel comme le montre l exemple suivant : int tab [2] [3] ; int tab[6] ; /* les 3 premiers éléments correspondent à la première ligne. Les autres correspondent à la deuxième ligne */ III.2. Accès à une case d un tableau multidimensionnel Pour accéder à un élément se trouvant à la ligne d indice i et à la colonne d indice j de la matrice, il suffira d écrire : matrice [ i ] [ j ] int tab [2][2] ; tab[0][0]=12 ; tab[1][0]=3 ; tab[0][1]=2 ; tab[1][1]=8 ; tab[0][2]=5 ; tab[1][2]=6 ; Remarque : On peut initialiser un tableau de la manière suivante : int tab[2][3]=1,2,3,4,5,6 ; ou encore int tab[2][3]=1,2,3,4,5,6 ; IV. TABLEAUX ET FONCTIONS - Une fonction disposant d un tableau comme paramètre se déclare comme suit : <type_retour><nom_fonction>(<type_tableau> <nom_tableau> [ ]) ou bien <type_retour><nom_fonction>(<type_tableau> *<nom_tableau>) - L appel de la fonction s énonce comme suit :
37 Chapitre 6 : Les tableaux <nom_fonction>(<nom_tableau>) ; V. OPERATIONS DU TRI V.1. Définition Une opération de tri consiste à mettre en ordre une suite de valeurs stockées dans un tableau par rapport à un critère déterminé (croissant, décroissant). Les opérations de tri sont très utilisées en informatique pour traiter l information. Il existe de nombreux algorithmes de tri avec des performances différentes. Parmi ces algorithmes, nous détaillons : V.2. Tri par sélection C est l un des algorithmes de tri le plus simple. On recherche le plus petit élément du tableau. On le place dans sa position finale, c est-à-dire en première position. On recherche le second plus petit élément. On le place également dans sa position finale, c est à dire en deuxième position. On réitère le même processus jusqu avant dernier élément du tableau. Le dernier sera dans sa position finale. Etant donné le tableau T comportant les éléments suivants : Etape 1 : Chercher l indice du plus petit élément et permuter l élément correspondant avec l élément d indice 0. Index cherché 4 => Etape 2 : Index cherché 2 => Etape 3 : Index cherché 4 => Etape 4 : Index cherché 5 => Etape 5 : Index cherché 4 => D où le tableau T trié s écrit :
38 Chapitre 6 : Les tableaux Le programme s écrit comme suit : #include<stdio.h> #define N 6 main() int tab[n],i,posmin,j,temp; printf("vous faites insérer les éléments du tableau : "); for(i=0;i<n;i++) scanf("%d",&tab[i]); for(i=0;i<(n-1);i++) posmin =i; for(j=i+1;j<n;j++) if(tab[j]<tab[posmin]) posmin=j; temp=tab[i]; tab[i]=tab[posmin]; tab[posmin]=temp; printf("\nles éléments du tableau trié: "); for(i=0;i<n;i++) printf("%d ",tab[i]); V.3. Tri à bulles On fait remonter le plus grand élément du tableau en comparant les éléments successifs. On compare le 1 er et le 2 ème élément, et on les échange si le 2 ème est inférieur au premier. On recommence jusqu à la fin du tableau. Le maximum du tableau a été «remonté» en dernière position. On recommence en s arrêtant à l avant dernière place du tableau et ainsi de suite. On arrête lorsqu il ne reste plus qu un seul élément à trier. Etant donné le tableau T comportant les éléments suivants : Etape 1 : 20 < 90 alors : > 10 alors : < 150 : > -2 : > 30 : Etape 2 :
39 Chapitre 6 : Les tableaux 20 > 10 : < 90 : > -2 : > 30 : Etape 3 : 10 < 20 : > -2 : < 30 : Etape 4 : 10 > -2 : < 20 : Etape 5 : -2 < 10 : D où le tableau T trié : Le programme associé à cette opération du tri s écrit alors : #include<stdio.h> #define N 6 main() int tab[n],i,j,temp; printf("vous faites insérer les éléments du tableau: "); for(i=0;i<n;i++) scanf("%d",&tab[i]); j=n-1; do for(i=0;i<j;i++) if(tab[i]>tab[i+1]) temp=tab[i+1]; tab[i+1]=tab[i]; tab[i]=temp; j--; while(j>=0); printf("\nles éléments du tableau trié: "); for(i=0;i<n;i++) printf("%d ",tab[i]); V.4. Tri par insertion Parmi les 2 premiers éléments du tableau, placer le plus petit dans la case d indice
40 Chapitre 6 : Les tableaux On compare le 3 ème élément avec ces précédents dans l ordre pour avoir les 3 éléments triés. On réitère alors le même processus jusqu à arriver au dernier élément du tableau. Etant donné le tableau T comportant les éléments suivants : Etape 1 : < 90 : Etape 2 : Insérer 10 dans 20, 90 : Etape 3 : Insérer 150 dans 10, 20, 90 : Etape 4 : Insérer -2 dans 10, 20, 90, 150 : Etape 5 : Insérer 30 dans -2, 10, 20, 90, 150 : Le programme correspondant à cette méthode s écrit : #include<stdio.h> #define N 6 main() int tab[n],i,pos,b,j,temp; printf("vous faites insérer les éléments du tableau: "); for(i=0;i<n;i++) scanf("%d",&tab[i]); for(i=1;i<n;i++) pos=i-1; b=1; j=i; while(pos>=0 && b) if(tab[pos]>tab[j]) temp=tab[j]; tab[j]=tab[pos]; tab[pos]=temp; j=pos; pos--; else b=0; printf("\nles éléments du tableau trié: "); for(i=0;i<n;i++)
41 Chapitre 6 : Les tableaux printf("%d ",tab[i]); VI. EXERCICE RESOLU Enoncé : Ecrire un programme qui permet de remplir un tableau de 10 entiers et de remplacer toute occurrence d un entier saisi x par 0. Solution : #include<stdio.h> main() int tab[10], i, x; // Remplissage du tableau for(i = 0; i < 10 ; i ++) printf(" Saisir l élément N : %d", i); scanf("%d",&tab[i]); printf(" Saisir un entier : "); scanf("%d",&tab[i]); // Modification du tableau for(i = 0; i < 10 ; i ++) if(tab[i] == x) tab[i] = 0; // Affichage du tableau for(i = 0; i < 10 ; i ++) printf(" %d ", tab[i]);
42 CHAPITRE : 7 LES CHAINES DE CARACTERES Objectifs spécifiques -Distinguer entre le type chaîne de caractères et le type tableau unidimensionnel, -Faire le tour d horizon sur les principales fonctions de manipulation de chaînes de caractères, PROGRAMMATION I -Ecrire des programmes faisant appel à ce type de données. Plan du chapitre I. Définition II. Fonctions standards de manipulation des chaînes III. Autres fonctions de manipulation des chaînes IV. Exercice résolu Volume horaire 2 séances de Cours Intégré
43 Chapitre 7 : Les chaînes de caractères I. DEFINITION Une chaîne de caractères est un tableau de caractères qui se termine par le caractère \0. Syntaxe de déclaration : char <nom-chaine>[<taille>+1] ; Remarque : Le 1 ajouté à <taille> symbolise le caractère de fin de chaîne \0. char chaine[5] ; Syntaxe d initialisation : <nom-chaine> = "contenu de la chaîne"; ou bien <nom-chaine> = <car1>,<car2>,,<carn>, \0 ; char chaine[5] ; chaine = "Voici une chaîne de caractères"; II. FONCTIONS STANDARDS DE MANIPULATION DES CHAINES II.1. Fonction scanf() Elle permet de lire une chaîne de caractères à partir du clavier. La spécification de conversion en chaîne de caractères est définie par %s. char chaine[30] ; scanf ( %s, chaine) ; /* Attention, y a pas de référence d adresse & */ II.2. Fonction printf() Elle permet d afficher une chaîne de caractères sur l écran. La spécification de conversion en chaîne de caractères est définie par %s. char chaine[30] ; scanf( %s,chaine) ; printf( La chaîne de caractères saisie est: %s,chaine) ;
44 Chapitre 7 : Les chaînes de caractères II.3. Fonction sscanf() Elle permet d effectuer une lecture formatée. Elle a le même rôle que la fonction «scanf()» sauf que la lecture se fait à travers une chaîne de caractères. char c1, c2, chaine[30] ; int e ; sscanf(chaine, %c %c %d, &c1, &c2, &e); II.4. Fonction sprintf() Elle permet d effectuer une écriture formatée de variables dans une chaîne de caractères. Elle a le même rôle que la fonction «printf()» sauf que l écriture est dirigée vers une chaîne. int i=3 ; char s[30] ; sprintf( s, entier : %d, i); II.5. Fonction gets() Elle permet de lire une chaîne de caractères à partir du clavier jusqu à l identification du caractère Entrée. La valeur de retour est la chaîne lue. Si rien, la valeur NULL est retournée. char s[20] ; gets(s) ;/* saisir une chaîne de caractères et la stocker dans s */ II.6. Fonction puts() Elle permet d écrire une chaîne de caractères sur l écran. char s[20] ; gets(s) ; /* saisir une chaîne à partir du clavier */ puts(s) ; /* l afficher sur l écran */ III. AUTRES FONCTIONS DE MANIPULATION DES CHAINES De nombreuses fonctions de manipulation de chaînes, se trouvant dans la bibliothèque <string.h>, sont directement fournies. Parmi ces fonctions, nous pouvons citer : III.1. Fonction strlen() Elle permet de récupérer la longueur d une chaîne de caractères. Elle renvoie le nombre de caractères stockés dans la chaîne
45 Chapitre 7 : Les chaînes de caractères char s[20] ; gets(s) ; printf( Longueur de la chaîne : %d, strlen(s)); Si jamais la chaîne de caractères saisie est «bonjour», cette portion de code va nous afficher sur l écran 7. III.2. Fonction strcpy() Elle permet de copier une chaîne de caractères dans une autre chaîne. char s1[20],s2[20] ; gets(s1) ; /* saisie d une chaîne de caractères s1 */ strcpy(s2, s1) ; /* copie de s1 dans s2 */ puts(s2) ; /* affichage de s2 */ III.3. Fonction strcat() Elle permet d ajouter une chaîne de caractères à la fin d une autre. char s1[20], s2[20]; strcpy(s1, ABCD ); /* copie de la première chaîne de caractères */ strcpy(s2, EF ); /* copie de la deuxième chaîne de caractères */ strcat(s1,s2); /* concaténer s2 à s1 */ puts(s1); /* afficher la chaîne de caractères s1 */ III.4. Fonction strcmp() Elle permet de comparer deux chaînes de caractères. Valeur de retour : 0 si S1 = S2. < 0 (-1) si S1 < S2. > 0 (1) si S1 > S2. strcpy ( s1, ABCD ) ; /* copie de la première chaîne */ strcpy ( s2, ABCE ); /* copie de la deuxième chaîne */ printf( %d, strcmp( s1, s2)); /* la valeur -1 s affiche sur écran */
46 Chapitre 7 : Les chaînes de caractères IV. EXERCICE RESOLU Enoncé : Ecrire un programme qui permet de mettre un texte saisi à partir du clavier en majuscule. Solution : #include<stdio.h> #include<string.h> int est_miniscule(char c) return ( c >= && c<= ) ; main( ) char texte[100] ; int N, i ; gets(texte) ; /* Saisie du texte */ N = strlen(texte) ; /* longueur du texte */ for (i=0 ; i< N ; i++) if (est_miniscule(texte[i])) texte[i] = texte[i] + ( ) ; /* Conversion */ puts(texte) ; /* Affichage du texte */
47 BIBLIOGRAPHIE Bibliographie [1] Claude Delannoy «Programmer en langage C» Eyrolles 2002 [2] Anne Canteaut «Programmation en langage C» disponible sur le site : PROGRAMMATION I [3] Achille Braquelaire «Méthodologie de la programmation en C» Dunod 2005 [4] Département Informatique de Wikibooks «Programmation C disponible sur le site : [5] Philippe Figon «C précis et concis» O'Reilly 2003 [6] Brian W. Kernighan, Dennis M. Ritchie (Traduit de l'anglais par Jean-François Groff et Eric Mottier) «Le langage C» Editions Dunod
48 ANNEXES Annexes ANNEXE 1 : RECAPITULATIF DES TYPES DU LANGAGE C ANNEXE 2 : CODE ASCII PROGRAMMATION I
49 ANNEXE 1 : RECAPITULATIF DES TYPES DU LANGAGE C Type Taille Bornes de l'ensemble char 1 octet -128 à 128 (seuls les nombres positifs peuvent coder un caractère) unsigned char 1 octet 0 à 255 int 2 ou 4 octets Dépend de la taille unsigned int 2 ou 4 octets Dépend de la taille short 2 octets à unsigned short 2 octets 0 à long 4 octets à unsigned long 4 octets 0 à float 4 octets 3.4*10^-38 à 3.4*10^38 double 8 octets 1.7*10^-308 à 1.7*10^308 long double 10 octets 3.4*10^-4932 à 3.4*10^4932 Notation complète signed char signed short int signed short signed int signed long int signed long long int Signed int unsigned char unsigned int unsigned short int unsigned long int Peut être remplacé par char signed short short int short signed long long int long int unsigned char unsigned unsigned short unsigned
50 ANNEXE 2 : CODE ASCII (AMERICAN STANDARD CODE FOR INFORMATION INTERCHANGE) Dec Hex Char Désignation Dec Hex Char Dec Hex Char Dec Hex Char 0 00 NUL (null) Space ` 1 01 SOH (start of header) 33 21! A a 2 02 STX (start of text) " B b 3 03 ETX (end of text) # C c 4 04 EOT (end of transmission) $ D d 5 05 ENQ (enquiry) % E e 6 06 ACK (acknowledge) & F f 7 07 BEL (bell) ' G g 8 08 BS (backspace) ( H h 9 09 TAB (horizontal tab) ) I i 10 0A LF (line feed) 42 2A * 74 4A J 106 6A j 11 0B VT (vertical tab) 43 2B B K 107 6B k 12 0C FF (form feed) 44 2C, 76 4C L 108 6C l 13 0D CR (carriage return) 45 2D D M 109 6D m 14 0E SO (shift out) 46 2E. 78 4E N 110 6E n 15 0F SI (shift in) 47 2F / 79 4F O 111 6F o DLE (data link escape) P p DC1 (device control 1) Q q DC2 (device control 2) R r DC3 (device control 3) S s DC4 (device control 4) T t NAK (negative acknowledge) U u SYN (synchronous idle) V v ETB (end of transmission block) W w CAN (cancel) X x EM (end of medium) Y y 26 1A SUB (substitute) 58 3A : 90 5A Z 122 7A z 27 1B ESC (escape) 59 3B ; 91 5B [ 123 7B 28 1C FS (file separator) 60 3C < 92 5C \ 124 7C 29 1D GS (group separator) 61 3D = 93 5D ] 125 7D 30 1E RS (record separator) 62 3E > 94 5E ^ 126 7E ~ 31 1F US (unit seperator) 63 3F? 95 5F _ 127 7F DEL
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
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
INITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
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
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
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
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 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
UE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie [email protected] 2 Programmation Impérative
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
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
Chap III : Les tableaux
Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction
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
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
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
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
Cours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU [email protected] Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Initiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Programmation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Langage Éric Guérin 5 octobre 2010
Langage Éric Guérin 5 octobre 2010 Langage C TABLE DES MATIÈRES Table des matières 1 Introduction 7 1.1 Historique........................................... 7 1.2 Architecture matérielle....................................
UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
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
Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
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
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
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
UE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Informatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) [email protected] Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
Cours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
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é
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 [email protected] ibrahimguelzim.atspace.co.uk
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
É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 & Langage C IUT GEII S1. Notes de cours (première partie) cours_algo_lgc1.17.odp. Licence
Licence Algorithmique & Langage C Paternité - Pas d'utilisation Commerciale Partage des Conditions Initiales à l'identique 2.0 France Vous êtes libres : * de reproduire, distribuer et communiquer cette
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,
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
V- Manipulations de nombres en binaire
1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,
La mémoire. Un ordinateur. L'octet. Le bit
Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve
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
Claude Delannoy. 3 e édition C++
Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.
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
TP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
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
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
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
Microprocesseur + Logiciel
Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS
Algorithme. Table des matières
1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............
Langage C. Patrick Corde. [email protected]. 22 juin 2015. Patrick Corde ( [email protected] ) Langage C 22 juin 2015 1 / 289
Langage C Patrick Corde [email protected] 22 juin 2015 Patrick Corde ( [email protected] ) Langage C 22 juin 2015 1 / 289 Table des matières I 1 Présentation du langage C Historique Intérêts
Cours Informatique 1. Monsieur SADOUNI Salheddine
Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale
Introduction à 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 [email protected] IUT d Aix-Marseille, site d Arles Version du 2 octobre 2013 E. Remy (IUT d
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
IV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
LES TYPES DE DONNÉES DU LANGAGE PASCAL
LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.
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
Notions fondamentales du langage C# Version 1.0
Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage
ALGORITHMIQUE ET PROGRAMMATION En C
Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2
Représentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
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
Programmation 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...
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Introduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions
Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental
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
INF 321 : mémento de la syntaxe de Java
INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2
Algorithmique et programmation : les bases (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi
STAGE IREM 0- Premiers pas en Python
Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer
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
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
Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un
Cours 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
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
Langages et Concepts de Programmation Introduction à la programmation en langage C
Langages et Concepts de Programmation Introduction à la programmation en langage C Cours 1A 2013-2014 Jean-Jacques Girardot, Marc Roelens [email protected], [email protected] Septembre 2013 École Nationale
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,
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
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
Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon
Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon 13 janvier 2015 2 Table des matières Organisation générale du cours 7 1 Notions générales d algorithmique et de programmation
Le 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
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
Adama MBODJI MBODJ.SYSTEM
MBODJ.SYSTEM Tableaux & vecteurs Algorithmes de tris Chaînes de caractères Listes linéaires Piles & Files Arbres Fichiers Je dédie cet ouvrage à mon père Souleymane MBODJI 2 Dédicace... 2 Sommaire... 3
Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. [email protected]
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 [email protected] LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Cours d Informatique
Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V [email protected] [email protected] 2007/2008 Info2, 1ère année SM/SMI 1
Codage d information. Codage d information : -Définition-
Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale
I. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
L informatique en BCPST
L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité
Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Cours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
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
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
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
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
Programmation en C - Sommaire
Programmation en C - Sommaire PROGRAMMATION EN C - SOMMAIRE... 1 CHAPITRE 0 : INTRODUCTION :... 5 I) NOTATIONS ET SYMBOLES :... 5 II) C, LA NAISSANCE D'UN LANGAGE DE PROGRAMMATION PORTABLE... :... 6 1)
Architecture de l ordinateur
Architecture de l ordinateur Emmanuel Lazard Université Paris-Dauphine mars 2011 Computers are my forte! BRAZIL (Terry Gilliam, 1985) Ce document a initialement été publié sous forme de livre : Emmanuel
Le langage C. Introduction, guide de reference
Le langage C Introduction, guide de reference Ce document est une présentation du langage de programmation C, de sa syntaxe et de ses spécificités. Il est destiné essentiellement à servir de mémo-guide
Compléments de documentation Scilab : affichage de texte et formatage de nombres
Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de
BTS IRIS Cours et Travaux Pratiques. Programmation C. A. Lebret, TSIRIS, Lycée Diderot, 1995/06. en conformité avec le référentiel du BTS IRIS
BTS IRIS Cours et Travaux Pratiques Programmation C A. Lebret, TSIRIS, Lycée Diderot, 1995/06 en conformité avec le référentiel du BTS IRIS Activité Codage et Réalisation Tâches T3.3, T3.4 et T3.5 Temps
Recherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Introduction à 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 [email protected] - [email protected] Qu est-ce que la programmation? Programmer Ecrire un
ACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
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 à
Licence 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.
