20 juillet 2018
#include <iostream> using namespace std; int main() { cout << "Hello, World!" << endl; // commentaire sur une ligne /* commentaire sur plusieurs lignes */ return 0; }
#include <iostream> using namespace std;
#include
est une commande préprocesseur qui permet de charger des bibliothèques ou library (fichiers en .h) et d'utiliser les fonctions qui y sont codées. <iostream>
pour "Standard Input / Output Streams Library".int main() { cout << "Hello, World!" << endl; // commentaire sur une ligne /* commentaire sur plusieurs lignes */ return 0; }
int
indique le type de la variable en sortie de la function main
.cout
et endl
sont deux fonctions de la librarie iostream
et permet d'écrire dans le flux de sortie (dans le terminal) la phrase "Hello, World!"// commentaire sur une ligne /* commentaire sur plusieurs lignes */
//
au début/*
et */
Code initial | racourci |
---|---|
x = x+1; |
x++; |
x = x-1; |
x--; |
x = x + y; |
x += y; |
x = x - y; |
x -= y; |
x = x * y; |
x *= y; |
x = x / y; |
x /= y; |
double sum(double a, double b) { return a+b; }
double
devant sum
correspond au type de la sortiesum
est le nom de la fonctiondouble a
, double b
sont les paramètres de la fonctions (déclarés comme double
);
à la fin des instructions (
source d'erreur de compilation )Type de variables | Signification |
---|---|
int | entiers |
float | réel simple précision |
double | réel double précision |
long double | réel précision étendu |
char | caractère |
bool | booléen |
void | vide |
Type de variables | Signification |
---|---|
int | entiers |
float | réel simple précision |
double | réel double précision |
long double | réel précision étendu |
char | caractère |
bool | booléen |
void | vide |
Type d'entiers | Taille | Signe | Autre nom |
---|---|---|---|
int | taille normale (de \(-32768\) à \(32767\)) | signed : positif ou négatif | signed |
short int | taille normale (de \(-32768\) à \(32767\)) | signed : positif ou négatif | signed short, short |
long int | grande taille (32 bit) (de \(-2,147,483,648\) à \(2,147,483,647\)) | signed : positif ou négatif | long, signed long |
long long int | grande taille (64 bit) (de \(-9,223,372,036,854,775,808\) à \(9,223,372,036,854,775,807\)) | signed : positif ou négatif | long long, signed long long |
Type d'entiers | Taille | Signe | Autre nom |
---|---|---|---|
unsigned int | taille normale (de \(0\) à \(65535\)) | unsigned : positif ou nul | unsigned |
unsigned short int | taille normale (de \(0\) à \(65535\)) | unsigned : positif ou nul | unsigned short |
unsigned long int | grande taille (32 bit) (de \(0\) à \(4,294,967,295\)) | signed : positif ou négatif | unsigned long |
unsigned long long int | grande taille (64 bit) (de \(0\) à \(18,446,744,073,709,551,615\)) | unsigned : positif ou nul | unsigned long long |
Type de variables | Signification |
---|---|
int | entiers |
float | réel simple précision |
double | réel double précision |
long double | réel précision étendu |
char | caractère |
bool | booléen |
void | vide |
Type de réels | Taille | Signe |
---|---|---|
float | taille normale (de \(-3.4.10^{38}\) à \(3.4.10^{38}\)) | signed : positif ou négatif |
double | grande taille (de \(-1.7.10^{308}\) à \(-1.7.10^{308}\)) | signed : positif ou négatif |
long double | grande taille (de \(-1.7.10^{308}\) à \(-1.7.10^{308}\)) | signed : positif ou négatif |
Type de variables | Signification |
---|---|
int | entiers |
float | réel simple précision |
double | réel double précision |
long double | réel précision étendu |
char | caractère |
bool | booléen |
Type de caractères | Taille | Signe |
---|---|---|
signed char | taille normale (de \(-128\) à \(127\)) | signed : positif ou négatif |
unsigned char | grande taille (de \(0\) à \(255\)) | unsigned : positif ou null |
unsigned char est utile lorsque l'on travaille avec des caratères non ASCII. Si ni signed ou unsigned n'est renseigné le choix est pris par le compileur.
Type de variables | Signification |
---|---|
int | entiers |
float | réel simple précision |
double | réel double précision |
long double | réel précision étendu |
char | caractère |
bool | booléen |
void | vide |
Attention :
Lors des opérations mathématiques, ne pas mélanger les types d'objet!
Par exemple si on définit int Q
comme étant le quotient de int A=1
et de double B=1.5
.
De quelle forme sera le résultat? 0, 1, 0.66?
Il faudra faire attention au typage des objets à manipuler…
Trois types de boucles peuvent être écrites en C++ :
Trois types de boucles peuvent être écrites en C++ :
int compteur = 0; // Définition de la variable compteur comme un entier int while (compteur < 10) { compteur++; }
La condition du while
se situe entre parenthèse. Les instructions à répéter sont entre accolades et
terminées d'un point virgule
Trois types de boucles peuvent être écrites en C++ :
int compteur = 0; do { compteur++; } while (compteur < 10);
Autre vision du while
Trois types de boucles peuvent être écrites en C++ :
for (int compteur = 0 ; compteur < 10 ; compteur++) { //intructions; }
Dans les conditions du for
, il y a 3 arguments séparés d'un point virgule :
Trois structures :
Trois structures :
if
if (conditions) execution;
exemple :
#include<iostream> using namespace std; int test(int a) { if (a > 10) cout << "a est plus grand que 10" << endl; return 0; }
Trois structures :
if ... else ...
if (conditions) instruction1; else instruction2;
exemple :
#include <iostream> using namespace std; int test(int a) { if (a > 10) cout << "a est plus grand que 10" << endl; else cout << "a est inférieur ou égal à 10" << endl; return 0; }
Trois structures :
switch
switch(expression) { case constante1: instructions1; case constante2: instructions2 ... default: instructions_default }
exemple :
#include <iostream> using namespace std; int test(int a) { switch(a) { case 1 : cout << "a vaut 1" << endl; break; case 2 : cout << "a vaut 2" << endl; break; default : cout << "a ne vaut ni 1, ni 2"<< endl; break; } return 0; }
Faire la somme d'une matrice et d'un scalaire est compliqué en C++ sans charger de librairie.
Il faudrait définir l'objet matrice et ensuite faire une somme terme à terme.