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



Documents pareils
Introduction au langage C

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java


Programmation C++ (débutant)/instructions for, while et do...while

Le langage C. Séance n 4

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Initiation à la programmation en Python

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

Introduction à l algorithmique et à la programmation M1102 CM n 3

Algorithmique et Programmation, IMA

UE C avancé cours 1: introduction et révisions

SUPPORT DE COURS. Langage C

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)

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Notions fondamentales du langage C# Version 1.0

Cours d Algorithmique et de Langage C v 3.0

Programmation en langage C

Claude Delannoy. 3 e édition C++

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

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

STAGE IREM 0- Premiers pas en Python

Les structures. Chapitre 3

I. Introduction aux fonctions : les fonctions standards

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Utilisation du BDE pour la maintenance des fichiers DBF de l'application TopoCad:

Cours d initiation à la programmation en C++ Johann Cuenin

Langage C. Patrick Corde. 22 juin Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin / 289

COMPARAISONDESLANGAGESC, C++, JAVA ET

EXCEL TUTORIEL 2012/2013

TP 1. Prise en main du langage Python

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Cours d algorithmique pour la classe de 2nde

UE Programmation Impérative Licence 2ème Année

Java Licence Professionnelle CISII,

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

INITIATION A LA PROGRAMMATION

Outils pour la pratique

Programmation C. J.-F. Lalande. 15 novembre 2012

Utilisation d objets : String et ArrayList

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

Chapitre 2 Devine mon nombre!

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

TP : Gestion d une image au format PGM

Créer un tableau avec LibreOffice / Calc

Programmer en JAVA. par Tama

Chap III : Les tableaux

Langage Éric Guérin 5 octobre 2010

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

L'émulateur multi-système

Initiation à LabView : Les exemples d applications :

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

PRÉSENTÉ PAR : NOVEMBRE 2007

Plan du cours. Historique du langage Nouveautés de Java 7

Présentation du langage et premières fonctions

Les chaînes de caractères

Introduction à MATLAB R

La Clé informatique. Formation Excel XP Aide-mémoire

V- Manipulations de nombres en binaire

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

GUIDE Excel (version débutante) Version 2013

Bases de programmation. Cours 5. Structurer les données

Le langage C. Introduction, guide de reference

Eclipse atelier Java

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE UNIVERSITE M HAMED BOGARA DE BOUMERDES

Importation de fichiers Eagle

Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN ben_mamoun@fsr.ac.ma Année universitaire 2011/2012

Logiciel de gestion pour restaurants et Bars

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Introduction au Langage de Programmation C

Rappels Entrées -Sorties

as Architecture des Systèmes d Information

Début de la procédure

Notice d'utilisation Site Internet administrable à distance

Menu Fédérateur. Procédure de réinstallation du logiciel EIC Menu Fédérateur d un ancien poste vers un nouveau poste

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Calcul Formel et Numérique, Partie I

Cours Informatique Master STEP

Cours de programmation avancée. Le langage C. Université du Luxembourg

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Excel avancé. Frédéric Gava (MCF)

Méthodes de programmation systèmes UE n NSY103. Notes de cours. Nombre d'heures : 55h (~ cours de 3 heures)

Algorithme. Table des matières

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

IV- Comment fonctionne un ordinateur?

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Création et Gestion des tables

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

Procédures d'utilisation de Maitre'D

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

MANUEL D UTILISATION PRO-FACE

wxwidgets dans un environnement Microsoft Windows

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

Transcription:

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 langage C++ en lui rajoutant notamment les notions orientées objet. Le C++ est un langage de programmation : il sert donc à écrire des applications informatiques. Il s'agit d'ailleurs d'un des langages de programmation les plus utilisés aujourd'hui. Chaque programme en C++ doit être écrit en respectant des règles d'écriture très strictes que nous étudierons petit à petit. Dans ce cours, nous allons d'abord apprendre les notions de base du langage c++. Nous allons commencer avec la notion d'interface graphique avec le logiciel Dev-Cpp sous Windows. Aspect logiciel Lorsque je lance Dev C++, il apparaître l'écran ci-contre. Pour créer un nouveau projet, il faut choisir dans le menu File puis New puis Project. 1

Il faut faire le choix "Empty project". Il faut taper le nom du projet dans le champs Name. On clique sur le bouton OK. Une fenêtre apparaître qui nous permet de créer le répertoire de notre projet. On clique sur save pour y enregistrer notre fichier de projet dont l'extension est.dev. 2

