Le langage C. Les bases Jean-Pierre Fournier,

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Le langage C. Les bases Jean-Pierre Fournier,"

Transcription

1 Le langage C Les bases Jean-Pierre Fournier,

2 Un peu d histoire B (Bell labs) (1970) [Ken Thompson] NB (new B) (B + types) (1971) [Dennis Ritchie] C (1972) C++ ( )[Bjarne Stroustrup] Java The green team (1991) 13 personnes sont chargées par Sun d anticiper la prochaine évolution de la programmation WebRunner (le navigateur HotJava), un clone de Mosaic basé sur Java version 1.0a2 (march 1995) => version 1.5 Le langage C 2

3 Dans un programme C, on trouve : Des déclarations Pour réserver des zones en mémoire et leur attribuer un nom int x, y; réserve deux emplacements nommés x et y pour accueillir des données numériques entières. float a, b, c; réserve trois emplacements a, b et c pour des données numériques réelles. Le langage C 3

4 Unités de mesure et déclarations 0 ou 1 : le bit (binary unit) 8 bits = 1 octet (byte) 1024 octets = 1kiloOctet (kb) ensuite Méga, Giga, Téra, Exa short => nombre entier sur 2 octets long => nombre entier sur 4 octets float => nombre réel sur 4 octets double => nombre réel sur 8 octets Le langage C 4

5 Déclarations (suite) un type particulier : char pour déclarer une zone numérique de 1 octet destinée à recevoir un petit nombre ou un code de caractère 8 bits codages de à le bit de gauche est le bit de signe (0 pour les nombres positifs, 1 pour les négatifs) à (0 à 127) à (-128 à -1) Le langage C 5

6 Les codages de caractères sur 1 octet ebcdic, ascii, ascii à bit de parité sur 2 octets unicode (alphabets internationaux, normes ISO ) en C : a renvoie le code de la lettre a, Z renvoie le code de la lettre Z majuscule char lettre = b ; pour réserver une zone mémoire de 1 octet initialisée avec le code de la lettre b. abcdef pour réserver une zone mémoire de 7 octets contenant les codes des lettres et un zéro. a b c d e f 0 Le langage C 6

7 Avec ou sans signe? unsigned char les 256 valeurs possibles sont considérées de 0 à 255, pas de -128 à => => +255 unsigned short, unsigned long, unsigned int Le langage C 7

