Présenter un programme - The IC Home Page is in:ic.epfl.ch

Transcription

Présenter un programme - The IC Home Page is in:ic.epfl.ch
Présenter un programme
1
Le langage C++ autorise une mise en page très libre:
Une instruction peut s’étendre sur un nombre quelconque de lignes.
Inversement, une même ligne peut comporter autant d’instructions que l’on souhaite.
Voici un exemple de programme accepté par le compilateur:
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double
x,
racine_x;
cout << "Donnez un nombre: " <<
endl
; cin >> x; if
(x < 0.0)cout<<
"Je ne sais pas calculer la racine de " <<x<<
endl
else {racine_x=
sqrt(x); cout
<< "La racine carree est " << racine_x << endl;}cout
<< "Au revoir" << endl; return 0;}
;
ce qui est évidemment difficile à lire pour un humain.
2
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez un nombre: " << endl;
cin >> x;
if (x < 0.0) {
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
3
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez un nombre: " << endl;
Les
pour main() doivent être
cin
>>accolades
x;
toutes les deux sur la première colonne
if (x < 0.0) {
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
4
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez un nombre: " << endl;
cin >> x;
mots-clés
if, for, while et l'accolade
if (x Les
< 0.0)
{
doivent être
la de " << x << endl;
coutfermante
<< "Je correspondante
ne sais pas calculer
la sur
racine
colonne
} elsemême
{
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
5
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez un nombre: " << endl;
cin >> x;
if (x < 0.0) {
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
fermante du if doit être sur la même colonne
racine_xl'accolade
= sqrt(x);
fermante
correspondant
cout << que
"La l'accolade
racine carree
estdu"else
<< racine_x
<< endl;
}
cout << "Au revoir" << endl;
return 0;
}
6
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez
nombre: appartenant
" << endl; à un même bloc
lesun
instructions
cin >> x;
doivent commencer sur la même bloc
if (x < 0.0) {
un pas
bloc calculer
est à l'intérieur
d'un autre,
ses
cout << "Je quand
ne sais
la racine
de "
<< x << endl;
instructions doivent commencer sur une
} else {
colonne décalée vers la droite
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
7
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
cout << "Donnez
un nombre:
" << endl;
utilisez
des accolades
même quand il n'y a
cin >> x;
qu'une seule instruction dans un bloc
if (x < 0.0) {
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
8
Règles d’écriture
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double x, racine_x;
mettez un espace après les virgules,
avant et après les opérateurs, et
avant et après le signe égal de l'affectation
cout << "Donnez un nombre: " << endl;
cin >> x;
if (x < 0.0) {
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir" << endl;
return 0;
}
9
Les commentaires
Le compilateur C++ autorise la présence de commentaires dans les
programmes. Il s’agit de textes explicatifs destinés aux lecteurs du programme.
Les commentaires ne changent pas la compilation ni l’exécution du
programme.
Commentaires sur plusieurs lignes: Placés entre /* et */.
Commentaires sur une seule ligne: Débutent par //, se terminent à la fin de
la ligne.
Exemple page suivante.
10
Exemple de programme commenté
#include <iostream>
#include <cmath>
using namespace std;
/*
*/
Utilisez des commentaires pour expliquer ce
que fait votre programme
Programme calculant la racine carree d’un nombre
entre par l’utilisateur.
int main()
{
double x, racine_x;
et les
points qui peuvent poser problème pour
cout << "Donnez un nombre: " <<
endl;
un relecteur humain
cin >> x;
if (x < 0.0) { // Si le nombre est negatif, on ne peut pas calculer sa racine
cout << "Je ne sais pas calculer la racine de " << x << endl;
} else {
racine_x = sqrt(x);
cout << "La racine carree est " << racine_x << endl;
}
cout << "Au revoir." << endl;
}
return 0;
11