Maintenant on ajoute un nouveau fichier source, il faut choisir dans le menu File, puis New source file. Une fenêtre demande si on veut vraiment ajouter un nouveau fichier, on click sur yes. 3

On sauvegarde ce fichier en choisissant dans le menu File, puis Save. Une fenêtre demande le nom du fichier: ici on l'a appelé untitled1.cpp. On clique ensuite sur save. 4

On tape notre programme. Run. Pour exécuter le programme, il faut choisir dans le menu Exécute l instruction 5

La fenêtre suivante montre l exécution de notre programme. 6

Introduction à la programmation avec le langage c++ Un programme est une suite d instructions exécutées par un ordinateur, le langage c++ est l un des plus récents et des plus puissants langages actuellement disponibles. Dans ce cours nous allons compiler et exécuter chacun des exemples que nous allons donner. 1. programmes simples : le programme suivant contient les éléments principales d un programme C++. # include <iostream.h> // ce programme affiche l expression Salam alikom Cout<< Salam alikom ; return 0 ; 1. Le fichier iostream.h contient l information concernant l instruction cout. 2. Le symbole // indique que l expression est un commentaire. 3. L instruction main() est obligatoire pour tout programme en C++. Il marque pour le compilateur le début du programme. 4. les accolades et délimitent le corps de la fonctio main(). 5. la cinquième ligne permis d afficher le message Salam alikom à l écran à l aide de l instruction de sortie cout. Aussi la symbole << est nécessaire il s appelle opérateur de sortie. 6. l apostrophe double est nécessaire pour que le c++ comprendre que c est une expression a affiché. Le flux de sortie cout est le plus souvent utilisé avec l opérateur d insertion << sous la forme : Cout<<expression<<expression<< expression ; 2. Longueur d une chaine : C++ fournit une fonction spécialement prédéfinie, strlen() pour connaître la longeur d une chaine. Par exemple Salam a pour longueur 5. Ce programme affiche la longueur de plusieurs littéraux chaines. #include<string.h> // ce programme teste la fonction strlen() Cout<<strlen( salam, alikom ) ; Cout<<strlen( salam, alik ) ; Cout<<strlen( salam ) ; return 0 ; 13 11 5 7

Remarque : 1. la fonction strlen est déclarée dans le fichier string.h 2. le commentaire est déclarée par le symbole // expression, ou bien /*expression*/. 3. variables et leurs déclaration : une variable est un symbole qui réserve un emplacement mémoire dans l ordinateur. Type variable ; Variable = expression ; Son type indique au compilateur le nombre de valeurs que peut prendre cette variable, sur certains ordinateurs, le type int comporte tous les entiers de -32768 à 32767. Aussi les variables de même types peut être déclarée par : Type variable1, variable2,, variable n ; Ce programme comporte deux variables entières appelée n et m. // ce programme est un exemple simple pour illustrer l affectation Int n=9, m=7 ; Cout<<n<<m<<endl ; Return 0 ; Le programme affiche 97 puis le curseur retourne a la ligne a l aide de l instruction endl ( end ligne). 4. Types entiers Le C++ dispose de neuf types entiers : Char,signed char, unsigned char short int, int, long int unsigned short int, unsigned int, unsigned long int. Le programme de l exemple ci-dessous affiche les plages de valeur de tous les types entiers d une machine. On va utilisée les fonctions de la bibliothèque limits.h. #include<limits.h> Cout<< minimum char= <<CHAR_MIN<<endl ; Cout<< maximum char= <<CHAR_MAX<<endl ; Cout<< minimum short= <<SHRT_MIN<<endl ; Cout<< maximum short= <<SHRT_MAX<<endl ; Cout<< minimum int= <<INT_MIN<<endl ; Cout<< maximum int= <<INT_MAX<<endl ; Cout<< minimum long= <<LONG_MIN<<endl ; 8