8 Un premier programme void main(){ int x, y; char lettre; float a, b; ne renvoie aucun résultat dans le fichier exemple1.c compilé et lié par : gcc exemple1.c o ex1.exe message d avertissement : exemple1.c: In function `main': exemple1.c:1: warning: return type of `main' is not `int' essayé par ex1 résultat : Le langage C 8

9 Affectation et calculs int main(){ int x, y; char lettre; float a, b; Compilation : Aucun message! x = y = 4; lettre = 'p'; a = 5.6; b = a*2; x = y+6; b = x; b = (float) x; lettre = lettre * 2; l affectation inscrit la valeur de droite dans l objet de gauche. Le langage C 9

10 Présenter des résultats pour afficher, 3 outils (C++) cout, cerr les flots de sortie << l opérateur qui envoie vers le flot endl pour la fin de ligne cout << x << endl; affiche la valeur de x et passe à la ligne Le langage C 10

11 Exemple avec résultats #include <iostream> using namespace std; Pour avoir le droit d employer cout, << et endl int main(){ int x, y; char lettre; float a, b; x = y = 4; lettre = 'p'; a = 5.6; b = a*2; x = y+6; b = x; b = (float) x; Résultats affichés : x = 10 y = 4, lettre = Ó b = 10 lettre = lettre * 2; cout << "x = " << x << endl; cout << "y = " << y << ", lettre = " << lettre << endl << "b = " << b << endl; Le langage C 11

12 Fournir des données avec les outils de C++ => nom de fichier.c => compilation avec gpp deux éléments pour les données le flot cin, l opérateur >> cin >> x; pour placer la valeur qui vient du flot d entrée dans la variable x problème : risque d incohérence des données Le langage C 12

13 Exemple #include <iostream> using namespace std; int main(){ int x, y; cin >> x >> y; cout << "x = " << x << endl << "y = " << y << endl; Essai 1 : x = 12 y = 56 Essai 2 : x = 4 y = 0 Essai 3 : 4 z x = 4 y = 0 Le langage C 13

14 Les opérations élémentaires et combinées + - * / % : modulo 26 % 5 => 1 &! ^ (opérateurs binaires) et, ou, non, ou exclusif && (opérateurs logiques) et, ou <<, >> décalage binaire +=, -=, *=, /=, &=, =,!=, ^=, <<=, >>= x += 3 «ajouter 3 à x» au lieu de x = x+3 ++, -- x++ «ajouter 1 à x» au lieu de x = x + 1 les comparaisons : <, <=, >, >=, ==,!= attention : ne pas confondre == (compare) et = (affecte) Le langage C 14

15 Les tests if () et (()?:) #include <iostream> using namespace std; int main(){ int x, y; cin >> x >> y; cout << "x = " << x << endl << "y = " << y << endl; if (x < y) cout << "la première valeur est plus petite" << endl; else cout << "la première valeur est plus grande" << endl; cout << "la seconde valeur est donc plus " << ((x < y)?"grande":"petite") << endl; Résultats d exécution : x = 10 y = 12 la premiþre valeur est plus petite la seconde valeur est donc plus grande Le langage C 15

16 Les itérations while(), for(), do while() #include <iostream> using namespace std; int main(){ int courante, lue; cin >> courante; cout << courante; cin >> lue; cout << ", " << lue; while (lue >= courante && lue!= -1){ courante = lue; cin >> lue; cout << ", " << lue; if (lue == -1) cout << endl << "les valeurs données étaient croissantes..."; else cout << endl << "la suite de valeurs données n'est pas croissante..."; cout << endl; Résultats : , 4, 6, 8, 10, -1 les valeurs données étaient croissantes , 4, 6, 5 la suite de valeurs données n'est pas croissante... Le langage C 16

17 Quelques risques #include <iostream> using namespace std; int main(){ // une itération pourrait être éternelle! short x = 0; while (x < 32768) { cout << x << " " x++; Le langage C 17

18 Résultats (!) C ne se soucie pas de la qualité des résultats, c est le programmeur qui doit le faire! Le langage C 18

19 Nouvelle version #include <iostream> using namespace std; int main(){ /* une itération pourrait être éternelle! */ short x = 0; const long limite = 32768; while (x < limite) { cout << x << " "; if (x+1>=limite) { cout << "depassement de capacite"; exit(1); /* ou abort(); */ x++; depassement de capacité Le langage C 19

20 Version plus moderne (C++) #include <iostream> using namespace std; int main(){ // une itération pourrait être éternelle! short x = 0; const long limite = 32768; while (x < limite) { cout << x << " "; if (x+1>=limite) throw "depassement de capacite"; x++; garantit le traitement de la situation anormale sans arrêter obligatoirement le programme. Le langage C 20

Introduction à l informatique Travaux pratiques: séance 1 INFO X. Baumans

Introduction à l informatique Travaux pratiques: séance 1 INFO X. Baumans Introduction à l informatique Travaux pratiques: séance 1 INFO0205-1 X. Baumans (xavier.baumans@ulg.ac.be) Programme de la séance Déclarations de variables INFO0205-1 X.Baumans 1 / 21 Programme de la séance

Plus en détail

1 Conversion d'une chaîne de caractères en nombre

1 Conversion d'une chaîne de caractères en nombre CPP3 Programmation C : Utilitaire de conversion de donnée Système : CodeBlock Durée : 3 heures Travail individuel Compétences : Tester et valider un module logiciel. Réaliser la conception détaillée d

Plus en détail

Programmation I : Cours de programmation (C++) Variables et opérateurs

Programmation I : Cours de programmation (C++) Variables et opérateurs Programmation I : Cours de () Variables et opérateurs Laboratoire d Intelligence Artificielle Faculté I&C Programmation I Cours 2 : Variables et opérateurs 1 / 25 Vidéos, Quiz et transparents https://www.coursera.org/learn/init-prog-cpp/home/week/1

Plus en détail

Chapitre II Les bases du langage. Syntaxe

Chapitre II Les bases du langage. Syntaxe Chapitre II Les bases du langage Java Syntaxe Les commentaires /* commentaire sur une ou plusieurs lignes */ Identiques à ceux existant dans le langage C // commentaire sur une seule ligne Identiques à

Plus en détail

SYNTAXE du LANGAGE C

SYNTAXE du LANGAGE C SYNTAXE du LANGAGE C FICHIERS SOURCES *.cpp fichiers principaux Vos programmes. *.h fichiers d en-tête Ne pas mettre de code dans les en-tḙtes. DIRECTIVES Pas de ; après une directive. #include

Plus en détail

Notes de cours. Introduction

Notes de cours. Introduction Notes de cours GEI 442 : STRUCTURES DE DONNÉES ET ALGORITHMES Partie 1 : introduction à JAVA Hiver 2000 Ahmed KHOUMSI 1 Introduction - JAVA permet écriture APPLETs APPLET = programme JAVA : - exécuté par

Plus en détail

Programmation Impérative. Le langage C. Structure d un programme

Programmation Impérative. Le langage C. Structure d un programme Programmation Impérative Le langage C Objectifs - Apprentissage programmation C - Structuration en fonctions et modules. - Implémenter différentes structures de données simples : les tableaux, les listes.

Plus en détail

IFT159 Analyse et programmation

IFT159 Analyse et programmation IFT159 Analyse et programmation Chapitre 2 Gabriel Girard Département d informatique 2 septembre 2008 1 Qu est-ce qu un programme C++ 2 Commentaires (1) Directives au compilateur (2) Fonctions (4) 3 float

Plus en détail

Algorithmique et programmation structurée

Algorithmique et programmation structurée Algorithmique et programmation structurée Chapitre 2 : Stockage et codage de l information. Les variables de types scalaires. I. Stockage de l information : les mémoires Pour qu un ordinateur puisse manipuler

Plus en détail

Programmation en C. Pierre-Alain FOUQUE Département d Informatique École normale supérieure. Cours de programmation en C

Programmation en C. Pierre-Alain FOUQUE Département d Informatique École normale supérieure. Cours de programmation en C Programmation en C Pierre-Alain FOUQUE Département d Informatique École normale supérieure Plan 1 -Le Langage C 2 -Présentation d un programme 3 -Le typage des données 4 -Les opérateurs conditionnels 5

Plus en détail

INF145 Programmation avancée et langage C MOTS RÉSERVÉS ET INSTRUCTIONS AU PRÉPROCESSEUR

INF145 Programmation avancée et langage C MOTS RÉSERVÉS ET INSTRUCTIONS AU PRÉPROCESSEUR Université du Québec (UQ) École de technologie supérieure Service des enseignements généraux Local B-2500-396-8938 Site Internet : http://www.seg.etsmtl.ca/inf115/ INF145 Programmation avancée et langage

Plus en détail

Document ressource sur le langage C

Document ressource sur le langage C I Généralités Document ressource sur le langage C Le langage C appliqué aux microcontrôleurs permet de bénéficier d un langage universel et portable pratiquement indépendant du type de microcontrôleur

Plus en détail

Programmation en langage C++ Les bases du C++

Programmation en langage C++ Les bases du C++ Programmation en langage C++ Les bases du C++ Version imprimable du cours Programmation en langage C++ Julien Yves ROLLAND (julien.rolland@univ-fcomte.fr) Laboratoire de Mathématiques de Besançon Université

Plus en détail

Algorithmique et programmation TP 1 : Le langage C++, structure d un programme, compilation, types de base, affichage et lecture de données

Algorithmique et programmation TP 1 : Le langage C++, structure d un programme, compilation, types de base, affichage et lecture de données BELFORT MONTBÉLIARD Département d Informatique DUT Informatique S1 Année 2011/2012 Algorithmique et programmation Algorithmique et programmation TP 1 : Le langage C++, structure d un programme, compilation,

Plus en détail

Algorithmique Cours 5

Algorithmique Cours 5 Algorithmique Cours 5 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Sommaire L objectif de ce cours est d étudier les énumérations et structures

Plus en détail

Cours C++ Spécificités du C++ (hors POO) références, allocation dynamique de mémoire...

Cours C++ Spécificités du C++ (hors POO) références, allocation dynamique de mémoire... Cours C++ Spécificités du C++ (hors POO) références, allocation dynamique de mémoire... Spécifités notables du C++ Référence Allocation dynamique de mémoire : opérateur new et delete Librairie standard

Plus en détail

Récapitulatif Java - langage

Récapitulatif Java - langage Récapitulatif Java - langage Déclaration des variables: - toute variable doit être déclarée avant d être utilisée - la visibilté de la variable est le bloc où elle est est déclarée ainsi que tous les blocs

Plus en détail

Programmation impérative

Programmation impérative Programmation impérative ENSIIE Semestre 1 2016 17 ENSIIE: Programmation impérative, 1 Organisation du cours Cours magistral : présentation des concepts, des structures de données et leurs outils TP :

Plus en détail

- Cours 7 Tableaux de variables et fonc7ons d arg. de type tableau

- Cours 7 Tableaux de variables et fonc7ons d arg. de type tableau Catherine Recanati général Représentation des nombres. Notion de variable. Programme. Expressions. Architecture des ordinateurs: langage machine, langage assembleur, AMIL. Systèmes d exploitation : fichiers,

Plus en détail

PROGRAMMATION EN LANGAGE C

PROGRAMMATION EN LANGAGE C 2014/2015 Florence Levé - Université de Picardie Jules Verne 1 PROGRAMMATION EN LANGAGE C Licence Informatique 2 ème année 2014/2015 Florence Levé - Université de Picardie Jules Verne 2 Présentation du

Plus en détail

Les bases de la programmation en C

Les bases de la programmation en C Chapitre 1 Les bases de la programmation en C 1 Historique Le C a été conçu en 1972 par Dennis Richie et Ken Thompson, chercheurs aux Bell Labs, afin de développer un système d exploitation UNIX sur un

Plus en détail

UE C avancé cours 1: introduction

UE C avancé cours 1: introduction Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2009/2010 Introduction Types Structures de contrôle Exemple Présentation

Plus en détail

II. - Les Fondamentaux de Java

II. - Les Fondamentaux de Java II. - Les Fondamentaux de Java Gérald Monard Chimie et Physique informatiques L3 Physique et Chimie Concepts fondamentaux Un programme Java se compose d éléments de base comme : les expressions les instructions

Plus en détail

Programmation C++ Séance 6. Łukasz Fronc. 26 octobre 2012

Programmation C++ Séance 6. Łukasz Fronc.  26 octobre 2012 Programmation C++ Séance 6 Łukasz Fronc lfronc@ibisc.univ-evry.fr www.ibisc.fr/~lfronc/ 26 octobre 2012 Łukasz Fronc Programmation C++ 1 / 35 Sommaire Surcharge d opérateurs Fonctions et classes amies

Plus en détail

Introduction aux Objets et à Java

Introduction aux Objets et à Java Introduction aux Objets et à Java F. Mallet Frederic.Mallet@unice.fr http://deptinfo.unice.fr/~fmallet/java/gse.html 2011/2012 F. Mallet - GSE 4 1-1 Introduction o Introduction aux objets et à Java Créer

Plus en détail

Cours Algorithme et Programmation

Cours Algorithme et Programmation Faculté des Sciences de Gabès Cours Algorithme et Programmation Chapitre 5 : Initiation Programmation C 1 Faîçal Felhi - felhi_fayssal@yahoo.fr Faîçal Felhi felhi_fayssal@yahoo.fr Algorithmes et programmes

Plus en détail

Introduction à la programmation Travaux pratiques: séance introductive INFO0201-1

Introduction à la programmation Travaux pratiques: séance introductive INFO0201-1 Introduction à la programmation Travaux pratiques: séance introductive INFO0201-1 X. Baumans (xavier.baumans@ulg.ac.be) [Copyright F. Ludewig & B. Baert, ULg] Notes de TP Slides de TP accessibles à l adresse

Plus en détail

Java et la programmation orientée objet (POO)

Java et la programmation orientée objet (POO) 1. Java, les bases 1.1. Introduction 1.1.1. Un bref historique - origine : 1991 - ingénieur de SUN qui ont cherché à concevoir un langage applicable à de petits appareils électriques (code embraqué). L

Plus en détail

Introduction à la programmation Travaux pratiques: séance 1 INFO0201-1

Introduction à la programmation Travaux pratiques: séance 1 INFO0201-1 Introduction à la programmation Travaux pratiques: séance 1 INFO0201-1 B. Baert, X. Baumans & F. Ludewig Bruno.Baert@ulg.ac.be - Xavier.Baumans@ulg.ac.be Implication des TP info et Pourquoi programmer?

Plus en détail

Organisation logicielle : le langage C

Organisation logicielle : le langage C I Généralités : Organisation logicielle : le langage C Le langage C appliqué aux microcontrôleurs permet de bénéficier d un langage universel et portable pratiquement indépendant du type de microcontrôleur

Plus en détail

INI-LV3. Initiation à l utilisation de LABVIEW Les tableaux. 1 Présentation. Ouvrir le fichier Tableau_1.vi sous LABVIEW

INI-LV3. Initiation à l utilisation de LABVIEW Les tableaux. 1 Présentation. Ouvrir le fichier Tableau_1.vi sous LABVIEW INI-LV3 Initiation à l utilisation de LABVIEW Les tableaux G.COLIN 1 Présentation Ouvrir le fichier Tableau_1.vi sous LABVIEW Ici est déclaré un tableau d octets (8 bits) non signés : U8 Ici 4 valeurs

Plus en détail

Sciences de l Ingénieur Page 151 LE LANGAGE C

Sciences de l Ingénieur Page 151 LE LANGAGE C Sciences de l Ingénieur Page 151 LE LANGAGE C Exemple char val1=0xa5; int val2; void tempo(char temps) // Déclaration d une variable caractère avec valeur initiale // Déclaration d une variable nombre

Plus en détail

Décomposition d'un programme C

Décomposition d'un programme C Décomposition d'un programme C Un programme C est composé de plusieurs blocs. Chacun d'entre eux ayant un rôle particulier dans une ou plusieurs phases de la compilation ou de l'exécution: Exemple : Inclusions

Plus en détail

Introduction au langage C++

Introduction au langage C++ Langage de bas niveau (langage machine) L Pourquoi le code binaire? es composants à l intérieur de l ordinateur sont des composants électroniques de type numérique. L information véhiculée entre les composants

Plus en détail

LIFAP1 : ALGORITHMIQUE ET PROGRAMMATION IMPÉRATIVE, INITIATION

LIFAP1 : ALGORITHMIQUE ET PROGRAMMATION IMPÉRATIVE, INITIATION Licence STS Université Claude Bernard Lyon I LIFAP1 : ALGORITHMIQUE ET PROGRAMMATION IMPÉRATIVE, INITIATION 1 COURS 2 : Bases du langage C OBJECTIFS DE LA SÉANCE Apprendre la syntaxe du langage C Savoir

Plus en détail

JAVA PROGRAMMATION OBJET

JAVA PROGRAMMATION OBJET JAVA PROGRAMMATION OBJET Abdellatif HAIR Université Sultan Moulay Slimane Faculté des Sciences et Techniques B.P. 523, Béni-Mellal, MAROC JAVA : LES BASES IDENTIFICATEURS, INSTRUCTIONS ET BLOCS La syntaxe

Plus en détail

Décomposer son raisonnement

Décomposer son raisonnement Décomposer son raisonnement Plan du document Algorithme Variable Actions élémentaires Actions composées Page 2 Algorithme Notion d'algorithme Résolution Codage Énoncé Réflexion Programme = Description

Plus en détail

Bibliothèque STL. Professeur: Tony Wong, Ph.D., ing. Chapitre 2

Bibliothèque STL. Professeur: Tony Wong, Ph.D., ing. Chapitre 2 Université du Québec École de technologie supérieure Département de génie de la production automatisée Bibliothèque STL Professeur: Tony Wong, Ph.D., ing. Chapitre 2 1 Introduction L idée de base du STL

Plus en détail

Java : la syntaxe. MC-II1 - Cours 2. J. Villemejane - IUT Créteil-Vitry Département GEII Université Paris-Est Créteil

Java : la syntaxe. MC-II1 - Cours 2. J. Villemejane - IUT Créteil-Vitry Département GEII Université Paris-Est Créteil Java : la syntaxe MC-II1 - Cours 2 J. Villemejane - julien.villemejane@u-pec.fr IUT Créteil-Vitry Département GEII Université Paris-Est Créteil Année universitaire 2013-2014 1/15 Plan du cours 1 Conventions

Plus en détail

Exercice 1 (niveau 1):Tailles des variables des types de base avec sizeof() Voici le résultat de l'exécution du programme (depuis la VM ):

Exercice 1 (niveau 1):Tailles des variables des types de base avec sizeof() Voici le résultat de l'exécution du programme (depuis la VM ): Serie 6 Corrigé Exercice 1 (niveau 1):Tailles des variables des types de base avec sizeof() Voici le résultat de l'exécution du programme (depuis la VM 2015-16): Taille d'un char : 1 Taille d'un short

Plus en détail

Programmation en Langage C++ : Cours et Travaux Pratiques

Programmation en Langage C++ : Cours et Travaux Pratiques Université Constantine 1 République Algérienne Démocratique et Populaire Ministère de l Enseignement Supérieur et de la Recherche Scientifique Université Constantine 1 Faculté des Sciences de la Technologie

Plus en détail

Spécificités du C++ (hors POO), références, allocation dynamique de mémoire...

Spécificités du C++ (hors POO), références, allocation dynamique de mémoire... Fiche 2 Spécificités du C++ (hors POO), références, allocation dynamique de mémoire... Le C++ est un langage dit orienté objet (OO) conçu à partir du langage C. De ce fait la plupart des fonctionalités

Plus en détail

TP Interface graphique et C++ numéro 1

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

Plus en détail

Premiers pas avec Java

Premiers pas avec Java avec Java Algorithmique et langage de programmation Gaël Thomas Plan du cours 1. Mon premier programme Java 2. Exécution d un programme Java 3. Variables et types de données 4. Les opérateurs du langage

Plus en détail

char (1) short (2) int (4) long int (8) long long int (8) unsigned char unsigned int unsigned short unsigned long int unsigned long long int

char (1) short (2) int (4) long int (8) long long int (8) unsigned char unsigned int unsigned short unsigned long int unsigned long long int char (1) short (2) int (4) long int (8) long long int (8) unsigned char unsigned int unsigned short unsigned long int unsigned long long int float (4) double (8) long double (16) char* (8) int* (8)...

Plus en détail

GL C/C++ Design Pattern 2. Interpréteur d un langage - étape 3 Construction de la Table des Symboles

GL C/C++ Design Pattern 2. Interpréteur d un langage - étape 3 Construction de la Table des Symboles GL C/C++ Design Pattern 2 Interpréteur d un langage - étape 3 Construction de la Table des Symboles Rappel du contexte Nous avons construit un analyseur syntaxique (lecteur de phrase) capable de parcourir

Plus en détail

Méthodes informatiques pour physiciens introduction à C++ et résolution de problèmes de physique par ordinateur

Méthodes informatiques pour physiciens introduction à C++ et résolution de problèmes de physique par ordinateur Méthodes informatiques pour physiciens introduction à C++ et résolution de problèmes de physique par ordinateur Corrigé 1 Professeur : Alessandro Bravar Alessandro.Bravar@unige.ch Université de Genève

Plus en détail

Informatique L1 (Sciences Exactes) CODAGE BINAIRE. L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant :

Informatique L1 (Sciences Exactes) CODAGE BINAIRE. L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : Informatique L1 (Sciences Exactes) CODAGE BINAIRE 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

Plus en détail

Langages avec des objets : JAVA

Langages avec des objets : JAVA 1 Langages avec des objets : JAVA Robert Cori Buts de ce cours: 1. Comprendre les principes de la programmation 2. Connaître les développements modernes de logiciels et avoir une idée de leur fonctionnement

Plus en détail

Chapitre 5. Opérateurs, expressions et conversions

Chapitre 5. Opérateurs, expressions et conversions Chapitre 5 : Opérateurs, expressions et conversion 41 Chapitre 5 Opérateurs, expressions et conversions Chapitre 5 : Opérateurs, expressions et conversion 42 1. Expressions - Une expression est la composition

Plus en détail

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

Plus en détail

Mise à niveau en Java

Mise à niveau en Java Mise à niveau en Java Cours 0 Stéphane Airiau Université Paris-Dauphine Cours 0 (Stéphane Airiau) Java 1 Ces transparents Eléments de base ou bien : (presque) tout ce dont vous avez besoin pour ré-écrire

Plus en détail

6TT. Notes de cours INFORMATIQUE LOGIQUE. Marc Liégeois. Ingénieur civil. CFWB Compétences - Logique - 6 ème. Page 1 sur 24.

6TT. Notes de cours INFORMATIQUE LOGIQUE. Marc Liégeois. Ingénieur civil. CFWB Compétences - Logique - 6 ème. Page 1 sur 24. 6TT Notes de cours INFORMATIQUE LOGIQUE Ingénieur civil Page 1 sur 24 Préliminaires Le cours de logique s appuie (notamment en deuxième partie) sur un langage de programmation appelé : Langage C Nous introduirons

Plus en détail

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

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

Plus en détail

Introduction au langage C

Introduction au langage C Introduction au langage C Objectif: acquérir les bases d un langage de programmation évolué Les éléments abordés seront: - Organisation d un programme - Les variables - Les opérations sur les variables

Plus en détail

Plan. Informatique de l Internet: Variables et types en Java. Types (2) Types (1) Types (4) Types (3)

Plan. Informatique de l Internet: Variables et types en Java. Types (2) Types (1) Types (4) Types (3) Plan Informatique de l Internet: Variables et types en Java Joël Quinqueton Dépt MIAp, UFR IV UPV Université Montpellier III Conception de l algorithme Implémentation comme programme Les données dans un

Plus en détail

Représentation des nombres entiers

Représentation des nombres entiers 477 666 Représentation des nombres entiers 1 3419 A99ACF 7652993002 11011011011011 Représentation des données Non Numériques Données Numériques Nombres entiers Valeur signée Complément à 2 Nombres flottants

Plus en détail

CHAPITRE 1 : Introduction. Historique du langage C. Caractéristiques ristiques du langage C. Différentes phases de la programmation en C

CHAPITRE 1 : Introduction. Historique du langage C. Caractéristiques ristiques du langage C. Différentes phases de la programmation en C Année Universitaire 2006/2007 CHAPITRE 1 : Introduction Historique du langage C Caractéristiques ristiques du langage C Différentes phases de la programmation en C 1 CHAPITRE 2 : Notions de base Premier

Plus en détail

Correction TP de programmation n o 4

Correction TP de programmation n o 4 Correction TP de programmation n o 4 Cours de programmation impérative Licence MPI L1 S2 - Info 121 Fonctions et procédures: passage de paramètres Cette séance de travaux pratiques est dédiée au passage

Plus en détail

Introduction à la programmation impérative en langage C

Introduction à la programmation impérative en langage C Introduction à la programmation impérative en langage C Historique du langage C Né en 1972 dans les laboratoires Bell AT&T Auteurs : Brian KERNIGHAN et Dennis RITCHIE : A partir de 1974 : le langage C

Plus en détail

Le langage C. François Trahay. CSC4103 Programmation système

Le langage C. François Trahay. CSC4103 Programmation système François Trahay CSC4103 Programmation système 2016 2017 1 Présentation du module Objectifs du module: Maîtriser le langage C Savoir s adresser au système d exploitation depuis un programme Modalités: Un

Plus en détail

Chapitre 12. Classes

Chapitre 12. Classes Chapitre 12 : Classes 157 Chapitre 12 Classes Chapitre 12 : Classes 158 1. Définition - La programmation orientée objet se fait à l'aide de classes. - Une classe comporte à la fois des champs (appelés

Plus en détail

Les flux (anglais : stream) correspondent aux échanges réalisés entre un programme et les périphériques : clavier, écran, disque dur, etc.

Les flux (anglais : stream) correspondent aux échanges réalisés entre un programme et les périphériques : clavier, écran, disque dur, etc. C++ Ch 6 Fichiers I. INTRODUCTION... 1 A. FLUX D ENTREES-SORTIES... 1 1. Flux d Entrées-sorties clavier/écran... 1 2. Flux d Entrées-sorties disque : les fichiers... 2 B. LIBRAIRIE C++ POUR LES FLUX D

Plus en détail

Mise à niveau en Java

Mise à niveau en Java Mise à niveau en Java Cours 1 Stéphane Airiau Université Paris-Dauphine Cours 1 (Stéphane Airiau) Java 1 Aujourd hui Eléments de base ou bien : (presque) tout ce dont vous avez besoin pour ré-écrire les

Plus en détail

Cours n o 2 Introduction au C++

Cours n o 2 Introduction au C++ Cours n o 2 Introduction au C++ Module Info3/M3105C Sebastien.Kramm@univ-rouen.fr IUT GEII Rouen 2016-2017 S. Kramm (IUT Rouen) Cours 2 2016-2017 1 / 37 Sommaire 1 Introduction 2 C++ = C amélioré 3 Programmation

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Systèmes de codage des informations

Systèmes de codage des informations Systèmes de codage des informations 1. Objectifs A l issue de ce cours, les compétences acquises par les apprenants lui permettront de : Connaitre les systèmes de numération décimale, octale, hexadécimale

Plus en détail

Le langage C. 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C)

Le langage C. 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C) Le langage C 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C) 1978 ``The C Programming Language``, (Kernighan et Ritchie), --> on fait référence à cette première

