Outils et Logiciels d Optimisation - Cours 4 et 5

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Outils et Logiciels d Optimisation - Cours 4 et 5"

Transcription

1 Introduction C / C++ Outils et Logiciels d Optimisation - Cours 4 et 5 P. Pesneau Université Bordeaux 1 Bât A33 - Bur 256

2 Introduction Introduction C / C++ Ceci n est qu une introduction à la programmation C / C++. On ne présente ici qu un minimum afin de pouvoir écrire rapidement un programme. On ne traitera pas des concepts objets et de la programmation objet. La synthaxe utilisée est celle du C aggrémentée de certaine fonctionnalités très utiles du C++. On utilisera quelques objets mais sans présenter les concepts qui sont derrières.

3 Introduction C / C++ Structure d un programme #include <iostream> // Inclusion des définitions de #include "mes_trucs.h" // fonction et objets externes typedef int entier; // définitions de nouveaux types int NbNodes; // déclarations de variables globales // fonctions supplémentaires int main(int argc, char** argv){ } // déclarations et instructions vector<int> V(10); for (int i=0; i < 10; i++){ cout << V[i]; } return 0;

4 Types Introduction C / C++ int : entier long : entier double précision float : réel double : réel double précision bool : booléen string : chaîne de caractères (nécessite #include <string>)

5 Types Introduction C / C++ int : entier long : entier double précision float : réel double : réel double précision bool : booléen string : chaîne de caractères (nécessite #include <string>) Vecteurs : vector<type> nom vec(nb elem) (nécessite #include <vector>) l indexation d un vecteur de n éléments va de 0 à n 1.

6 Introduction C / C++ Variables - Instructions Variables : type nom variable; int i; double x = 0.0; // Avec initialisation int x[10]; // Tableau de 10 entiers (de 0 à 9) La durée de vie d une variable est limitée au bloc {... } où elle est déclarée.

7 Introduction C / C++ Variables - Instructions Variables : type nom variable; int i; double x = 0.0; // Avec initialisation int x[10]; // Tableau de 10 entiers (de 0 à 9) La durée de vie d une variable est limitée au bloc {... } où elle est déclarée. Instructions : Chaque instruction se finit par un; Une instruction peut être écrite sur plusieurs lignes.

8 Introduction C / C++ Variables - Instructions Variables : type nom variable; int i; double x = 0.0; // Avec initialisation int x[10]; // Tableau de 10 entiers (de 0 à 9) La durée de vie d une variable est limitée au bloc {... } où elle est déclarée. Instructions : Chaque instruction se finit par un; Une instruction peut être écrite sur plusieurs lignes. Commentaires : /* Commentaires sur plusieurs lignes */ // Commentaire jusqu à la fin de la ligne

9 Opérateurs Introduction C / C++ Opérateurs numériques : + - * / = += -= *= /= == < <= > >=!=

10 Opérateurs Introduction C / C++ Opérateurs numériques : + - * / = += -= *= /= == < <= > >=!= Opérateurs booléens : && ==

11 Opérateurs Introduction C / C++ Opérateurs numériques : + - * / = += -= *= /= == < <= > >=!= Opérateurs booléens : && == Opérateurs sur les flots : << >>

12 Introduction C / C++ Boucles - Alternative Boucles pour : for (initialisations; test continuité; incrément){ instructions } Il peut y avoir plusieurs initialisations séparées par des virgules.

13 Introduction C / C++ Boucles - Alternative Boucles pour : for (initialisations; test continuité; incrément){ instructions } Il peut y avoir plusieurs initialisations séparées par des virgules. Boucle tant que : while (test continuité) { instructions }

14 Introduction C / C++ Boucles - Alternative Boucles pour : for (initialisations; test continuité; incrément){ instructions } Il peut y avoir plusieurs initialisations séparées par des virgules. Boucle tant que : while (test continuité) { instructions } Alternative si : if (expr booléenne) { instructions à effectuer quand expr booléenne est vraie } else { instructions à effectuer quand expr booléenne est fausse }

15 Fonctions Introduction C / C++ type ret nom fct(param1, param2,...){ instructions return élément retourné; } avec param1 pouvant être : type & nom param const type & nom param pour une procédure, on remplace le type retourné par void et il n y a pas de return

16 Introduction C / C++ Entrées / Sorties Les entrées / sorties se font par des objets corespondants à des flots de données. nécessite #include <iostream> utiliser using namespace::std cout : flot de données sur la sortie standard (écran). cin : flot de données sur l entrée standard (clavier). opérateurs << >>. cout << i = << i << endl; endl : retour à la ligne. cin >> i;

17 Pointeurs Introduction C / C++ Emplacement mémoire pouvant stocker l adresse d un autre emplacement mémoire Déclaration : type pointé * nom pointeur; Obtention de l adresse d une variable & : int i; int * p; p = &i; Accès au pointeur directement par la variable pointeur. Accès au contenu du pointeur : int i; int * p; p = &i; *p = 10;

18 Pointeurs Introduction C / C++ Allocation dynamique : Allocation : nom pointeur = new type pointé; Libération mémoire : delete nom pointeur;

19 Pointeurs Introduction C / C++ Allocation dynamique : Allocation : nom pointeur = new type pointé; Libération mémoire : delete nom pointeur; Pointeurs et tableaux : Les tableaux peuvent être vu comme un pointeur sur un ensemble de cases : int * Tab; Allocation dynamique de tableaux : Tab = new int[10]; Libération d un tableau : delete [] Tab;

20 Introduction C / C++ Concert / Cplex Exemple en live sur ATSP

L1-S2 MPI : Programmation Impérative

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

Plus en détail

Programmation en C++ C++ de base. Programme C++ Variables, objets, types Fonctions Namespace Tests Boucles Pointeurs, références

Programmation en C++ C++ de base. Programme C++ Variables, objets, types Fonctions Namespace Tests Boucles Pointeurs, références Programmation en C++ C++ de base Programme C++ Variables, objets, types Fonctions Namespace Tests Boucles Pointeurs, références 1 Programme C++ Le programme C++ le plus simple int main() { return 0;...

Plus en détail

Chapitre 5 : Définition de nouveaux types

Chapitre 5 : Définition de nouveaux types Chapitre 5 : Définition de nouveaux types Rappel : le type d une entité x détermine L ensemble des valeurs possibles pour x L ensemble des opérations «élémentaires» possibles sur x Canevas de types: exemple

Plus en détail

Un aperçu du C++ 1.1. Historique. 1.2. Un exemple de programme C++ 1.2.2. Les fichiers sources. 1.2.1. Pour commencer

Un aperçu du C++ 1.1. Historique. 1.2. Un exemple de programme C++ 1.2.2. Les fichiers sources. 1.2.1. Pour commencer Un aperçu du C++ 1.1. Historique Langage bas niveau/haut niveau Le langage C++ est une évolution du C, le langage C étant un sous ensemble du C++ Introduit par Bjarne Stroustrup à partir du C et de l Algol.

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

Algorithmique Correction du DS3

Algorithmique Correction du DS3 Algorithmique Correction du DS3 IUT Informatique de Lens, 1ère Année Université d Artois Frédéric Koriche koriche@cril.fr 2011 - Semestre 1 Exercice 1 Exercice 1 Analyseur d ADN. Rappelons que l ADN (acide

Plus en détail

Éléments de programmation C++

Éléments de programmation C++ Université du Québec École de technologie supérieure Département de génie de la production automatisée GPA789 Analyse et Conception orientées objet Éléments de programmation C++ Professeur: Tony Wong,

Plus en détail

Le langage C Pointeurs et gestion de la mémoire

Le langage C Pointeurs et gestion de la mémoire 1/36 Abstraction mémoire Pointeurs Tableaux et pointeurs Le langage C Pointeurs et gestion de la mémoire Pierre Gançarski Université de Strasbourg IUT Robert Schuman DUT Informatique /36 Plan du cours

Plus en détail

Introduction Présentation - Installation

Introduction Présentation - Installation FormaCD : Initiation à la programmation C++ Objectif : Découverte des concepts de base du C++ ainsi qu une brève introduction à la programmation orientée objet. Le langage C++ étant assez complexe et vu

Plus en détail

Introduction au langage C++

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

Plus en détail

Licence MPI, Semestre 1, Introduction à l informatique (Info 111) Année 2015 2016. TD 7 - fonctions, boucles et tableaux à deux dimensions

Licence MPI, Semestre 1, Introduction à l informatique (Info 111) Année 2015 2016. TD 7 - fonctions, boucles et tableaux à deux dimensions Licence MPI, Semestre 1, Introduction à l informatique (Info 111) Année 2015 2016 TD 7 - fonctions, boucles et tableaux à deux dimensions Exercice 1. 1. Questions de cours (1) Rappeller le modèle de mémoire

Plus en détail

int f(int n, int p) { int a1,a2; if ((p==0) (p==n)) return 1; else { a1=f(n-1,p-1); a2=f(n-1,p); return a1+a2; } }

int f(int n, int p) { int a1,a2; if ((p==0) (p==n)) return 1; else { a1=f(n-1,p-1); a2=f(n-1,p); return a1+a2; } } Ecole préparatoire en Sciences et Techniques d'oran Intitulé : Algorithmique 2 et structures de données avancées Sigle : Algo2 2 me année, Semestre 3, 2011/2012 Examen de synthèse Février 2012 Durée :

Plus en détail

Langage C notes de cours

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

Plus en détail

Tableaux et boucle For

Tableaux et boucle For Tableaux et boucle For Pierre-Alain FOUQUE Département d Informatique École normale supérieure Plan 1 -Tableaux 2 -Boucles for 3 -Paramètres sur la ligne de commande 2 Limite des types de base Définir

Plus en détail

Table des matières. Tour d horizon de la Partie I... 5

Table des matières. Tour d horizon de la Partie I... 5 Table des matières Préface à l édition française 2012... Ce que cette nouvelle édition apporte... XI XI La programmation en C aujourd hui... XIII La programmation système et réseau... XV Le CD laisse la

Plus en détail

Outils et Logiciels d Optimisation - Cours 1

Outils et Logiciels d Optimisation - Cours 1 Outils et Logiciels d Optimisation - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 256 Motivations Introduction Systèmes trop complexes pour qu un humain puisse

Plus en détail

Contrôle Langage C N 1 QCM CORRECTION

Contrôle Langage C N 1 QCM CORRECTION Contrôle Langage C N 1 QCM CORRECTION 1 Une directive du préprocesseur est une ligne qui commence par : { # // /* 2 Qu'est ce qu'une bibliothèque? Un fichier source déjà écrit contenant des fonctions toutes

Plus en détail

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

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

Plus en détail

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

if - else En combinant plusieurs structures if - else en une expression nous if ( <expr1> ) <bloc1> else if (<expr2>) <bloc2> else if (<expr3>)

if - else En combinant plusieurs structures if - else en une expression nous if ( <expr1> ) <bloc1> else if (<expr2>) <bloc2> else if (<expr3>) if - else En combinant plusieurs structures if - else en une expression nous obtenons une structure qui est très courante pour prendre des décisions entre plusieurs alternatives: if ( )

Plus en détail

Programmation avec Java : notions de base

Programmation avec Java : notions de base Programmation avec Java : notions de base (NFA031) Corrigé pour la session du 11 avril 2013 Aucun document n est autorisé. Le barème est donné à titre indicatif. Exercice 1 : exécution de programme (3

Plus en détail

Cours 5. Types avancés en langage C. Conversions des types.

Cours 5. Types avancés en langage C. Conversions des types. Cours 5. Types avancés en langage C. Conversions des types. Dimitri Galayko 1 Conversion des types en langage C 1.1 Conversion des types arithmétiques Considérez le code suivant: int a=4; double b ; b=a

Plus en détail

Les pointeurs. Exos Langage C. 61, rue David d Angers 75019 PARIS

Les pointeurs. Exos Langage C. 61, rue David d Angers 75019 PARIS Lycée polyvalent DIDEROT 61, rue David d Angers 75019 PARIS http://www.diderot.org Département IRIS Exos Langage C Les pointeurs Exercices sur les pointeurs Auteur Version - Date Nom du fichier G.VALET

Plus en détail

Premiers exemples de traitements

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

Plus en détail

Normes de programmation en langage C++

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

Plus en détail

Les différents types d adressage

Les différents types d adressage Les différents types d adressage Adressage direct: c est l adressage standard que nous avons utilisé jusqu à présent. Par exemple int A; A=10;. On accède au contenu de la variable par le nom de la variable:

Plus en détail

Programmation Impérative 2005 2006

Programmation Impérative 2005 2006 Cours Programmation Impérative - p. 3/ 30 Cours Programmation Impérative - p. 4/ 30 Licence Physique-Chimie Université Jean-Monnet Récapitulatif Programmation Impérative 2005 2006 Guillaume MULLER muller@emse.fr

Plus en détail

LE LANGAGE C ADAPTÉ AU MICROCONTRÔLEURS

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

Plus en détail

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

Les entrées-sorties. Les entrées-sorties. Couches accessibles par programmation Appels système Système d exploitation. Disque dur

Les entrées-sorties. Les entrées-sorties. Couches accessibles par programmation Appels système Système d exploitation. Disque dur Les entrées-sorties Les entrées-sorties Couches accessibles par programmation Appels système Système d exploitation périphériques Disque dur Benoît Charroux - entrées / sorties - Septembre 98-2 La bibliothèque

Plus en détail

IFT1169 Examen Intra

IFT1169 Examen Intra Trimestre Hiver, 2009 Mohamed Lokbani IFT1169 Examen Intra Inscrivez tout de suite votre nom et le code permanent. Nom: Prénom(s): Signature: Code perm: Date : mardi 24 février 2009 Durée : 2 heures (de

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

MI51 Cryptographie RSA

MI51 Cryptographie RSA MI1 Cryptographie RSA Compte-rendu des TP 1 et 2 Thomas Petazzoni Julien Rosener mai 2004 Introduction Les TP1 et TP2 de MI1 ont permis de réaliser un chiffrement et un déchiffrement à l aide de l algorithme

Plus en détail

Méthodologie de la programmation

Méthodologie de la programmation Méthodologie de la programmation Pablo Rauzy pablo rauzy @ univ-paris8 fr pablo.rauzy.name/teaching/mdlp UFR MITSIC / L1 informatique Séance e Aperçu du langage C : introduction Pablo Rauzy (Paris 8 /

Plus en détail

Tutoriel. Écrire un programme fonctionnant en réseau avec la common c++

Tutoriel. Écrire un programme fonctionnant en réseau avec la common c++ Version 001 Tutoriel Écrire un programme fonctionnant en réseau avec la common c++ Auteur : Jean-Louis Gutzwiller. Dernière modification : 9 septembre 2010 Jean-Louis.Gutzwiller@supelec.fr - 2 / 7 - Table

Plus en détail

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

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

Plus en détail

UEF 1 : Informatique & Programmation

UEF 1 : Informatique & Programmation UEF 1 : Informatique & Programmation Jérôme DURAND-LOSE Sandrine JULIA Faculté des Sciences de Nice DEUG 2000-2001 Jean-Paul ROY COURS 2 Les types de données en Java Le langage Java traite deux types de

Plus en détail

Petit manuel de survie pour C++

Petit manuel de survie pour C++ Département d Informatique ENS de Cachan Petit manuel de survie pour C++ François Laroussinie fl@lsv.ens-cachan.fr Année 2004-2005 Petit manuel de survie pour C++ à compléter avec les précieux commentaires

Plus en détail

Cours d algorithmique

Cours d algorithmique I - Définition a. Définition d un algorithme b. Définition d un algorigramme 1 Symbole général 2 Renvoi 3 Sous- programme 4 Entrée Sortie 5 commentaires 6 Branchement II L algorithme Le langage de description

Plus en détail

TP 4 : Les tableaux. Objectifs : Maîtriser les tableaux à une dimension et à deux dimensions. Savoir passer des arguments en ligne de commande.

TP 4 : Les tableaux. Objectifs : Maîtriser les tableaux à une dimension et à deux dimensions. Savoir passer des arguments en ligne de commande. TP 4 : Les tableaux Objectifs : Maîtriser les tableaux à une dimension et à deux dimensions. Savoir passer des arguments en ligne de commande. TABLEAU A UNE DIMENSION... 2 1. RAPPEL ALGORITHMIQUE... 2

Plus en détail

Tableaux dynamiques avec vector

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

Plus en détail

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

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

Plus en détail

Les sous-programmes. Chapitre 6. 6.1 Définition d un sous-programme. Déclaration algorithmique d un sous-programme

Les sous-programmes. Chapitre 6. 6.1 Définition d un sous-programme. Déclaration algorithmique d un sous-programme Chapitre 6 Les sous-programmes 6.1 Définition d un sous-programme Un sous-programme est un élément de programme nommé et éventuellement paramétré, que l on définit afin de pouvoir ensuite l appeler par

Plus en détail

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

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

Plus en détail

MODULE 2. Manipulations de base avec les images. Objectifs de ce module : Ouvrir un fichier d image. Sauvegarder un fichier d image

MODULE 2. Manipulations de base avec les images. Objectifs de ce module : Ouvrir un fichier d image. Sauvegarder un fichier d image Objectifs de ce module : Ouvrir un fichier d image MODULE 2 Manipulations de base avec les images Sauvegarder un fichier d image Utiliser adéquatement la classe d image Mat. Module 2 Manipulation de base

Plus en détail

Compréhension de code. Le but de cet exercice est de se familiariser avec la syntaxe Java.

Compréhension de code. Le but de cet exercice est de se familiariser avec la syntaxe Java. Licence Informatique Université de Bordeaux 2015-2016 UE J1IN4W01 Programmation 2 Travaux Dirigés - feuille 1 1 Travaux Dirigés Exercice 1. Compréhension de code Le but de cet exercice est de se familiariser

Plus en détail

Cours de Langage C Les fonctions en C

Cours de Langage C Les fonctions en C Cours de Langage C Les fonctions en C Programmation modulaire Un programme dépassant une ou deux pages est difficile à comprendre Une écriture modulaire permet de scinder le programme en plusieurs parties

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

Génie Logiciel I. Cours I - Introduction au C++ Nicolas Kielbasiewicz C.D.C.S.P./I.S.T.I.L./I.C.J. Filière M.A.M. 2ème année - 2008/2009

Génie Logiciel I. Cours I - Introduction au C++ Nicolas Kielbasiewicz C.D.C.S.P./I.S.T.I.L./I.C.J. Filière M.A.M. 2ème année - 2008/2009 Cours I - Introduction au C++ Nicolas Kielbasiewicz C.D.C.S.P./I.S.T.I.L./I.C.J. Filière M.A.M. 2ème année - 2008/2009 Filière M.A.M. 2ème année - 2008/2009 1 / Plan du cours 1 Introduction générale 2

Plus en détail

Feuille d'exercices 1. Prise en main. Ecrire un programme qui ache la phrase Bonjour le monde! à l'écran.

Feuille d'exercices 1. Prise en main. Ecrire un programme qui ache la phrase Bonjour le monde! à l'écran. Master MIMSE - Spécialité 3-1ère Année J0MS7301 : Algorithmique et Programmation Objet Feuille d'exercices 1 Prise en main Exercice 0 : Ecrire un programme qui ache la phrase Bonjour le monde! à l'écran.

Plus en détail

Programmation en C++ Agrégation génie électrique. François Schwarzentruber

Programmation en C++ Agrégation génie électrique. François Schwarzentruber Programmation en C++ Agrégation génie électrique François Schwarzentruber Partie I Programmation impérative page 5 Classe Exceptions Manipuler des fichiers Mon premier programme Algorithmique de base

Plus en détail

Aide Mémoire - langage C

Aide Mémoire - langage C Université du Luxembourg 2005 2006 Aide Mémoire - langage C 1 Directives de préprocesseur inclusion de fichiers pour un fichier système : #include pour un fichier du répertoire courant

Plus en détail

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

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

Plus en détail

Chapitre 1 Introduction

Chapitre 1 Introduction Chapitre 1 Introduction Jean Privat Université du Québec à Montréal INF7330 Construction de logiciels Diplôme d études supérieures spécialisées en systèmes embarqués Automne 2012 Jean Privat (UQAM) 01

Plus en détail

Le langage C. Université d Aix-Marseille Faculté des Sciences. Henri Garreta Département d Informatique & LIF

Le langage C. Université d Aix-Marseille Faculté des Sciences. Henri Garreta Département d Informatique & LIF Université d Aix-Marseille Faculté des Sciences Le langage C Licences Maths & Informatique Master Mathématiques Master CCI Henri Garreta Département d Informatique & LIF TABLE DES MATIÈRES TABLE DES MATIÈRES

Plus en détail

Serie 16 niveau 0 Fichier : automate de lecture, lecture/écriture de fichiers

Serie 16 niveau 0 Fichier : automate de lecture, lecture/écriture de fichiers Serie 16 niveau 0 Fichier : automate de lecture, lecture/écriture de fichiers Exemple du cours : automate de lecture d un fichier de configuration On veut écrire un petit programme qui lit un fichier répondant

Plus en détail

Initiation a la programmation

Initiation a la programmation Initiation a la programmation Table des matières I) Introduction... 1 II) Structure de base d un programme ROBOTC... 2 III) Les variables... 3 IV) Les conditions... 4 V) Les boucles... 5 VI) Exemples de

Plus en détail

Questionnaire+ corrigé examen intra INF1005C. Sigle du cours

Questionnaire+ corrigé examen intra INF1005C. Sigle du cours Questionnaire+ corrigé examen intra INF1005C Sigle du cours Sigle et titre du cours Groupe Trimestre INF1005C Programmation procédurale Tous 20081 Professeur Local Téléphone Martine Bellaïche coordonnatrice,

Plus en détail

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

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

Plus en détail

Informatique II : Cours de programmation (C++) INTRODUCTION

Informatique II : Cours de programmation (C++) INTRODUCTION Informatique II : Cours de () INTRODUCTION Haroud Laboratoire d Intelligence Artificielle Faculté I&C Informatique II Cours 1 : Introduction 1 / 65 Objectifs du d aujourd hui Présenter le Objectifs («Quoi?»)

Plus en détail

Une introduction au C/C++ non orienté objet

Une introduction au C/C++ non orienté objet Une introduction au C/C++ non orienté objet Un premier programme en C/C++ : comme il est classique, ce programme écrit bonjour à l'écran. Les types de donnée simples : int, float, double, char, les tableaux,

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

Chap. 3 Introduction au langage C

Chap. 3 Introduction au langage C Chapitre 3. Introduction au langage C Quelques propriétés du langage C : utilisation intensive des fonctions ; au début, langage faiblement typé (au contraire de Pascal) ; C est un langage structuré ;

Plus en détail

Langage C. E. Boucharé

Langage C. E. Boucharé Langage C E. Boucharé Table des Matières Introduction.............................................................................. 1 Chapitre 1. Les types de données de C....................................................

Plus en détail

Corrigés des exercices sur les fonctions

Corrigés des exercices sur les fonctions Corrigés des exercices sur les fonctions Exercice 5.1.1 adaptation de programme Question 1 Modifiez le programme pour que le calcul de la division soit réalisé par une fonction à deux paramètres, x et

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

1. Base de connaissance du langage C# 2. Initiation de l environnement de développement 3. Exercices

1. Base de connaissance du langage C# 2. Initiation de l environnement de développement 3. Exercices Sihao DENG sihao.deng@utbm.fr http://deng.sihao.perso.sfr.fr/mn41 1. Base de connaissance du langage C# 2. Initiation de l environnement de développement 3. Exercices Langage C Références: http://deng.sihao.perso.sfr.fr/mn41/lo11.pdf

Plus en détail

Introduction à la Programmation en C ++

Introduction à la Programmation en C ++ FACULTÉ POLYTECHNIQUE DE MONS Service d Informatique Introduction à la Programmation en C ++ Mohammed Benjelloun 1 ère Bachelier Année académique 2014-2015 FACULTÉ POLYTECHNIQUE DE MONS Service d Informatique

Plus en détail

Partie cours :6.50 pts

Partie cours :6.50 pts Ecole préparatoire en Sciences et Techniques d'oran Module : Informatique 2 2 me année, Semestre 4, 2011/2012 Devoir surveillé Mai 2012 Durée : 01h30mn Partie cours :6.50 pts Exercice 1 : (les arbres)

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

Algorithmique - Correction du TD3

Algorithmique - Correction du TD3 Algorithmique - Correction du TD3 IUT 1ère Année 18 décembre 2012 1 Les boucles (suite) Exercice 1. Ecrire un algorithme qui reçoit en entrée un nombre entier de 1 à 10 et affiche en sortie la table de

Plus en détail

Utilisation des tableaux en C

Utilisation des tableaux en C Utilisation des tableaux en C L. Mounier UJF - M2 CCI - PL1 1 er octobre 2013 1 / 19 Les Tableaux en C Plan 1 Les Tableaux en C 2 Représentation contiguë de séquence 3 Chaînes de caractères 4 Tableaux

Plus en détail

Algorithmique et programmation : les bases (C) Corrigé

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

Plus en détail

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

Type Abstrait de Données

Type Abstrait de Données Type Abstrait de Données Définition et implémentation Dans une programmation en large il est nécessaire d identifier et de spécifier les données assez tôt dans le processus de développement. Une fois la

Plus en détail

Une courte introduction à C++ Karl Tombre École des Mines de Nancy

Une courte introduction à C++ Karl Tombre École des Mines de Nancy Une courte introduction à C++ Karl Tombre École des Mines de Nancy Version 1.0 Octobre 1999 1 Un peu d histoire Le langage C++ a deux grands ancêtres : Simula, dont la première version a été conçue en

Plus en détail

Plan. Langage C Typedef Initiation aux pointeurs Algorithmique Borne inférieure sur les tris Tables : recherche, insertion, suppression Hachage

Plan. Langage C Typedef Initiation aux pointeurs Algorithmique Borne inférieure sur les tris Tables : recherche, insertion, suppression Hachage Plan X, Petite classe 45 Langage C Typedef Initiation aux pointeurs Algorithmique Borne inférieure sur les tris Tables : recherche, insertion, suppression Hachage Typedef X, Petite classe 45 Pour créer

Plus en détail

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

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

Plus en détail

Syntaxe et éléments de base Java

Syntaxe et éléments de base Java UMBB/FS/DEP. INFORMATIQUE Syntaxe et éléments de base Java Ilyes DJAAFRI 17/03/2013 1 Sommaire Syntaxe et éléments de base Java...3 1.Présentation de Java...3 1.1.Définitions et bases...3 1.2.Exécution

Plus en détail

exercices divers Exercice 2.2.1 erreurs à la compilation Question 1 classifier les erreurs

exercices divers Exercice 2.2.1 erreurs à la compilation Question 1 classifier les erreurs exercices divers Exercice 2.2.1 erreurs à la compilation Question 1 classifier les erreurs Le programme suivant ne compile pas. Signalez les erreurs, et expliquez leur nature : de syntaxe, de typage, variable

Plus en détail

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

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

Plus en détail

Chapitre 2. Structures de Contrôle. 2.1 L instruction if-else

Chapitre 2. Structures de Contrôle. 2.1 L instruction if-else Chapitre 2 Structures de Contrôle 2.1 L instruction if-else Cette instruction permet d effectuer un test pour choisir entre deux alternatives. En fonction du résultat du test, l une des deux alternatives

Plus en détail

Communications et synchronisations

Communications et synchronisations Communications et synchronisations Polytech Paris-Sud Cycle ingénieur de la filière étudiant Louis Mandel Université Paris-Sud 11 Louis.Mandel@lri.fr année 2012/2013 Le problème des philosophes (Dijkstra

Plus en détail

1 Utilisation de la librairie string.h

1 Utilisation de la librairie string.h Département IMA / 3A (S5) Programmation Structurée 2012/2013 http://lauregonnordorg/pro/teaching/ TP 11 Transitions Objectifs L'objectif de ce TP est de faire le lien avec les cours de S6 Programmation

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

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

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

Plus en détail

Recherche et dénombrement dans des tableaux

Recherche et dénombrement dans des tableaux Recherche et dénombrement dans des tableaux Licence 1 MASS - Introduction programmation Java Sébastien Verel verel@i3s.unice.fr www.i3s.unice.fr/ verel Équipe ScoBi - Université de Nice Sophia-Antipolis

Plus en détail

Etude de cas simulation de banque UML/C++

Etude de cas simulation de banque UML/C++ Etude de cas simulation de banque UML/C++ Philippe Laroque $Id: simubanque.lyx 1665 2009-03-05 16:02:45Z phil $ laroque@u-cergy.fr mars 2009 Abstract Ce petit document résume, à travers une étude de cas

Plus en détail

Objectifs. Pointeurs : rappels. Fonctions. Pointeurs : suite. Annexes. Jamila Sam. Objectifs. Pointeurs : rappels. Fonctions.

Objectifs. Pointeurs : rappels. Fonctions. Pointeurs : suite. Annexes. Jamila Sam. Objectifs. Pointeurs : rappels. Fonctions. du cours d aujourd hui suite suite Informatique II : Cours de programmation (C++), & Rappeler ce qu est un pointeur et aborder des exemples d utilisation typiques de ce concept : allocation dynamique,

Plus en détail

Introduction à la Programmation 1

Introduction à la Programmation 1 Introduction à la Programmation 1 Séance 5 de cours/td Université Paris-Diderot Objectifs: Boucles while. Variables booléennes. 1 La boucle while Boucle non bornée [Cours] La boucle non bornée permet de

Plus en détail

IFT1166 - INTRA. Directives: IFT1166 - Session Automne, Intra. Mohamed Lokbani. Prénom(s): Date:20 Octobre 1999

IFT1166 - INTRA. Directives: IFT1166 - Session Automne, Intra. Mohamed Lokbani. Prénom(s): Date:20 Octobre 1999 IFT1166 - Session Automne, Intra Mohamed Lokbani IFT1166 - INTRA Nom: Prénom(s): Signature: Code perm: Date:20 Octobre 1999 Durée: 2 heures (de 18h30: 20h:30) Local: 1360 Directives: - Il vous est permis

Plus en détail

Algorithmique et programmation - Séance 4 Pointeurs Solutions

Algorithmique et programmation - Séance 4 Pointeurs Solutions Ecole polytechnique de Bruxelles Année Académique 2011-2012 Algorithmique et programmation INFO-H-200 Algorithmique et programmation - Séance 4 Pointeurs Solutions Exercice 1. Dans le programme suivant,

Plus en détail

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

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

Plus en détail

Correction n o 1. Cours de programmation impérative Licence MPI L1 S2 - Info 121. Prise en main / Conditions / Boucles

Correction n o 1. Cours de programmation impérative Licence MPI L1 S2 - Info 121. Prise en main / Conditions / Boucles Correction n o 1 Cours de programmation impérative Licence MPI L1 S2 - Info 121 Prise en main / Conditions / Boucles La présence aux séances de TPs est obligatoire, et l assiduité sera prise en compte

Plus en détail

Corrigé des exercices sur les fonctions (suite)

Corrigé des exercices sur les fonctions (suite) Corrigé des exercices sur les fonctions (suite) Exercice 5.2.1 somme des carrés Ecrire une fonction qui calcule la somme des n premiers carrés 1 2 +2 2 +...+n 2. class Exo9_1{ static int npremierscarres(int

Plus en détail

Travaux Pratiques d Informatique 1

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

Plus en détail

Outils d expérimentation

Outils d expérimentation Outils d expérimentation (Sécurité : C++ vs Java) Document présenté à : M. Dominique Goutier Dans le cadre du cours : Nouvelles technologies (420-620-SF) Étudiants : David Dastous St-Hilaire Simon Ducas-Desrosiers

Plus en détail

Cours Langage C/C++ - Première partie

Cours Langage C/C++ - Première partie Cours Langage C/C++ - Première partie Thierry Vaira BTS IRIS Avignon tvaira@free.fr v0.2 Historique (1/3) Introduction En 1970, Ken Thompson, créa un nouveau langage : Le B, descendant du BCPL (Basic Combined

Plus en détail

Cours de Programmation Impérative Allocation dynamique

Cours de Programmation Impérative Allocation dynamique Cours de Programmation Impérative Allocation dynamique Julien David A101 - david@lipn.univ-paris13.fr Julien David (A101 - david@lipn.univ-paris13.fr) 1 / 31 P r`e v i`o u sfi l y `o nffl "P r`oˆgˇr`a

Plus en détail

Programmation 3. Fiche de TD 2

Programmation 3. Fiche de TD 2 Programmation L Informatique 01-01 Fiche de TD Notions abordées : macro instructions ; effets de bord ; structures conditionnelles et de boucle. Exercice 1. (Débogage conditionnel) 1. La macro assert,

Plus en détail