Cout<< maximum long= <<LONG_MAX<<endl ; Cout<< minimum signed char= <<SCHAR_MIN<<endl ; Cout<< maximum signed char= <<SCHAR_MAX<<endl ; Cout<< maximum unsigned char= <<UCHAR_MAX<<endl ; Cout<< maximum unsigned short= <<USHRT_MAX<<endl ; Cout<< maximum unsigned = <<UINT_MAX<<endl ; Cout<< maximum unsigned long= <<ULONG_MAX<<endl ; Return 0 ; Minimum char=-128 Maximum char=127 Minimum short=-32768 Maximum short=32767 Minimum int=-2147483648 Maximum int=2147483647 Minimum long=-2147483648 Maximum long=2147483647 Minimum signed char=-128 Maximum signed char=127 Maximum unsigned char=255 Maximum unsigned short=65535 Maximum unsigned=4294967295 Maximum unsigned long=4294967295 5. opérateurs arithmétiques les opérateurs les plus simples sont ceux qui servent à l arithmétique : + addition - soustraction * multiplication / division % le reste // test des opérateurs arithmétiques Int m=97,n=14 ; Cout<<m<< + <<n<< = <<(m+n)<<endl ; Cout<<m<< - <<n<< = <<(m-n)<<endl ; Cout<< - <<n<< = <<(-n)<<endl ; Cout<<m<< * <<n<< = <<(m*n)<<endl ; Cout<<m<< / <<n<< = <<(m/n)<<endl ; Cout<<m<< % <<n<< = <<(m%n)<<endl ; Return 0 ; 97+14=111 9

97-14=83-14=-14 97*14=1358 97/14=6 97%14=13 6. opérateurs d incrémentation et décrémentation Ces opérateurs transforment une variable en une expression instruction qui permet d abréger une forme d affectation spéciale. L incrementation++ ajoute 1 au variable Décrémentation enleve 1 au variable Dans cette exemple ++m=m++ et n--=--n puisque il n y a pas d affectation dans un autre variable. // test des opérateurs ++ et -- Int m=9,n=7 ; Cout<< m= <<m<<,n= <<n<<endl ; ++m ; --n ; Cout<< m= <<m<<,n= <<n<<endl ; M++ ; n-- ; cout<< m= <<m<<,n= <<n<<endl ; return 0 ; M=9, n=7 M=10, n=6 M=11,n=5 Maintenant l exemple ci-dessous montre que ++m différente de m++ Le premier on fait l incrémentation d abord puis l affectation par contre la deuxième on fait l affectation puis l incrémentation // test des opérateurs ++ et -- Int m=9,n ; N=++m ; Cout<< m= <<m<<,n= <<n<<endl ; N=m++ ; Cout<< m= <<m<<,n= <<n<<endl ; 10

Cout<< m= <<m++<<endl ; Cout<< m= <<m<<endl ; Cout<< m= <<++m<<endl ; Return 0 ; L execution donne : M=9,n=9 M=10,n=9 M=10 M=11 M=12 Voici un autre exemple qui fait l incrémentation, décrémentation et l affectation en même temps. Int n=5,x ; X=++n*--n ; Cout<< n= <<n<<,x= <<x<<endl ; Cout<<++n<< <<++n<< <<++n<<endl ; N=5,x=25 8 7 6 7. Expressions d affectation composées La syntaxe générale de ces affectations combinées est : Variable op=expression Int n=7 ; N+=9 ; Cout<<n<<endl ; n-=5 ; cout<<n<<endl ; n*=2 ; cout<<n<<endl ; return 0 ; 16 11 22 L instruction n+=9 ajoute 9 à n L instruction n-=5 soustrait 5 de n Et l instruction n*2=2 multiplie n par 2. 11

8. Test d un dépassement de capacité Ce programme montre ce qui arrive l orsqu un objet de type short déborde #include<limits.h> //test de dépassement de capacité sur type short Short n=shrt-1 ; Cout<<n++<<endl ; Cout<<n++<<endl ; Cout<<n++<<endl ; Cout<<n++<<endl ; Return 0 ; 32766 32767-32768 -32767 Les valeurs rebouclent aux limites de 32767 à -32768. càd lorsqu on ajoute 1 à 32767 on obtient -32768, ce qui est de toute évidence, complètement faut. 9. Le type char le type char est un des types entiers, c est l abréviation de character, chaque fois qu une variable de type char est sortie, le système envoie automatiquement le caractère correspondant dans le flux de sortie càd son code ASCII. Cet exemple illustre le code ASCII d une variable de type char. Char c=64 ; Cout<<c++<< ; Cout<<c++<< ; Cout<<c++<< ; Cout<<c++<<endl ; C=96 ; 12

Cout<<c++<< ; Cout<<c++<< ; Cout<<c++<< ; Cout<<c++<<endl ; Return 0 ; @ A B C A b c Pour obtenir le code ASCII voir l exemple ce dessous. Char c= A ; Cout<<c++<< <<int(c)<<endl ; Cout<<c++<< <<int(c)<<endl ; Cout<<c++<< <<int(c)<<endl ; Return 0 ; A 65 B 66 C 67 L expression int(c) effectue une conversion de type pour donner le code ASCII. 9. l instruction d entrée Nous prenons les données dans le flux d entrée cin, ce nom provient de console input. 13