Plus en détail

Fascicule de Génie Electrique (Terminale S option SI)

Fascicule de Génie Electrique (Terminale S option SI) Le langage C Ressource Centre d intérêt CI10 : Traitement de Thématique I11 - Les systèmes numériques : Mise en œuvre d un microcontrôleur avec des composants logiciels réutilisables. 1 Les constantes

Plus en détail

Le langage C. Le langage C. Programme Hello world

Le langage C. Le langage C. Programme Hello world Le langage C Jean-Sébastien Coron Université du Luxembourg 1 Prise en main du langage C Le langage C Langage de programmation le plus populaire. Programmation structurée. Programmation par procédures.

Plus en détail

Correction TP de programmation n o 3

Correction TP de programmation n o 3 Correction TP de programmation n o 3 Cours de programmation impérative Licence MPI L1 S2 - Info 121 Fonctions et procédures Cette séance de travaux pratiques est dédiée à l écriture et l utilisation de

Plus en détail

La représentation des nombres et des caractères. Inf7212 Introduction aux systèmes informatiques Alix Boc Automne 2013

La représentation des nombres et des caractères. Inf7212 Introduction aux systèmes informatiques Alix Boc Automne 2013 La représentation des nombres et des caractères Inf7212 Introduction aux systèmes informatiques Alix Boc Automne 2013 2 Plan Le système binaire Représentation des nombres Manipulation des nombres Représentation

