Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
2e anne
Sabeur ELKOSANTINI
Sabeur.Elkosantini@isima.rnu.tn
A. U. : 10-11
S. Elkosantini
Bibliographie
Livres
Bruce Eckel, Thinking in Java , 2nd revision, 2000 (Disponible sur internet).
A. U. : 10-11
S. Elkosantini
Plan
Chapitre 1 : Introduction
Chapitre 2 : Le concept dobjets
Chapitre 3 : POO avec C++
Chapitre 4 : et avec Java
A. U. : 10-11
S. Elkosantini
Plan
Chapitre 1 : Introduction
Chapitre 2 : Le concept dobjets
Chapitre 3 : POO avec C++
Chapitre 4 : et avec Java
A. U. : 10-11
S. Elkosantini
Introduction
Historique de la POO
A. U. : 10-11
S. Elkosantini
Introduction
Historique de la POO
Standardisation de C++
9
9
9
A. U. : 10-11
S. Elkosantini
Introduction
A. U. : 10-11
S. Elkosantini
Introduction
Moto
Couleur : noir
Vitesse : 150 Km/h
Acclrer
Freiner
A. U. : 10-11
S. Elkosantini
Introduction
A. U. : 10-11
S. Elkosantini
Introduction
Dvelopp dans les laboratoires dAT&T Bell au dbut des annes 1980 par
Bjarne Stroustrup.
Un langage hybride ?!
Un langage typage
fort ?!
U n langage compil ?!
Objets ??
S. Elkosantini
10
Plan
Chapitre 1 : Introduction
Chapitre 2 : Le concept dobjets
Chapitre 3 : POO avec C++
Chapitre 4 : et avec Java
A. U. : 10-11
S. Elkosantini
11
Le concept dobjets
Notion dobjet
Objet Moto
A. U. : 10-11
S. Elkosantini
12
Le concept dobjets
Notion de classe
Lorsque des objets ont les mmes attributs et comportements : ils sont regroups
dans une famille appele : Classe
A. U. : 10-11
Moto
Moto
Couleur : noir
Vitesse_limite : 200
Couleur : rouge
Vitesse_limite : 250
Acclrer
Freiner
Acclrer
Freiner
S. Elkosantini
13
Le concept dobjets
..
Couleur
Vitesse_limite
Acclrer
Freiner
.
Moto : Kawasaki
Moto : Yamaha
Couleur : noir
Vitesse_limite : 200
Couleur : rouge
Vitesse_limite : 250
Acclrer
Freiner
Acclrer
Freiner
.
A. U. : 10-11
S. Elkosantini
14
Le concept dobjets
Fentre_secondaire
Par ..
A. U. : 10-11
S. Elkosantini
15
Le concept dobjets
De point de vue utilisation, un objet est une boite noire qui offre un certain
nombre de mthodes permettant dinteragir avec lui.
Peu importe comment il est construit en interne, la seule chose ncessaire pour
pouvoir utiliser un objet est de savoir ce quil peut faire et surtout comment lui
demander :
Exemple :un poste de TV est une boite noire ayant pour interface : un cran, des
HP et une tlcommande. Pour changer de chaine, il suffit de
.Peu importe ce qui se passe rellement en interne.
A. U. : 10-11
S. Elkosantini
16
Le concept dobjets
Lensemble des mthodes proposes par un objet est appel linterface de cet
objet.
On dit quun objet est encapsul par son interface : la seule manire dinteragir
avec cet objet est dinvoquer une mthodes de son interface. Peu importe de quoi
cet objet est rellement constitu, ce qui est important cest les services (les
mthodes) quil peut fournir.
Interface
Objet
A. U. : 10-11
S. Elkosantini
17
Le concept dobjets
Empcher l'accs aux donnes par un autre moyen que les services proposs.
Compte_Bancaire
Attributs privs
Mthodes publiques
A. U. : 10-11
S. Elkosantini
- Num_RIB
- Nom
- Montant
+ Crditer()
+ Dbiter()
18
Le concept dobjets
Publique : veut dire que les attributs ou les mthodes sont disponibles pour tout le
monde
Priv : veut dire quaucune autre classe ne peut accder au contenu de lattribut et
limplmentation de la mthode concern,
Protg : l'accs aux donnes est rserv aux fonctions des classes hritires, c'est-dire par les fonctions membres de la classe ainsi que des classes drives.
A. U. : 10-11
S. Elkosantini
19
Le concept dobjets
A. U. : 10-11
S. Elkosantini
20
Le concept dobjets
Dclaration :
A. U. : 10-11
S. Elkosantini
21
Le concept dobjets
Les mthodes daccs qui permettent de renvoyer les informations relatives un objet
Les mthodes daltration qui modifient ltat dun objet (les valeurs de certains
champs), donc elles comportent certains contrlent pour valider les nouvelles
valeurs.
Dclaration :
A. U. : 10-11
22
Le concept dobjets
A. U. : 10-11
S. Elkosantini
23
Le concept dobjets
Une mthode est amie d'une classe si elle peut accder directement toutes
les donnes prives de cette classe.
Une classe est amie d'une autre classe si toutes ses fonctions lui sont amies.
La dclaration d'amiti doit se faire dans la classe qui autorise les accs ses
donnes prives.
A. U. : 10-11
S. Elkosantini
24
Le concept dobjets
class A
{ friend void Methode1 ();
friend class C;
...
}
A. U. : 10-11
S. Elkosantini
25
Le concept dobjets
A. U. : 10-11
S. Elkosantini
26
Le concept dobjets
A. U. : 10-11
S. Elkosantini
27
Le concept dobjets
Lhritage
les objets d'une classe fille ont accs aux donnes et aux mthodes de la classe parent et
peuvent les tendre.
Les sous classes peuvent redfinir les variables et les mthodes hrites.
Les mthodes des clases filles sont redfinies avec le mme nom, les mmes types et le
mme nombre d'arguments
A. U. : 10-11
S. Elkosantini
28
Le concept dobjets
Lhritage
A. U. : 10-11
la classe Etudiant :
no m
capital UV
d ipl m e
la classe Etudiant-Elu :
no m
capital UV
d ipl m e
Mandat
Syndicat
VrifierNo m
MajUV
ChangerDipl m e
VrifierNo m
MajUV
ChangerDipl me
DmissionnerMandat
ChangerSyndicat
S. Elkosantini
29
Le concept dobjets
Lhritage
Lobjet Etudiant-Elu a les proprits (attributs et mthodes) de lobjet
Etudiant mais en plus possde dautres proprits.
A. U. : 10-11
S. Elkosantini
30
Le concept dobjets
Lhritage
Chaque sous classe peut avoir une ou plusieurs sous classes formant ainsi
une hirarchie dobjet. On parle de classe anctre (ou mre) et de classes
descendant (ou fille).
Forme
Rectangle
Triangle
Cercle
A. U. : 10-11
S. Elkosantini
31
Le concept dobjets
Lhritage
Autre exemple : les formes gomtrique (utiliser dans les systmes daide
la conception des jeux vido)
Forme
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
S. Elkosantini
Carre
Triangle
Cercle
32
Le concept dobjets
Lhritage
Pour diffrentier une classe drive dune classe parent :
ajouter dautres mthodes dans les classes drives: la classe de base n'tait pas
assez complte
Forme
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
A. U. : 10-11
S. Elkosantini
Triangle
RetournerHor()
RetournerVer()
Cercle
33
Le concept dobjets
Lhritage
Pour diffrentier une classe drive dune classe parent :
Forme
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
dessiner()
effacer()
A. U. : 10-11
S. Elkosantini
Triangle
dessiner()
effacer()
Cercle
dessiner()
effacer()
34
Le concept dobjets
Lhritage multiple
Certains langages orients objet, tels que le C++, permettent de faire de
l'hritage multiple.
Carnivore
Omnivore
A. U. : 10-11
S. Elkosantini
35
Plan
Chapitre 1 : Introduction
Chapitre 2 : Le concept dobjets
Chapitre 3 : POO avec C++
Chapitre 4 : et avec Java
A. U. : 10-11
S. Elkosantini
36
Spcificits de C++
En C : float sansarg(void);
A. U. : 10-11
S. Elkosantini
37
Spcificits de C++
A. U. : 10-11
S. Elkosantini
38
Spcificits de C++
A. U. : 10-11
S. Elkosantini
39
Spcificits de C++
A. U. : 10-11
S. Elkosantini
40
Spcificits de C++
En saisie, cin
En affichage, cout
Exemple :
cout << "coucou";
cout << "voici le nombre : " << x << endl;
A. U. : 10-11
S. Elkosantini
41
Remarques :
A. U. : 10-11
S. Elkosantini
42
Du nouveaux ?
Surcharge de fonction ;
Notions OO;
A. U. : 10-11
S. Elkosantini
43
Moto
Couleur
Vitesse_limite
Acclrer
Freiner
A. U. : 10-11
S. Elkosantini
44
Moto
Couleur
Vitesse_limite
Acclrer
Freiner
A. U. : 10-11
S. Elkosantini
45
class Moto {
int Vitesse_actuelle;
int Age;
int Prix;
};
Moto:: Moto(int age; int Vitesse_Initiale , int prix_I) :
Vitesse_actuelle(Vitesse_Initiale), Age (age), Prix(prix_I)
{ }
void Moto:: Accelerer(int v)
{
Vitesse_actuelle += v;
}
int Moto:: valeur(){
int amortissement;
amortissement = 0.05;
return Prix Prix * amortissement * age;
}
A. U. : 10-11
S. Elkosantini
Des remarques ??
46
et le constructeur en C++
Chaque appel un constructeur cre un nouvel objet (instance) qui obit au
patron dfini par la classe :
A. U. : 10-11
S. Elkosantini
47
et le constructeur en C++
Statique
La construction en C++:
Classe + variable + (valeurs)
Cest le constructeur
Produit p1 ( Portable , 1) ;
Produit p2 () ;
Comment programmer
la classe Produit ??
A. U. : 10-11
S. Elkosantini
48
et le constructeur en C++
Dynamique
La construction en C++:
Classe + * variable = new Classe (valeurs)
Cest le constructeur
Produit * p1 = new Produit ( Portable , 1) ;
Produit p2 = new Produit () ;
Comment programmer
la classe Produit ??
A. U. : 10-11
S. Elkosantini
49
Linstanciation
Moto
Couleur
Vitesse_limite
Acclrer
Freiner
Moto : Kawasaki
Moto : Yamaha
Couleur : noir
Vitesse_limite : 200
Couleur : rouge
Vitesse_limite : 250
Acclrer
Freiner
Acclrer
Freiner
A. U. : 10-11
S. Elkosantini
50
obj
NULL
A. U. : 10-11
S. Elkosantini
51
obj
Objet obj () ;
obj
NULL
Attribut 1
Attribut 2
Mthode 1
A. U. : 10-11
S. Elkosantini
52
A. U. : 10-11
S. Elkosantini
53
this->Freiner()
A. U. : 10-11
signifie
S. Elkosantini
54
Exemple dutilisation
void Moto::acc()
{
..
}
void Moto::acc2()
{
.
}
A. U. : 10-11
S. Elkosantini
55
Freiner();
Prix;
Exercice 5 :
Ecrire une classe Livre, caractrise par les attributs titre, auteur et anne et par les
mthodes suivantes :
- Une mthode affichant les caractristiques dun livre
- Une mthode qui prend en paramtre un livre et qui permet dafficher les deux
livres et de le comparer le nom du livre pass en paramtre.
A. U. : 10-11
S. Elkosantini
56
Exercice 6 :
Crer une classe Segment qui est dfinie par ses extrmits (des points) et par sa
couleur. Avec cette classe, on peut calculer la longueur dun segment, le dplacer
et changer sa couleur.
A. U. : 10-11
S. Elkosantini
57
Exemple :
A. U. : 10-11
S. Elkosantini
58
La surcharge
Exemple : la surcharge de
la mthode somme
A. U. : 10-11
S. Elkosantini
59
La surcharge
Exercice 7:
1. Crez une classe avec un constructeur qui imprime un message.
2. Ajoutez cette classe un constructeur surcharg qui prend un string en argument et
qui l'imprime avec votre message.
3. Crez, dans le programme principale, deux instances de cette objet pour tester les
deux constructeurs.
A. U. : 10-11
S. Elkosantini
60
La surcharge doprateurs
En C++, il y a la possibilit de redfinir le comportement de certains
oprateurs mathmatique ou logique: == , +=, +, - , &, etc.
class Moto
{
A. U. : 10-11
void main()
{
.
Moto m, m1, m2;
m=m1+m2;
.
}
S. Elkosantini
61
La surcharge doprateurs
class Moto
{
A. U. : 10-11
S. Elkosantini
void main()
{
.
Moto m, m1, m2;
m=m1+m2;
.
}
62
La surcharge doprateurs
class Moto
{
};
bool Moto::operator + (const Moto& m1, const Moto& m1)
{
m1.couleur += m2.couleur;
m1.vitesse +=m2.vitesse
}
A. U. : 10-11
S. Elkosantini
void main()
{
.
Moto m, m1, m2;
m=m1+m2;
.
}
63
A. U. : 10-11
S. Elkosantini
64
A. U. : 10-11
S. Elkosantini
65
Voiture : Mercedes
Puissance : 9
Couleur: noir
Puissance: 9
Couleur : noir
Acclrer
Freiner
Acclrer
Freiner
Les deux objets ont les mmes valeurs dattributs mais la rfrence est diffrente.
A. U. : 10-11
S. Elkosantini
66
A. U. : 10-11
non.
S. Elkosantini
67
A. U. : 10-11
// ..
//
S. Elkosantini
68
Encapsulation en C++
Il existe trois niveaux de visibilit :
public :
string var1;
int methode1();
protected :
char var2;
void methode2();
A. U. : 10-11
Compte_Bancaire
- Num_RIB
- Nom
- Montant
+ Crditer()
+ Dbiter()
private :
int var3;
void methode3();
S. Elkosantini
69
Encapsulation en C++
Lide de restreindre la visibilit des mthodes et des attributs :
Rendre priv les attributs caractrisant ltat de lobjet et de fournir des mthodes
publiques permettant de modifier/accder lattributs.
A. U. : 10-11
getMontant () : le getter
setMontant () : le setter
S. Elkosantini
70
Encapsulation en C++
Exemple : Application pour la gestion des comptes en banques.
A. U. : 10-11
S. Elkosantini
71
Encapsulation en C++
+ Compte_Bancaire
- Num_RIB
- Nom
- Montant
+ Crditer()
+ Dbiter()
Implmenter cette
classe en C++
A. U. : 10-11
S. Elkosantini
72
Le mot cl static
A. U. : 10-11
S. Elkosantini
73
Le mot cl static
class StaticTest {
static int i = 47;
}
A. U. : 10-11
S. Elkosantini
74
Forme
Lhritage
Rectangle
Triangle
Cercle
Et le mot cl protected ?
S. Elkosantini
75
Forme
Lhritage
Carre
A. U. : 10-11
S. Elkosantini
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
Triangle
RetournerHor()
RetournerVer()
Cercle
76
Lhritage et amiti:
Pas dhritage au niveau des dclarations
damiti.
class A {
friend class Base;
public:
A() { cout << "Constructeur de A."; }
~A() { cout << "Destructeur de A"; }
private :
int nb;
};
class Base {
public:
Base() { cout << "Constructeur de Base .";
cout << att.nb."; }
~ Base () { cout << "Destructeur de Base "; }
private :
A att;
};
A. U. : 10-11
S. Elkosantini
77
Forme
Lhritage : le polymorphisme
Carre
dessiner()
effacer()
A. U. : 10-11
S. Elkosantini
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
Triangle
dessiner()
effacer()
Cercle
dessiner()
effacer()
78
Linstance f
Interface
Interface
Interface
Implmentation
Implmentation
Implmentation
f->dessiner() ;
Classe Triangle
A. U. : 10-11
S. Elkosantini
79
Forme
dessiner ()
effacer()
Limplmentation en C++ de la classe Triangle rectangle deplacer()
getcouleur()
setcouleur()
Carre
dessiner()
effacer()
Triangle
rectangle
A. U. : 10-11
S. Elkosantini
Triangle
dessiner()
effacer()
Cercle
dessiner()
effacer()
Triangle
isocle
80
A. U. : 10-11
S. Elkosantini
81
Lhritage multiple
x
fa()
x
fb()
C
fc()
A. U. : 10-11
S. Elkosantini
82
class A {
class B {
public:
};
public:
};
A(int n) {}
B(int n) {}
A. U. : 10-11
S. Elkosantini
83
Si une mthode virtuelle est invoque par lintermdiaire dun pointeur sur
la classe de base, cest le type de lobjet dont ladresse se trouve dans le
pointeur au moment de lappel qui dtermine quelle fonction est excute
A. U. : 10-11
S. Elkosantini
84
Forme
Carre
dessiner ()
effacer()
deplacer()
getcouleur()
setcouleur()
Triangle
dessiner ()
deplacer()
Cercle
A. U. : 10-11
S. Elkosantini
85
class A
{
public:
A() { std::cout << "Constructeur de A.\n"; }
~A() { std::cout << "Destructeur de A.\n"; }
Virtual void PrintName() { std::cout << "Classe A.\n"; int j=0 ; }
};
class B : public A
{
public:
B() { std::cout << "Constructeur de B.\n"; }
~B() { std::cout << "Destructeur de B.\n"; }
void PrintName() { std::cout << "Classe B.\n"; }
};
A. U. : 10-11
S. Elkosantini
void main()
{
A * p= new B();
p->PrintName();
}
86
Forme
virtual dessiner ()
effacer()
getcouleur()
Implmentation
Interface
Classe Forme
Carre
dessiner()
effacer()
Triangle
rectangle
Interface
A. U. : 10-11
virtual dessiner()
effacer()
Cercle
dessiner()
effacer()
Classe Trianglerectangle
Implmentation
Implmentation
Triangle
Linstance f
Triangle
isocle
S. Elkosantini
87
class A
{
public:
A() { std::cout << "Constructeur de A.\n"; }
~A() { std::cout << "Destructeur de A.\n"; }
};
void main()
{
A * p= new B();
delete p;
}
class B : public A
{
public:
B() { std::cout << "Constructeur de B.\n"; }
~B() { std::cout << "Destructeur de B.\n"; }
};
S. Elkosantini
88
class Emloye {
public :
string nom;
int id, salaire;
Emloye(String n) : nom(n){}
virtual void affiche (){
cout<<"Je suis un employer";}
void affiche ()
cout<<"Je suis un magasinier";
A. U. : 10-11
S. Elkosantini
89
Lhritage
A. U. : 10-11
S. Elkosantini
90
Lhritage
Exercice 9:
Ecrivez les classes ncessaires au fonctionnement du programme suivant. Donnez
uniquement le nom des classes et les mthodes (sans dtailler le contenu).
void main()
Batiments *B[3] ;
B [0] = new Appartement(Atef) ;
B [1] = new Villa(Walid) ;
B [2] = new Studio(Anis) ;
For (int i = 0; i<3 ; i++)
B [i]->affiche() ;
S. Elkosantini
91
A. U. : 10-11
S. Elkosantini
92
Une classe est dite abstraite si elle contient au moins une fonction virtuelle
pure.
class X {
// Affiche est une fonction virtuelle pure car = 0.
virtual void affiche() = 0;
};
Il est impossible de crer (instancier) un
objet partir d'une classe abstraite.
X a();
A. U. : 10-11
// Erreur
S. Elkosantini
93
A. U. : 10-11
S. Elkosantini
94
Plan
Chapitre 1 : Introduction
Chapitre 2 : Le concept dobjets
Chapitre 3 : POO avec C++
Chapitre 4 : et avec Java
A. U. : 10-11
S. Elkosantini
95
Introduction
1995 : prsentation de Java TM par Sun et mise disposition gratuite du JDK sur
le net
A. U. : 10-11
S. Elkosantini
96
Introduction
9
9
9
9
A. U. : 10-11
S. Elkosantini
97
Introduction
A. U. : 10-11
S. Elkosantini
98
Introduction
Excution :
A. U. : 10-11
S. Elkosantini
gnration du fichier ..
99
Introduction
Java Vs C++
En C++:
// Exemple de programme minimal : Salut.cpp
#include <stdio.h>
//
void main () {
printf("Salut tout le monde");
}
En Java:
// Exemple de programme minimal : Salut.java
import java.io.*;
//.
public class Salut {
public static void main (String args[]) {
System.out.println("Salut tout le monde");
}
}
A. U. : 10-11
S. Elkosantini
100
Plan
Les tableaux
Les commentaires
A. U. : 10-11
S. Elkosantini
101
import java.io.*;
afficher (5);
}
public void afficher (int val ) {
S. Elkosantini
102
Caractres : char
Quelle est la
diffrence ??
Dclaration en java :
Int a, b, c ;
float x;
char ch
Boolens u, b;
A. U. : 10-11
S. Elkosantini
103
Les constantes
Le mot cl final permet de dclarer une constante: la valeur ne doit pas tre
modifie pendant lexcution du programme.
Dclaration en java :
final int n=10, m ;
n=n+1;
A. U. : 10-11
S. Elkosantini
104
Oprateur
Exemple
Equivalent
Note = 18
Note = 18
+=
Note+ = 2
Note = Note + 2
-=
Note- = 2
Note = Note - 2
*=
Note* = 1.5
/=
Note/ = 2
Note = Note / 2
%=
Note% = 2
Note = Note % 2
^=
Note^ = 2
Note = Note ^ 2
double nb1;
float nb2;
nb1/nb2 = ..
Quel est le type du rsultat de
lopration ?
float nb1;
int nb2;
nb1 + nb2 = .
A. U. : 10-11
S. Elkosantini
105
Priorit
()
++ , --
*,/,%
+,-
<,>
==,!=
&&, ||
=, += , -=
Plus faible
Plus fort
Les instructions
Quel est le rsultat de chaque
instruction ??
S. Elkosantini
106
i=2;
j=i++;
i=2;
j=++i;
A. U. : 10-11
S. Elkosantini
107
Autres oprateurs
Oprateur
&&
Loprateur ET logique
||
Loprateur OU logique
==
Oprateur dgalit
!=
Oprateur de diffrence
Loprateur ngation
double nb1;
double nb2;
boolean res1, res2;
res1 = ( nb1==nb2)
res2= ( nb1==nb2) && (nb1>10)
S. Elkosantini
108
Exemple :
A. U. : 10-11
&
Loprateur ET
Loprateur OU
Oprateur OU exclusif
Loprateur ngation
Nb1
Nb2
00000101
00000011
Nb1 | Nb2
Nb1 ^ Nb2
~Nb1
S. Elkosantini
109
Exemple :
N=10000101
int N = 6;
N>>1
A. U. : 10-11
donne .......
S. Elkosantini
110
Syntaxe:
if (condition logique)
Instructions excutes si la condition logique est vraie
else
Instructions excutes si la condition logique est fausse
Exemple 1:
S. Elkosantini
111
Exercice 1:
A. U. : 10-11
S. Elkosantini
112
switch casedefault
Syntaxe:
switch(expression)
{case constante_1: suite dinstructions; break;
...
case constante_n: suite dinstructions; break;
default : suite dinstruction;}
A. U. : 10-11
S. Elkosantini
113
Exercice 2:
Ecrire la partie du programme Java qui affiche:
o
Trs bien si la note est A,
o
Bien si la note est B,
o
Insuffisant si la note est C,
o
un message derreur sinon
A. U. : 10-11
S. Elkosantini
114
while :
do while :
do {
Bloc dinstructions ;
}
while ( condition logique)
A. U. : 10-11
S. Elkosantini
115
for :
Exemple 2:
A. U. : 10-11
S. Elkosantini
116
Exercice :
On dnomme nombre de Armstrong un entier naturel qui est gal la somme des
cubes des chiffres qui le composent. Ecrire un programme Java qui affiche de tels
nombres. Ex : 153 = 13 + 53 + 33
A. U. : 10-11
S. Elkosantini
117
break et continue
break : permet de sortir dune boucle sans excuter la suite des instructions
A. U. : 10-11
S. Elkosantini
118
Les tableaux
Tableau unidimensionnels
Dclaration :
ou
int [] tab;
int tab[];
NULL
tab
tab
tab
S. Elkosantini
119
Les tableaux
Tableau multidimensionnels
Dclaration :
NULL
tab
ou aussi
tab = new type [2];
tab [0] = new type[2];
tab [1] = new type[3]
A. U. : 10-11
tab
S. Elkosantini
120
Les tableaux
Exercice 3:
Soit T une matrice carre de 3 lignes et 3 colonnes. Ecrire un algorithme qui affiche un
message informant si la matrice est symtrique ou pas.
A. U. : 10-11
S. Elkosantini
121
Les tableaux
Exercice 4:
Ecrire un algorithme qui tri un tableau en utilisant la mthode de tri par insertion.
A. U. : 10-11
S. Elkosantini
122
Les vecteurs
S. Elkosantini
123
Les commentaires
Claret du code
Commentaire classique /* */ ou //
* @author Sabeur
* @version 2.0
*/
A. U. : 10-11
S. Elkosantini
124
Fin du cours
A. U. : 10-11
S. Elkosantini
125