Int age ; Cout<< quel age avez-vous : ; Cin>>age ; Cout<< dans 10 ans vous en aurez <<age+10 ; L execution donne : Quel age avez-vous : 20 Dans 10 ans vous en aurez 30 10. L instruction if L instruction if permet l exécution conditionnelle, sa syntaxe est la suivante : If (condition) instruction ; Cet exemple test la divisibilité. Int n, m ; Cout<< entrez deux entiers ; Cin>>n>>m ; If (n%m==0) Cout<<n<< est divisible par <<m<<endl ; 11. L instruction if else Sa syntaxe est la suiuvante : If (condition) instruction1 else instruction2 14

Int n, m ; Cout<< entrez deux entiers ; Cin>>n>>m ; If (n%m==0) Cout<<n<< est divisible par <<m<<endl ; Else cout << n<< non divisible par <<m<<endl ; Remarque : Une condition comme(n%m==0) est une expression dont la valeur est interprétée comme étant soit faut soit vrai au sens booléen. Il ya six opérateurs relationnels : < est inférieur à <= est inférieur ou égal à == est égal à >est supérieur à >= est supérieur ou égal à!=est différent de Ce programme affiche le plus grand de trois entiers au clavier : Int n1,n2,n3 ; Cout<< entrez trois entiers : ; Cin>>n1>>n2>>n3 ; Int max=n1 ; 15

If(n2>max) max=n2 ; If(n3>max) max=n3 ; Cout<< le maximum est <<max<<endl ; Entrez trois entiers : 9 7 81 Le maximum est 81 12. conditions composées des conditions comme n%m et x>y peuvent etre combinées pour former des conditions composées. Trois opérateurs logiques sont utilisés à cet effet : &&(et), (ou) et! (non) Trois entiers, trouvez le plus grand Int a,b,c ; Cout<< entrez trois entiers : ; Cin>>a>>b>>c ; If(a>=b && a>=c) cout <<a<<endl ; If(b>=a && b>=c) cout <<b<<endl ; If(c>=a && c>=b) cout <<c<<endl ; Entrez trois entiers : 9 7 81 81 16

13. l instruction switch sa syntaxe est : switch (expression) case constante1 : liste instructions1 ; case constante2 : liste instructions2 ; : : case constanten : liste instructionsn ; default : liste instructions ; exemple : main() Int t ; Cout<< entrez la température ; Cin>>t ; Switch(t) Case 50 : cout << très chaud <<endl ; break ; Case 40 : cout << chaud <<endl ; break ; Case 20 : cout << bon <<endl ; break ; Default : cout<< erreur valeur non prévue ; 15. types énumérations Un type énumération est un type entier distinct défini par l utilisateur avec la syntaxe : Enum nomtypeliste enumérations ; Par exemple : enum monnaie franc, dollar, euro, livre ; Enum booleenvrai, faux ; 17

Enum couleur rouge, orange, jaune,vert,bleu,violet ; couleur x=bleu ; Cout<< x= <<x<<endl ; X=4 16.L instruction while L instruction while a la syntaxe suivante : While (condition) instruction ; Cela veut dire que tant que la condition vrai executer l instruction. Ce programme utilise une boucle while pour afficher des carrées. Int n ; Cout<< Entrez des entiers positifs ; Cin>>n ; While(n>0) Cout<<n<< au carrées vaut <<n*n ; Cin>>n ; Entrez des entiers positifs 18

2 2 au carrées vaut 4 5 5 au carrées vaut 25 La première valeur entrée pour n=2, la boucle while teste la condition (n>0). Puisque cette condition est vraie on exécute les deux instructions de la boucle et Le programme s arrête lorsque n=0 càd lorceque la condition est faux. 17. L instruction for La syntaxe de l instruction for est : For (initialisation ;condition de continuation ; màj) instruction Ce programme utilise une boucle for pour trouver la somme des carrés des entiers de 1 à n. Int n, som=0 ; Cout<< Entrer un entier positif : ; Cin>>n ; For(int i=1 ;i<=n ;i++) Som+=i*i ; Cout<< la somme des <<n<< premiers carrés est <<som<<endl ; L initialisation est int=1, la condition de continuationest i<=n, et la mise à jour est i++. 19