Bases de la programmation en C++ Lavoué Guillaume
Organisation Vendredi 8h-12h * 16 semaines Cours / TD / TP Participation Contrôle des connaissances : DS promo 50 % DS groupe 25% TP 25% Aujourd’hui Les langages de programmation Le C++, structure d’un programme C++ Les variables TP Bases de la programmation en C++
Les langages de programmation Utilité Donner des instructions à l’ordinateur Développement d’algorithmes Historique Code machine (1 instruction = 1 combinaison de chiffres) Seul véritable langage compris par l’ordinateur Incompréhensible au niveau humain Assembleur (1 instruction = 1 mnémonique) Plus facile à programmer Besoin de traduire en langage machine Comment traduire Compilation (traduire avant l’exécution) Interprétation (traduire pendant l’exécution) Bases de la programmation en C++
Les langages de programmation Besoin de créer des langage plus abstrait Année 56/58, introduction du FORTRAN (FORmulation TRANsposée). 1er langage de haut niveau. Cobol (gestion), Pascal, Basic… Le langage C Né dans les laboratoires Bell en 1972. Langage impératif. Utilisé dans de nombreux domaines Développement de systèmes, de logiciels système (réécriture d’Unix ). Ingénierie, Base de données, gestionnaire de communication, outils bureautiques. Bases de la programmation en C++
Le langage C++ Créé en 1980 Extension du langage C, pour la programmation objet. Caractéristique du langage C++ Normalisé par la norme ANSI/ISO en 1998 Structuré et modulaire Programme séparé en fichier Fichier séparé en fonctions Fonction séparée en blocs Efficace et souple Programmation fine du matériel. Portable (de nombreux environnement/compilateurs disponibles) Bases de la programmation en C++
Structure d’un programme C++ Un programme se présente comme une suite de fichiers Fichier C++ Code objet Compilateur Fichier C++ Code objet Fichier C++ (*.cpp) Code objet (*.obj) Bibliothèque Bibliothèque Editeur de liens Programme Exécutable (*.exe) C++ est un langage compilé Bases de la programmation en C++
Structure d’un programme C++ Chaque fichier se présente comme une suite de fonction. Une fonction est imposée: la fonction main Fonction principale. Point d’entrée du programme. Programme C++ Fichier 1 Main fonction Fichier n fonction Bases de la programmation en C++
Structure d’un fichier source C++ Inclusion de la bibliothèque standard (ANSI) du C++ pour les E/S #include <iostream.h> int main () { int annee_creation; int NousSommesEn; int difference; annee_creation = 1968; NousSommesEn = 2004; difference = NousSommesEn - annee_creation; cout << "Le Departement INFORMATIQUE"; cout << "a ete cree depuis " << annee_creation; cout << "Ce qui fait : " << difference << " ans !"; return 0; } Déclaration de fonctions Déclaration des variables Affectation des variables Algorithme (Relation entrées/sorties) Affichage à l’écran des résultats Instructions Bases de la programmation en C++
Un peu de syntaxe Toute déclaration/instruction (ou presque) se termine par un point-virgule. Instruction ≠ INSTRUCTION Les commentaires: Saisie et affichage des données (communication avec les E/S): Saisir une variable au clavier: cin Afficher une variable ou une phrase à l’écran: cout \* Ceci est un commentaire sur plusieurs lignes ... Fin du commentaire*/ //ceci est un commentaire sur une ligne cout << “saisir la variable x : ”; cin >> x; cout << endl; cout << “la valeur de x est : ” << x << endl; Bibliothèque iostream Bases de la programmation en C++
Les types élémentaires Les entiers relatifs (1,2,-3 etc…) : int (2 octet). (on peut leur ajouter les attribut : short, long, signed, unsigned) Les réels ou flottants (0.12, PI, …) : float (4 octet). Les réels double précison : double (8 octets). (on peut lui ajouter l’attribut : long) Les caractères (‘a’, ‘b’, ‘c’, ‘#’, ‘3’…) : char (1octet) = code ASCII (0<<255) du caractères. (on peut lui ajouter les attributs signed ou unsigned) Le type logique ou booléen (true, false) : bool Bases de la programmation en C++
Les variables Elles possède un type (char, int…), un nom et une valeur. Déclaration de variable: Nom_type nom_objet; ou Nom_type nom_objet = valeur; Déclaration locale ou globale: Variables globales : définies hors de toutes fonctions Vues par toutes les fonctions du fichier source Persistante pendant toute la durée de vie du programme Variables locales: Déclarées à l’intérieur d’une fonction Détruites en sortie de fonction Int a; float r; Int b=3; float s=0.25; Bases de la programmation en C++
Déclaration de variables Exemples bool trouve = false; // un booléen ne peut prendre que les valeurs true et false int min , max; // variables entières (2 octets) Int valeur = 125; // variable entière valant 125 long int adresse; // adresse est un entier long (4 octets) char car = ‘G’; // car est un caractère (entier codé sur 1 octet) unsigned int position; // un entier non signé double PI = 3.1415926535; Bases de la programmation en C++
Exemple #include <iostream.h> Déclaration de variable const float PI = 3.14159; int main () { float rayon = 5.458; float perimetre; // calcul périmètre perimetre = PI * 2* rayon; cout << "perimetre p = " << p << endl; return 0; } Déclaration de variable globale Déclaration de variables locales Bases de la programmation en C++
Les opérateurs Affectation: = Opérateurs arithmétiques Addition: + Soustraction: - Multiplication: * Division: / (division entière dans le cas de int) Modulo: % (reste de la division entière) Opérateurs arithmétiques unaires (un seul opérande) Moins unaire: - Incrémentation: ++ Decrémentation: -- Opérateurs logiques Négation: ! ET logique: && OU logique: || Opérateurs de relation ( ils rendent 1 si la condition est vrai et 0 sinon) < , > , <= , >= , == , != Bases de la programmation en C++