SlideShare a Scribd company logo
1 of 55
Download to read offline
Cours C++ (2002)
semaine 1
jour 3
Cours semaine 1 jour 3 Cours C++ (2002) 2
Plan du jour
 Présentation de l’environnement de
développement Microsoft
 Utilisation des objets à travers un premier
programme
 Utilisation des librairies
Cours semaine 1 jour 3 Cours C++ (2002) 3
Microsoft Visual C++
 L’environnement de développement
Microsoft fournit un environnement
complet pour
 La rédaction des programmes
 Leur vérification syntaxique
 Leur compilation
 Leur débogage
Cours semaine 1 jour 3 Cours C++ (2002) 4
Microsoft Visual C++ (2)
Cours semaine 1 jour 3 Cours C++ (2002) 5
Microsoft Visual C++ (3)
File > New
Cours semaine 1 jour 3 Cours C++ (2002) 6
Microsoft Visual C++ (4)
Cours semaine 1 jour 3 Cours C++ (2002) 7
Microsoft Visual C++ (5)
Cours semaine 1 jour 3 Cours C++ (2002) 8
Microsoft Visual C++ (6)
Cours semaine 1 jour 3 Cours C++ (2002) 9
Microsoft Visual C++ (7)
Cours semaine 1 jour 3 Cours C++ (2002) 10
Microsoft Visual C++ (8)
Cours semaine 1 jour 3 Cours C++ (2002) 11
Microsoft Visual C++ (9)
Cours semaine 1 jour 3 Cours C++ (2002) 12
Microsoft Visual C++ (10)
Cours semaine 1 jour 3 Cours C++ (2002) 13
Microsoft Visual C++ (11)
Cours semaine 1 jour 3 Cours C++ (2002) 14
Codons…
#include <iostream> // Declarations des streams (I/O)
using namespace std;
void main()
{
cout << "Hello, World!" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 15
Codons… (2)
#include <iostream>
void main()
{
std::cout << "Hello, World!" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 16
Codons… (3)
#include <iostream>
using namespace std;
void main()
{
cout << "Cette chaine de caracteres est "
"bien longuenmais il est tout de "
"meme possible de la traitern";
}
Cours semaine 1 jour 3 Cours C++ (2002) 17
Codons… (4)
#include <iostream>
using namespace std;
void main() {
int num;
cout << "Saisissez un nombre entier : ";
cin >> num;
cout << "valeur en octal = 0"
<< oct << num << endl;
cout << "valeur en hexa = 0x"
<< hex << num << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 18
Codons… (5)
#include <string>
#include <iostream>
using namespace std;
void main() {
string s1, s2;
string s3 = "Hello, World.";
string s4("I am");
s2 = "Today";
s1 = s3 + " " + s4;
s1 += " here ";
cout << s1 + s2 + "!" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 19
Codons… (6)
#include <iostream>
using namespace std;
void main() {
int i;
cout << "Entrez un nombre et Enter'" << endl;
cin >> i;
if( i > 5 )
cout << "Plus grand que 5" << endl;
else
if( i < 5 )
cout << "Moins grand que 5" << endl;
else
cout << "Egal à 5" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 20
Codons… (7)
#include <iostream>
using namespace std;
void main() {
int i;
cout << "Entrez un nombre et Enter'" << endl;
cin >> i;
if(i < 10)
if(i > 5)
cout << "5 < i < 10" << endl;
else
cout << "i <= 5" << endl;
else
cout << "i >= 10" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 21
Codons… (8)
#include <iostream>
using namespace std;
void main()
{
int secret = 15;
int tentative = 0;
while( tentative != secret ) {
cout << "Devinez le chiffre mystere : ";
cin >> tentative;
}
cout << secret << " est le bon choix !" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 22
Codons… (9)
#include <iostream>
using namespace std;
void main()
{
int secret = 15;
int tentative; // pas d’initialisation
do {
cout << "Devinez le chiffre mystere : ";
cin >> tentative;
}
while( tentative != secret );
cout << secret << " est le bon choix !" << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 23
Codons… (10)
#include <iostream>
using namespace std;
void main()
{
for( int i = 0; i < 128; i = i + 1 )
if ( i != 26 ) // Clear screen
cout << " valeur : " << i
<< " - caractere : "
<< char( i )
<< endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 24
Codons… (11)
#include <iostream>
using namespace std;
void main() {
int val = 0;
for( int i = 1; i < 10; i++ ) {
for( int j = 1; j < 10; j += 1 ) {
val = i * j;
cout << val << endl;
if( val > 8 )
break;
}
}
cout << val << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 25
Codons… (12)
#include <iostream>
using namespace std;
void main() {
int val = 0;
for( int i = 1; i < 10; i++ ) {
for( int j = 1; j < 10; j += 1 ) {
val = i * j;
cout << val << endl;
if( val > 8 )
goto bottom;
}
}
bottom:
cout << val << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 26
Codons… (13)
#include <iostream>
using namespace std;
void main() {
int i = 0;
int j = 0;
cout << ++i << endl;
cout << j++ << endl;
cout << --i << endl;
cout << j-- << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 27
Codons… (14)
#include <iostream>
using namespace std;
void main() {
// déclaration des variables
// affichage
}
Cours semaine 1 jour 3 Cours C++ (2002) 28
Codons… (15)
char c;
unsigned char cu;
int i;
unsigned int iu;
short int is;
short iis;
unsigned short int isu;
unsigned short iisu;
long int il;
long iil;
unsigned long int ilu;
unsigned long iilu;
float f;
double d;
long double ld;
Cours semaine 1 jour 3 Cours C++ (2002) 29
Codons… (16)
cout << "n char= " << sizeof( c )
<< "n unsigned char = " << sizeof( cu )
<< "n int = " << sizeof( i )
<< "n unsigned int = " << sizeof( iu )
<< "n short = " << sizeof( is )
<< "n unsigned short = " << sizeof( isu )
<< "n long = " << sizeof( il )
<< "n unsigned long = " << sizeof( ilu )
<< "n float = " << sizeof( f )
<< "n double = " << sizeof( d )
<< "n long double = " << sizeof( ld )
<< endl;
Cours semaine 1 jour 3 Cours C++ (2002) 30
Codons… (17)
#include <iostream>
using namespace std;
int a, b, c, d;
void f( int x ) {
cout << "x = " << x << endl;
}
…
Cours semaine 1 jour 3 Cours C++ (2002) 31
Codons… (18)
…
void main() {
int i, j, k;
cout << "f() : " << (long)&f << endl;
cout << "a : " << (long)&a << endl;
cout << "b : " << (long)&b << endl;
cout << "c : " << (long)&c << endl;
cout << "d : " << (long)&d << endl;
cout << "i : " << (long)&i << endl;
cout << "j : " << (long)&j << endl;
cout << "k : " << (long)&k << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 32
Codons… (19)
#include <iostream>
using namespace std;
void valued( int a ) {
cout << "a = " << a << endl;
a = 5;
cout << "a = " << a << endl;
}
void main() {
int x = 10;
cout << "x = " << x << endl;
valued( x );
cout << "x = " << x << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 33
Codons… (20)
#include <iostream>
using namespace std;
void refed( int* p ) {
cout << "p = " << p << endl;
cout << "*p = " << *p << endl;
*p = 5;
cout << "p = " << p << endl;
}
void main() {
int x = 10;
cout << "x = " << x << endl;
cout << "&x = " << &x << endl;
refed( &x );
cout << "x = " << x << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 34
Codons… (21)
#include <iostream>
using namespace std;
void main() {
void* vp;
char c;
int i = 10;
float f;
double d;
vp = &c;
vp = &f;
vp = &d;
vp = &i;
*((int*) vp) = 3;
cout << "i = " << i << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 35
Codons… (22)
#include <iostream>
using namespace std;
int globe;
void func();
void main()
{
globe = 12;
cout << globe << endl;
func();
cout << globe << endl;
}
extern int globe;
void func()
{
globe = 47;
}
Cours semaine 1 jour 3 Cours C++ (2002) 36
Codons… (23)
#include <iostream>
using namespace std;
extern int i;
extern void func();
void main() {
i = 0;
func();
}
int i;
void func() {
i++;
cout << i;
}
Cours semaine 1 jour 3 Cours C++ (2002) 37
Codons… (24)
#include <iostream>
using namespace std;
void fonc() {
static int i = 0;
cout << "i = " << ++i << endl;
}
void main() {
for( int x = 0; x < 10; x++ )
fonc();
}
Cours semaine 1 jour 3 Cours C++ (2002) 38
Codons… (25)
struct MaStructure {
char c;
int i;
float f;
double d;
};
void main() {
struct MaStructure s1;
s1.c = 'a';
s1.i = 1;
s1.f = 3.14;
s1.d = 2.718;
}
Cours semaine 1 jour 3 Cours C++ (2002) 39
Codons… (26)
typedef struct {
char c;
int i;
float f;
double d;
} MaStructure;
void main() {
MaStructure s1;
s1.c = 'a';
s1.i = 1;
s1.f = 3.14;
s1.d = 2.718;
}
Cours semaine 1 jour 3 Cours C++ (2002) 40
Codons… (27)
typedef struct { … } MaStructure;
void main() {
MaStructure s1, s2;
MaStructure* sp = &s1;
sp->c = 'a';
sp->i = 1;
sp->f = 3.14;
sp->d = 2.718;
sp = &s2;
sp->c = ‘b';
sp->i = 2;
sp->f = 4.13;
sp->d = 8.172;
}
Cours semaine 1 jour 3 Cours C++ (2002) 41
Codons… (28)
#include <iostream>
using namespace std;
union Unis {
char c;
float f;
};
void main() {
cout << "sizeof( Unis ) = " << sizeof( Unis ) << endl;
Unis x;
x.c = 'c';
cout << x.c << endl;
x.f = 3.14159;
cout << x.f << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 42
Codons… (29)
#include <iostream>
using namespace std;
typedef struct {
int i, j, k;
} PointTroisD;
void main() {
PointTroisD p[ 10 ];
for( int i = 0; i < 10; i++ ) {
p[ i ].i = i + 1; // deux i différents !
p[ i ].j = i + 2;
p[ i ].k = i + 3;
cout << p[ i ].i << endl;
}
}
Cours semaine 1 jour 3 Cours C++ (2002) 43
Codons… (30)
#include <iostream>
using namespace std;
void main()
{
int a[ 10 ];
cout << "sizeof( int ) = "<< sizeof( int ) << endl;
for( int i = 0; i < 10; i++ )
cout << "&a[" << i << "] = "
<< (long) &a[ i ] << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 44
Codons… (31)
#include <iostream>
using namespace std;
void main( int argc, char* argv[ ] )
{
cout << "argc = " << argc << endl;
for( int i = 0; i < argc; i++ )
cout << "argv[ " << i << " ] = "
<< argv[ i ] << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 45
Codons… (32)
#include <string>
#include <fstream>
using namespace std;
void main()
{
ifstream in( "test-in.txt" );
ofstream out( "test-in.txt" );
string s;
while( getline( in, s ) )
out << s << "n"; // pourquoi un n ?
}
Cours semaine 1 jour 3 Cours C++ (2002) 46
Codons… (33)
#include <string>
#include <iostream>
#include <fstream>
using namespace std;
void main()
{
ifstream in( "test-in.txt" );
string s, line;
while( getline( in, line ) )
s += line + "n";
cout << s;
}
Cours semaine 1 jour 3 Cours C++ (2002) 47
Codons… (34)
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
void main() {
vector<string> v;
ifstream in( "test-in.txt" );
string line;
while( getline( in, line ) )
v.push_back( line );
for( int i = 0; i < v.size(); i++ )
cout << i << ": " << v[ i ] << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 48
Codons… (35)
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
void main() {
vector<string> v;
ifstream in( "test-in.txt" );
string line;
while( in >> line ) // quel impact ?
v.push_back( line );
for( int i = 0; i < v.size(); i++ )
cout << v[ i ] << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 49
Codons… (36)
#include <iostream>
#include <vector>
using namespace std;
void main() {
vector<int> v;
for( int i = 0; i < 10; i++ )
v.push_back( i );
for( int i = 0; i < v.size(); i++ )
cout << v[ i ] << ", ";
cout << endl;
for( int i = 0; i < v.size(); i++ )
v [ i ] = v [ i ] * 10; // autre écriture ?
for( int i = 0; i < v.size(); i++ )
cout << v [ i ] << ", ";
cout << endl;
}
Cours semaine 1 jour 3 Cours C++ (2002) 50
Codons… (37)
#include <cassert>
using namespace std;
void main() {
int i = 100;
assert( i != 100 );
}
Cours semaine 1 jour 3 Cours C++ (2002) 51
Exercices
 Exercice #1
 Lire un fichier contenant des lignes de
caractères
 Imprimer les lignes à l’écran dans l’ordre
inverse de leur apparition dans le fichier texte
(imprimer d’abord la dernière, la première ligne
du fichier texte étant imprimée en dernier à
l’écran)
Cours semaine 1 jour 3 Cours C++ (2002) 52
Exercices (2)
 Exercice #2
 À partir de la taille du côté d’un carré saisie au
clavier, calculer et imprimer son périmètre et sa
surface
 Modifier le programme pour calculer le
périmètre et la surface d’un cercle
 Modifier le programme pour passer le
paramètre à l’appel de la fonction ou, s’il n’est
pas fourni, le demander pendant l’exécution
Cours semaine 1 jour 3 Cours C++ (2002) 53
Exercices (3)
 Exercice #3
 Créer trois vecteurs de 10 réels
 Remplir les deux premiers avec des valeurs de
votre choix mais différentes les unes des autres
 Utiliser le troisième vecteur pour stocker la
somme des éléments correspondants dans les
deux autres vecteurs
 Afficher le tout
Cours semaine 1 jour 3 Cours C++ (2002) 54
Exercices (4)
 Exercice #4
 Faites un programme qui permet la saisie d’un
nombre
 À l’aide d’un switch, vérifier que ce nombre
n’est pas une des deux valeurs particulières que
vous aurez choisies
Cours semaine 1 jour 3 Cours C++ (2002) 55
Questions / Remarques

More Related Content

What's hot

Latihan individu
Latihan individuLatihan individu
Latihan individu1300018078
 
Clang-tidy: путешествие внутрь AST C++
Clang-tidy: путешествие внутрь AST C++Clang-tidy: путешествие внутрь AST C++
Clang-tidy: путешествие внутрь AST C++corehard_by
 
Más allá del honor
Más allá del honorMás allá del honor
Más allá del honorEveris
 
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)Jeffri ferdinand panjaitan 17.01.132 (ti4 c)
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)jeffriferdinand
 
exercise of basic computer programming.docx
exercise of basic computer programming.docxexercise of basic computer programming.docx
exercise of basic computer programming.docxmiftah88
 
3 matrix in c++ programming aramse
3  matrix in c++ programming aramse3  matrix in c++ programming aramse
3 matrix in c++ programming aramseAram SE
 
Correcciondellapruebademfsi 130117191639-phpapp01
Correcciondellapruebademfsi 130117191639-phpapp01Correcciondellapruebademfsi 130117191639-phpapp01
Correcciondellapruebademfsi 130117191639-phpapp01Diego Velasco
 
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصري
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصريملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصري
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصريOnline
 
Bhanu Pratap Singh Shekhawat, BCA Third Year
Bhanu Pratap Singh Shekhawat, BCA Third YearBhanu Pratap Singh Shekhawat, BCA Third Year
Bhanu Pratap Singh Shekhawat, BCA Third YearDezyneecole
 
correcion de la prueba
correcion de la pruebacorrecion de la prueba
correcion de la pruebaDiego Velasco
 

What's hot (15)

Latihan individu
Latihan individuLatihan individu
Latihan individu
 
Lab2 sdmp
Lab2 sdmpLab2 sdmp
Lab2 sdmp
 
Programs
ProgramsPrograms
Programs
 
Programs
ProgramsPrograms
Programs
 
Clang-tidy: путешествие внутрь AST C++
Clang-tidy: путешествие внутрь AST C++Clang-tidy: путешествие внутрь AST C++
Clang-tidy: путешествие внутрь AST C++
 
Más allá del honor
Más allá del honorMás allá del honor
Más allá del honor
 
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)Jeffri ferdinand panjaitan 17.01.132 (ti4 c)
Jeffri ferdinand panjaitan 17.01.132 (ti4 c)
 
Oop lect 10
Oop lect   10Oop lect   10
Oop lect 10
 
exercise of basic computer programming.docx
exercise of basic computer programming.docxexercise of basic computer programming.docx
exercise of basic computer programming.docx
 
3 matrix in c++ programming aramse
3  matrix in c++ programming aramse3  matrix in c++ programming aramse
3 matrix in c++ programming aramse
 
Juego del gato
Juego del gatoJuego del gato
Juego del gato
 
Correcciondellapruebademfsi 130117191639-phpapp01
Correcciondellapruebademfsi 130117191639-phpapp01Correcciondellapruebademfsi 130117191639-phpapp01
Correcciondellapruebademfsi 130117191639-phpapp01
 
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصري
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصريملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصري
ملزمة الرياضيات لشيخ الرياضيات - كامل موسى الناصري
 
Bhanu Pratap Singh Shekhawat, BCA Third Year
Bhanu Pratap Singh Shekhawat, BCA Third YearBhanu Pratap Singh Shekhawat, BCA Third Year
Bhanu Pratap Singh Shekhawat, BCA Third Year
 
correcion de la prueba
correcion de la pruebacorrecion de la prueba
correcion de la prueba
 

More from Laurent BUNIET

Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 3.4
Cours de C++, en français, 2002 - Cours 3.4Cours de C++, en français, 2002 - Cours 3.4
Cours de C++, en français, 2002 - Cours 3.4Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 3.2
Cours de C++, en français, 2002 - Cours 3.2Cours de C++, en français, 2002 - Cours 3.2
Cours de C++, en français, 2002 - Cours 3.2Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 2.5
Cours de C++, en français, 2002 - Cours 2.5Cours de C++, en français, 2002 - Cours 2.5
Cours de C++, en français, 2002 - Cours 2.5Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 2.4
Cours de C++, en français, 2002 - Cours 2.4Cours de C++, en français, 2002 - Cours 2.4
Cours de C++, en français, 2002 - Cours 2.4Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 2.3
Cours de C++, en français, 2002 - Cours 2.3Cours de C++, en français, 2002 - Cours 2.3
Cours de C++, en français, 2002 - Cours 2.3Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 2.2
Cours de C++, en français, 2002 - Cours 2.2Cours de C++, en français, 2002 - Cours 2.2
Cours de C++, en français, 2002 - Cours 2.2Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 1.5
Cours de C++, en français, 2002 - Cours 1.5Cours de C++, en français, 2002 - Cours 1.5
Cours de C++, en français, 2002 - Cours 1.5Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 1.4
Cours de C++, en français, 2002 - Cours 1.4Cours de C++, en français, 2002 - Cours 1.4
Cours de C++, en français, 2002 - Cours 1.4Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 1.2
Cours de C++, en français, 2002 - Cours 1.2Cours de C++, en français, 2002 - Cours 1.2
Cours de C++, en français, 2002 - Cours 1.2Laurent BUNIET
 
Cours de C++, en français, 2002 - Cours 1.1
Cours de C++, en français, 2002 - Cours 1.1Cours de C++, en français, 2002 - Cours 1.1
Cours de C++, en français, 2002 - Cours 1.1Laurent BUNIET
 
Cours de C++, en français, 2002 - Plan
Cours de C++, en français, 2002 - PlanCours de C++, en français, 2002 - Plan
Cours de C++, en français, 2002 - PlanLaurent BUNIET
 

More from Laurent BUNIET (15)

Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5
 
Cours de C++, en français, 2002 - Cours 3.4
Cours de C++, en français, 2002 - Cours 3.4Cours de C++, en français, 2002 - Cours 3.4
Cours de C++, en français, 2002 - Cours 3.4
 
Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3
 
Cours de C++, en français, 2002 - Cours 3.2
Cours de C++, en français, 2002 - Cours 3.2Cours de C++, en français, 2002 - Cours 3.2
Cours de C++, en français, 2002 - Cours 3.2
 
Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1
 
Cours de C++, en français, 2002 - Cours 2.5
Cours de C++, en français, 2002 - Cours 2.5Cours de C++, en français, 2002 - Cours 2.5
Cours de C++, en français, 2002 - Cours 2.5
 
Cours de C++, en français, 2002 - Cours 2.4
Cours de C++, en français, 2002 - Cours 2.4Cours de C++, en français, 2002 - Cours 2.4
Cours de C++, en français, 2002 - Cours 2.4
 
Cours de C++, en français, 2002 - Cours 2.3
Cours de C++, en français, 2002 - Cours 2.3Cours de C++, en français, 2002 - Cours 2.3
Cours de C++, en français, 2002 - Cours 2.3
 
Cours de C++, en français, 2002 - Cours 2.2
Cours de C++, en français, 2002 - Cours 2.2Cours de C++, en français, 2002 - Cours 2.2
Cours de C++, en français, 2002 - Cours 2.2
 
Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1Cours de C++, en français, 2002 - Cours 2.1
Cours de C++, en français, 2002 - Cours 2.1
 
Cours de C++, en français, 2002 - Cours 1.5
Cours de C++, en français, 2002 - Cours 1.5Cours de C++, en français, 2002 - Cours 1.5
Cours de C++, en français, 2002 - Cours 1.5
 
Cours de C++, en français, 2002 - Cours 1.4
Cours de C++, en français, 2002 - Cours 1.4Cours de C++, en français, 2002 - Cours 1.4
Cours de C++, en français, 2002 - Cours 1.4
 
Cours de C++, en français, 2002 - Cours 1.2
Cours de C++, en français, 2002 - Cours 1.2Cours de C++, en français, 2002 - Cours 1.2
Cours de C++, en français, 2002 - Cours 1.2
 
Cours de C++, en français, 2002 - Cours 1.1
Cours de C++, en français, 2002 - Cours 1.1Cours de C++, en français, 2002 - Cours 1.1
Cours de C++, en français, 2002 - Cours 1.1
 
Cours de C++, en français, 2002 - Plan
Cours de C++, en français, 2002 - PlanCours de C++, en français, 2002 - Plan
Cours de C++, en français, 2002 - Plan
 

Cours de C++, en français, 2002 - Cours 1.3

  • 2. Cours semaine 1 jour 3 Cours C++ (2002) 2 Plan du jour  Présentation de l’environnement de développement Microsoft  Utilisation des objets à travers un premier programme  Utilisation des librairies
  • 3. Cours semaine 1 jour 3 Cours C++ (2002) 3 Microsoft Visual C++  L’environnement de développement Microsoft fournit un environnement complet pour  La rédaction des programmes  Leur vérification syntaxique  Leur compilation  Leur débogage
  • 4. Cours semaine 1 jour 3 Cours C++ (2002) 4 Microsoft Visual C++ (2)
  • 5. Cours semaine 1 jour 3 Cours C++ (2002) 5 Microsoft Visual C++ (3) File > New
  • 6. Cours semaine 1 jour 3 Cours C++ (2002) 6 Microsoft Visual C++ (4)
  • 7. Cours semaine 1 jour 3 Cours C++ (2002) 7 Microsoft Visual C++ (5)
  • 8. Cours semaine 1 jour 3 Cours C++ (2002) 8 Microsoft Visual C++ (6)
  • 9. Cours semaine 1 jour 3 Cours C++ (2002) 9 Microsoft Visual C++ (7)
  • 10. Cours semaine 1 jour 3 Cours C++ (2002) 10 Microsoft Visual C++ (8)
  • 11. Cours semaine 1 jour 3 Cours C++ (2002) 11 Microsoft Visual C++ (9)
  • 12. Cours semaine 1 jour 3 Cours C++ (2002) 12 Microsoft Visual C++ (10)
  • 13. Cours semaine 1 jour 3 Cours C++ (2002) 13 Microsoft Visual C++ (11)
  • 14. Cours semaine 1 jour 3 Cours C++ (2002) 14 Codons… #include <iostream> // Declarations des streams (I/O) using namespace std; void main() { cout << "Hello, World!" << endl; }
  • 15. Cours semaine 1 jour 3 Cours C++ (2002) 15 Codons… (2) #include <iostream> void main() { std::cout << "Hello, World!" << endl; }
  • 16. Cours semaine 1 jour 3 Cours C++ (2002) 16 Codons… (3) #include <iostream> using namespace std; void main() { cout << "Cette chaine de caracteres est " "bien longuenmais il est tout de " "meme possible de la traitern"; }
  • 17. Cours semaine 1 jour 3 Cours C++ (2002) 17 Codons… (4) #include <iostream> using namespace std; void main() { int num; cout << "Saisissez un nombre entier : "; cin >> num; cout << "valeur en octal = 0" << oct << num << endl; cout << "valeur en hexa = 0x" << hex << num << endl; }
  • 18. Cours semaine 1 jour 3 Cours C++ (2002) 18 Codons… (5) #include <string> #include <iostream> using namespace std; void main() { string s1, s2; string s3 = "Hello, World."; string s4("I am"); s2 = "Today"; s1 = s3 + " " + s4; s1 += " here "; cout << s1 + s2 + "!" << endl; }
  • 19. Cours semaine 1 jour 3 Cours C++ (2002) 19 Codons… (6) #include <iostream> using namespace std; void main() { int i; cout << "Entrez un nombre et Enter'" << endl; cin >> i; if( i > 5 ) cout << "Plus grand que 5" << endl; else if( i < 5 ) cout << "Moins grand que 5" << endl; else cout << "Egal à 5" << endl; }
  • 20. Cours semaine 1 jour 3 Cours C++ (2002) 20 Codons… (7) #include <iostream> using namespace std; void main() { int i; cout << "Entrez un nombre et Enter'" << endl; cin >> i; if(i < 10) if(i > 5) cout << "5 < i < 10" << endl; else cout << "i <= 5" << endl; else cout << "i >= 10" << endl; }
  • 21. Cours semaine 1 jour 3 Cours C++ (2002) 21 Codons… (8) #include <iostream> using namespace std; void main() { int secret = 15; int tentative = 0; while( tentative != secret ) { cout << "Devinez le chiffre mystere : "; cin >> tentative; } cout << secret << " est le bon choix !" << endl; }
  • 22. Cours semaine 1 jour 3 Cours C++ (2002) 22 Codons… (9) #include <iostream> using namespace std; void main() { int secret = 15; int tentative; // pas d’initialisation do { cout << "Devinez le chiffre mystere : "; cin >> tentative; } while( tentative != secret ); cout << secret << " est le bon choix !" << endl; }
  • 23. Cours semaine 1 jour 3 Cours C++ (2002) 23 Codons… (10) #include <iostream> using namespace std; void main() { for( int i = 0; i < 128; i = i + 1 ) if ( i != 26 ) // Clear screen cout << " valeur : " << i << " - caractere : " << char( i ) << endl; }
  • 24. Cours semaine 1 jour 3 Cours C++ (2002) 24 Codons… (11) #include <iostream> using namespace std; void main() { int val = 0; for( int i = 1; i < 10; i++ ) { for( int j = 1; j < 10; j += 1 ) { val = i * j; cout << val << endl; if( val > 8 ) break; } } cout << val << endl; }
  • 25. Cours semaine 1 jour 3 Cours C++ (2002) 25 Codons… (12) #include <iostream> using namespace std; void main() { int val = 0; for( int i = 1; i < 10; i++ ) { for( int j = 1; j < 10; j += 1 ) { val = i * j; cout << val << endl; if( val > 8 ) goto bottom; } } bottom: cout << val << endl; }
  • 26. Cours semaine 1 jour 3 Cours C++ (2002) 26 Codons… (13) #include <iostream> using namespace std; void main() { int i = 0; int j = 0; cout << ++i << endl; cout << j++ << endl; cout << --i << endl; cout << j-- << endl; }
  • 27. Cours semaine 1 jour 3 Cours C++ (2002) 27 Codons… (14) #include <iostream> using namespace std; void main() { // déclaration des variables // affichage }
  • 28. Cours semaine 1 jour 3 Cours C++ (2002) 28 Codons… (15) char c; unsigned char cu; int i; unsigned int iu; short int is; short iis; unsigned short int isu; unsigned short iisu; long int il; long iil; unsigned long int ilu; unsigned long iilu; float f; double d; long double ld;
  • 29. Cours semaine 1 jour 3 Cours C++ (2002) 29 Codons… (16) cout << "n char= " << sizeof( c ) << "n unsigned char = " << sizeof( cu ) << "n int = " << sizeof( i ) << "n unsigned int = " << sizeof( iu ) << "n short = " << sizeof( is ) << "n unsigned short = " << sizeof( isu ) << "n long = " << sizeof( il ) << "n unsigned long = " << sizeof( ilu ) << "n float = " << sizeof( f ) << "n double = " << sizeof( d ) << "n long double = " << sizeof( ld ) << endl;
  • 30. Cours semaine 1 jour 3 Cours C++ (2002) 30 Codons… (17) #include <iostream> using namespace std; int a, b, c, d; void f( int x ) { cout << "x = " << x << endl; } …
  • 31. Cours semaine 1 jour 3 Cours C++ (2002) 31 Codons… (18) … void main() { int i, j, k; cout << "f() : " << (long)&f << endl; cout << "a : " << (long)&a << endl; cout << "b : " << (long)&b << endl; cout << "c : " << (long)&c << endl; cout << "d : " << (long)&d << endl; cout << "i : " << (long)&i << endl; cout << "j : " << (long)&j << endl; cout << "k : " << (long)&k << endl; }
  • 32. Cours semaine 1 jour 3 Cours C++ (2002) 32 Codons… (19) #include <iostream> using namespace std; void valued( int a ) { cout << "a = " << a << endl; a = 5; cout << "a = " << a << endl; } void main() { int x = 10; cout << "x = " << x << endl; valued( x ); cout << "x = " << x << endl; }
  • 33. Cours semaine 1 jour 3 Cours C++ (2002) 33 Codons… (20) #include <iostream> using namespace std; void refed( int* p ) { cout << "p = " << p << endl; cout << "*p = " << *p << endl; *p = 5; cout << "p = " << p << endl; } void main() { int x = 10; cout << "x = " << x << endl; cout << "&x = " << &x << endl; refed( &x ); cout << "x = " << x << endl; }
  • 34. Cours semaine 1 jour 3 Cours C++ (2002) 34 Codons… (21) #include <iostream> using namespace std; void main() { void* vp; char c; int i = 10; float f; double d; vp = &c; vp = &f; vp = &d; vp = &i; *((int*) vp) = 3; cout << "i = " << i << endl; }
  • 35. Cours semaine 1 jour 3 Cours C++ (2002) 35 Codons… (22) #include <iostream> using namespace std; int globe; void func(); void main() { globe = 12; cout << globe << endl; func(); cout << globe << endl; } extern int globe; void func() { globe = 47; }
  • 36. Cours semaine 1 jour 3 Cours C++ (2002) 36 Codons… (23) #include <iostream> using namespace std; extern int i; extern void func(); void main() { i = 0; func(); } int i; void func() { i++; cout << i; }
  • 37. Cours semaine 1 jour 3 Cours C++ (2002) 37 Codons… (24) #include <iostream> using namespace std; void fonc() { static int i = 0; cout << "i = " << ++i << endl; } void main() { for( int x = 0; x < 10; x++ ) fonc(); }
  • 38. Cours semaine 1 jour 3 Cours C++ (2002) 38 Codons… (25) struct MaStructure { char c; int i; float f; double d; }; void main() { struct MaStructure s1; s1.c = 'a'; s1.i = 1; s1.f = 3.14; s1.d = 2.718; }
  • 39. Cours semaine 1 jour 3 Cours C++ (2002) 39 Codons… (26) typedef struct { char c; int i; float f; double d; } MaStructure; void main() { MaStructure s1; s1.c = 'a'; s1.i = 1; s1.f = 3.14; s1.d = 2.718; }
  • 40. Cours semaine 1 jour 3 Cours C++ (2002) 40 Codons… (27) typedef struct { … } MaStructure; void main() { MaStructure s1, s2; MaStructure* sp = &s1; sp->c = 'a'; sp->i = 1; sp->f = 3.14; sp->d = 2.718; sp = &s2; sp->c = ‘b'; sp->i = 2; sp->f = 4.13; sp->d = 8.172; }
  • 41. Cours semaine 1 jour 3 Cours C++ (2002) 41 Codons… (28) #include <iostream> using namespace std; union Unis { char c; float f; }; void main() { cout << "sizeof( Unis ) = " << sizeof( Unis ) << endl; Unis x; x.c = 'c'; cout << x.c << endl; x.f = 3.14159; cout << x.f << endl; }
  • 42. Cours semaine 1 jour 3 Cours C++ (2002) 42 Codons… (29) #include <iostream> using namespace std; typedef struct { int i, j, k; } PointTroisD; void main() { PointTroisD p[ 10 ]; for( int i = 0; i < 10; i++ ) { p[ i ].i = i + 1; // deux i différents ! p[ i ].j = i + 2; p[ i ].k = i + 3; cout << p[ i ].i << endl; } }
  • 43. Cours semaine 1 jour 3 Cours C++ (2002) 43 Codons… (30) #include <iostream> using namespace std; void main() { int a[ 10 ]; cout << "sizeof( int ) = "<< sizeof( int ) << endl; for( int i = 0; i < 10; i++ ) cout << "&a[" << i << "] = " << (long) &a[ i ] << endl; }
  • 44. Cours semaine 1 jour 3 Cours C++ (2002) 44 Codons… (31) #include <iostream> using namespace std; void main( int argc, char* argv[ ] ) { cout << "argc = " << argc << endl; for( int i = 0; i < argc; i++ ) cout << "argv[ " << i << " ] = " << argv[ i ] << endl; }
  • 45. Cours semaine 1 jour 3 Cours C++ (2002) 45 Codons… (32) #include <string> #include <fstream> using namespace std; void main() { ifstream in( "test-in.txt" ); ofstream out( "test-in.txt" ); string s; while( getline( in, s ) ) out << s << "n"; // pourquoi un n ? }
  • 46. Cours semaine 1 jour 3 Cours C++ (2002) 46 Codons… (33) #include <string> #include <iostream> #include <fstream> using namespace std; void main() { ifstream in( "test-in.txt" ); string s, line; while( getline( in, line ) ) s += line + "n"; cout << s; }
  • 47. Cours semaine 1 jour 3 Cours C++ (2002) 47 Codons… (34) #include <string> #include <iostream> #include <fstream> #include <vector> using namespace std; void main() { vector<string> v; ifstream in( "test-in.txt" ); string line; while( getline( in, line ) ) v.push_back( line ); for( int i = 0; i < v.size(); i++ ) cout << i << ": " << v[ i ] << endl; }
  • 48. Cours semaine 1 jour 3 Cours C++ (2002) 48 Codons… (35) #include <string> #include <iostream> #include <fstream> #include <vector> using namespace std; void main() { vector<string> v; ifstream in( "test-in.txt" ); string line; while( in >> line ) // quel impact ? v.push_back( line ); for( int i = 0; i < v.size(); i++ ) cout << v[ i ] << endl; }
  • 49. Cours semaine 1 jour 3 Cours C++ (2002) 49 Codons… (36) #include <iostream> #include <vector> using namespace std; void main() { vector<int> v; for( int i = 0; i < 10; i++ ) v.push_back( i ); for( int i = 0; i < v.size(); i++ ) cout << v[ i ] << ", "; cout << endl; for( int i = 0; i < v.size(); i++ ) v [ i ] = v [ i ] * 10; // autre écriture ? for( int i = 0; i < v.size(); i++ ) cout << v [ i ] << ", "; cout << endl; }
  • 50. Cours semaine 1 jour 3 Cours C++ (2002) 50 Codons… (37) #include <cassert> using namespace std; void main() { int i = 100; assert( i != 100 ); }
  • 51. Cours semaine 1 jour 3 Cours C++ (2002) 51 Exercices  Exercice #1  Lire un fichier contenant des lignes de caractères  Imprimer les lignes à l’écran dans l’ordre inverse de leur apparition dans le fichier texte (imprimer d’abord la dernière, la première ligne du fichier texte étant imprimée en dernier à l’écran)
  • 52. Cours semaine 1 jour 3 Cours C++ (2002) 52 Exercices (2)  Exercice #2  À partir de la taille du côté d’un carré saisie au clavier, calculer et imprimer son périmètre et sa surface  Modifier le programme pour calculer le périmètre et la surface d’un cercle  Modifier le programme pour passer le paramètre à l’appel de la fonction ou, s’il n’est pas fourni, le demander pendant l’exécution
  • 53. Cours semaine 1 jour 3 Cours C++ (2002) 53 Exercices (3)  Exercice #3  Créer trois vecteurs de 10 réels  Remplir les deux premiers avec des valeurs de votre choix mais différentes les unes des autres  Utiliser le troisième vecteur pour stocker la somme des éléments correspondants dans les deux autres vecteurs  Afficher le tout
  • 54. Cours semaine 1 jour 3 Cours C++ (2002) 54 Exercices (4)  Exercice #4  Faites un programme qui permet la saisie d’un nombre  À l’aide d’un switch, vérifier que ce nombre n’est pas une des deux valeurs particulières que vous aurez choisies
  • 55. Cours semaine 1 jour 3 Cours C++ (2002) 55 Questions / Remarques