Plus en détail

Série 2 : exercices C++ (Solutions)

Série 2 : exercices C++ (Solutions) 8SIF109 : Programmation, Algorithmique et Structures de données Automne 2008 Exercice 1. Série 2 : exercices C++ (Solutions) 1. Passage de l'objet date par recopie ; la date résultat est également retourné

Plus en détail

Compte en banque : Exemple de conception et implantation par raffinement successif

Compte en banque : Exemple de conception et implantation par raffinement successif Compte en banque : Exemple de conception et implantation par raffinement successif 11 octobre 2014 1 Énoncé On veut écrire un programme qui fait la mise à jour de votre compte en banque. Le programme traite

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC (CORRECTION) durée 3 heures environ page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance

Plus en détail

Examen d Algorithmique et Programmation Orientée Objet

Examen d Algorithmique et Programmation Orientée Objet Examen d Algorithmique et Programmation Orientée Objet 2016-2017 1 re année CSI Apprentissage Phelma - Semestre 1 Mars 2017 Première partie (30 mn) : Aucun document autorisé. Deuxième partie (1h30) : Documents

Plus en détail

Algorithmique et Langage C

Algorithmique et Langage C Algorithmique et Langage C www.polytech.unice.fr/~vg/fr/enseignement/xidian Granet Vincent - vg@unice.fr Xi an - Octobre 2015 - Avril 2016 Sommaire Sommaire 1 Sommaire 2 Bibliographie 3 Introduction 3

