Introduction C / C++IBM-ILOG Concert / CplexOutils et Logiciels d’Optimisation - Cours 4 et 5P. Pesneaupierre.pesneau@math.u-bordeaux1.frUniversit´e Bordeaux 1Bˆat A33 - Bur 256P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Outils et Logiciels d’Optimisation - Cours 4 et 5Introduction C / C++IBM-ILOG Concert / CplexIntroductionCeci n’est qu’une introduction `a la programmation C / C++.On ne pr´esente ici qu’un minimum afin de pouvoir ´ecrirerapidement un programme.On ne traitera pas des concepts objets et de la programmationobjet.La synthaxe utilis´ee est celle du C aggr´ement´ee de certainefonctionnalit´es tr`es utiles du C++.On utilisera quelques objets mais sans pr´esenter les conceptsqui sont derri`eres.P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Outils et Logiciels d’Optimisation - Cours 4 et 5Introduction C / C++IBM-ILOG Concert / CplexStructure d’un programme#include // Inclusion des d´efinitions de#include "mes_trucs.h" // fonction et objets externestypedef int entier; // d´efinitions de nouveaux typesint NbNodes; // d´eclarations de variables globales// fonctions supple´mentairesint main(int argc, char** argv){// d´eclarations et instructionsvector V(10);for (int i=0; i < 10; i++){cout << V[i];}return 0;}P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Outils et Logiciels d’Optimisation - Cours 4 et 5Introduction C / C++IBM-ILOG Concert / CplexTypesint : entierlong : entier double pr´ecisionfloat : ...
Cecin’estqu’uneintroductiona`laprogrammationC/C++. Onnepresenteiciqu’unminimumafindepouvoire´crire ´ rapidement un programme. On ne traitera pas des concepts objets et de la programmation objet. Lasynthaxeutilis´eeestcelleduCaggr´ement´eedecertaine fonctionnalit´estre`sutilesduC++. On utilisera quelques objets mais ´se ter les concepts sans pre n quisontderri`eres.
Introduction
O’tpmisiigicledsurs4et5ation-Co
rfuOxu.1teoLitslelsdgiciimis’OptoC-noita5te4sru
return 0;
intNbNodes;//d´eclarationsdevariablesglobales
//fonctionssupple´mentaires
for (int i=0; i < 10; i++){ cout << V[i]; }
vector<int> V(10);
int main(int argc, char** argv){
}
//d´eclarationsetinstructions
typedefintentier;//de´finitionsdenouveauxtypes
#include<iostream>//Inclusiondesd´efinitionsde #include "mes_trucs.h" // fonction et objets externes
Vecteurs : vector< type > nom vec ( nb elem ) (n´ecessite #include <vector> ) l’indexation d’un vecteur de n ´ele´mentsvade0`a n − 1.
int : entier long :entierdoublepre´cision float :r´eel double :re´eldoublepre´cision bool : bo l´ o een string :chaıˆnedecaracteres ` (ne´cessite #include <string> )
Variables : type nom variable ; int i; double x = 0.0; // Avec initialisation intx[10];//Tableaude10entiers(de0a`9) Ladur´eedevied’unevariableestlimit´eeaubloc { ... } ou` elleestde´clar´ee.
Variables : type nom variable ; int i; double x = 0.0; // Avec initialisation int x[10]; // Tableau de 10 entiers (de 0 ` 9) a ` Ladur´eedevied’unevariableestlimite´eaubloc { ... } ou elleestd´eclar´ee. Instructions : Chaque instruction se finit par un ; Uneinstructionpeuteˆtre´ecritesurplusieurslignes.
thma-b.udeorx1auOrf.lituLtescigo
tuOresligoLteicid’lstiOpsamiontiC-uosre45t
Variables : type nom variable ; int i; double x = 0.0; // Avec initialisation intx[10];//Tableaude10entiers(de0`a9) Ladure´edevied’unevariableestlimite´eaubloc { ... } o`u elleestd´eclare´e. Instructions : Chaque instruction se finit par un ; Uneinstructionpeuteˆtree´critesurplusieurslignes. Commentaires : /* Commentaires sur plusieurs lignes */ //Commentairejusqu’`alafindelaligne