Plus en détail

Programmation objet 2 et outils de développement Licence 3 Informatique. Année universitaire David Genest

Programmation objet 2 et outils de développement Licence 3 Informatique. Année universitaire David Genest Programmation objet 2 et outils de développement Licence 3 Informatique Année universitaire 2016-2017 David Genest POO2 Licence 3 Informatique 2016-2017 1 Chapitre I Introduction 1 Présentation du cours

Plus en détail

Programmation C. Types, variables et constantes

Programmation C. Types, variables et constantes Programmation C Types, variables et constantes ESIPE Informatique et Réseaux 1ère année Informatique et Géomatique 1ère année Université de Marne-la-Vallée La mémoire Tout programme manipule de la mémoire.

Plus en détail

Identificateurs. IFT1144 Programmation Internet. Types de données. Mots clés de JavaScript. Variables. Déclaration d une variable.

Identificateurs. IFT1144 Programmation Internet. Types de données. Mots clés de JavaScript. Variables. Déclaration d une variable. Identificateurs IFT1144 Programmation Internet Michel Reid Suite de caractères ( lettres, chiffres,? ou _ ) qui ne commence pas par un chiffre. Autres caractères sont interdits, par exemples : #, blanc

Plus en détail

Rapide mise à niveau en C C pour Camliens

Rapide mise à niveau en C C pour Camliens Rapide mise à niveau en C C pour Camliens Références Kernighan, Ritchie, Le langage C, norme ANSI disponible à la bibliothèque Bernard Cassagne, Introduction au langage C disponible sur la page www du

Plus en détail

Typage et conversions

Typage et conversions Typage et conversions Rappels sur les types Il existe 2 sortes de types en Java: Les types primitifs (boolean, int, etc.); Les types référence qui comprennent deux sous-catégories: Le type tableau qui

Plus en détail

Cours Langage C/C++ Annexe sur les variables

Cours Langage C/C++ Annexe sur les variables Cours Langage C/C++ Annexe sur les variables Thierry Vaira BTS IRIS Avignon tvaira@free.fr v0.1 Les types entiers bool : false ou true booléen (seulement en C++) unsigned char : 0 à 255 (2 8 1) entier

Plus en détail

Chapitre 5 Représentation et numérisation de l information

Chapitre 5 Représentation et numérisation de l information Chapitre 5 Représentation et numérisation de l information 3,46 Bla bla L entonnoir numérique Les nombres de l informatique Chiffre bit (binary digit) Exemples : 3,46 Bla bla L arrosoir numérique Octet

Plus en détail

Historique C++ C++ : extension objet du langage C Bjarne Stroustrup, années 80 Java Inspiré de la partie objet du C++ Années 90 par SUN Vision discutable : Le C++ est un mélange de Java et de C Normalisé

Plus en détail

Le langage C. 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C)

Le langage C. 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C) Le langage C 70's Début du langage C (Ritchie et Kernighan), Origine liée au système UNIX (90% écrit en C) 1978 ``The C Programming Language``, (Kernighan et Ritchie), --> on fait référence à cette première

Plus en détail

Rappels de langage C A 2

Rappels de langage C A 2 Partie A Rappels de langage C Département Informatique Présentation générale Programme C ensemble de fonctions Les fonctions (leur code source) sont réparties dans un ou plusieurs fichiers textes Une des

Plus en détail

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

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

Plus en détail

ÉCOLE POLYTECHNIQUE DE MONTRÉAL DÉPARTEMENT DE GÉNIE INFORMATIQUE

ÉCOLE POLYTECHNIQUE DE MONTRÉAL DÉPARTEMENT DE GÉNIE INFORMATIQUE ÉCOLE POLYTECHNIQUE DE MONTRÉAL DÉPARTEMENT DE GÉNIE INFORMATIQUE ING1025 : INFORMATIQUE EXAMEN FINAL Date Le samedi 13 décembre 2003 Heure de 9h30 à 12h00 Notes Ce questionnaire contient 5 questions sur

Plus en détail

1. PRESENTATION STRUCTURE D UN PROGRAMME EN LANGAGE C Première approche d un programme en langage C

1. PRESENTATION STRUCTURE D UN PROGRAMME EN LANGAGE C Première approche d un programme en langage C 1. PRESENTATION....1 2. STRUCTURE D UN PROGRAMME EN LANGAGE C...1 2.1 Première approche d un programme en langage C...2 2.1.1 Directives de compilation...2 2.1.2 Déclaration d une fonction....2 2.1.3 Déclaration

Plus en détail

Programmation orienté objet en C++ Liste d exercices. Série 1 (ajouts C du C++)

Programmation orienté objet en C++ Liste d exercices. Série 1 (ajouts C du C++) Programmation orienté objet en C++ Liste d exercices Série 1 (ajouts C du C++) Vous essaierez d utiliser systématiquement les notions C++ telles que cout/cin, new/delete plutôt que leur équivalent C :

Plus en détail

Module: Informatique 2

Module: Informatique 2 . Définition: Module: Informatique Le langage Pascal a été créé en 969 à l'école polytechnique de ZURICH par N. WIRTH. Il a été conçu pour permettre d'enseigner la programmation comme une science. Ce langage

Plus en détail

Initiation au langage C

Initiation au langage C Initiation au langage C Universit Mohammed V Sources: http://www.fsr.ac.ma/cours/info.html http://www.ltam.lu/ Plan Introduction 1 Introduction 2 3 Un premier programme Les composantes d un programme en

Plus en détail

Algorithmique Cours 8

Algorithmique Cours 8 Algorithmique Cours 8 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Sommaire L objectif de ce cours est d étudier les tableaux dynamiques et

Plus en détail

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Cours de Langage C Chaînes de caractères

Cours de Langage C Chaînes de caractères Cours de Langage C Chaînes de caractères Les variables ibl de type caractère En C, un caractère est une variable de type «caractères» à savoir de type char : type occupant 1 octet (8 bits) Lepremier usage

Plus en détail

Université Paris 7 - Denis Diderot IF1 Corrigé du partiel du 25 Novembre 2006

Université Paris 7 - Denis Diderot IF1 Corrigé du partiel du 25 Novembre 2006 Université Paris 7 - Denis Diderot IF1 Corrigé du partiel du 25 Novembre 2006 Exercice 1. Exécution à la main de la séquence Java : byte b1 = 111; byte b2 = 19; byte b3 = -108; Deug.println(b1 & b2); Deug.println(b1

Plus en détail

Langage C - Niveau 1

Langage C - Niveau 1 Langage C - Niveau 1 Présentation du langage Campus-Booster ID : 664 www.supinfo.com Copyright SUPINFO. All rights reserved Langage C Niveau 1 Objectifs de ce module En suivant ce module vous allez: Connaître

Plus en détail

De Java (et C) à C++

De Java (et C) à C++ De Java (et C) à C++ Historique Syntaxe basée sur le langage C Bjarne Stroustrup 1979 : C with classes 1983 : renommé C++ 1985 : The C++ Programming Language, première édition 1998 : premier standard 2003

Plus en détail

1 Notions de base 1.1 Structure d'un programme

1 Notions de base 1.1 Structure d'un programme 1 Notions de base 1.1 Structure d'un programme Le langage C++ contient le langage C : tout programme écrit en C à la norme ANSI doit pouvoir être compilé par un compilateur C++. C++ fait la diérence entre

Plus en détail