b. Une table comme champ
Selon le même principe qu’un tableau dans une structure, vous pouvez utiliser un tableau d’enregistrements comme
type de données dans une structure, puisque ce n’est qu’un tableau, après tout.
Soit une grande enseigne disposant de dix magasins. Vous devez décrire deux structures : une structure magasin, et
une structure enseigne. La structure enseigne doit contenir les enregistrements des dix magasins. Voici ce que vous
pourriez faire :
Structure tmagasin
adresse:chaîne
tel:chaîne
gerant:chaîne
FinStruct
Structure tenseigne
nom:chaîne
magasin :tableau[1..10] de tmagasins
FinStruct
Voici comment exploiter un enregistrement de type tenseigne :
Var
enseigne :tenseigne
i :entier
Début
Afficher "Nom de l’enseigne ?"
Saisir enseigne.nom
pour i de 1 à 10 Faire
Afficher "adresse du magasin",i
Saisir enseigne.magasin[i].adresse
Afficher "tel du magasin",i
Saisir enseigne.magasin[i].tel
Afficher "gérant du magasin",i
Saisir enseigne.magasin[i].gerant
FinPour
Fin
Il n’y a en fait rien de bien complexe. Vous pouvez encore aller plus loin en créant des tables contenant d’autres
tables, et ainsi de suite…
5. Et Java ?
Il y a ici un petit problème. Java ne dispose pas, tout au moins directement, de moyen de déclarer une structure en
tant que telle, contrairement à des langages comme le C, C++ ou le Pascal. Java est un langage dit objet. L’objet est
abordé dans le dernier chapitre. Pour créer un objet Java, il faut écrire une classe : c’est la description ou une sorte de
"type" d’objet. Une classe peut contenir des variables (les attributs) et des bouts de programme (les méthodes). Par
(mauvaise) analogie une classe qui ne contiendrait que des variables pourrait être apparentée à une structure. Voici
un exemple succinct :
class tfabricant {
public String ref;
public String nom;
public String adresse;
public String tel;
}
class tarticle {
public String ref;
public String libelle;
public float prix;
public tfabricant fab=new tfabricant();
}
class chap5_struct {
public static void main(String[] args) {
tarticle article1=new tarticle();
article1.ref="Art001_01";
- 6 -
© ENI Editions - All rigths reserved - Jonifar lina
122
Selon le même principe qu’un tableau dans une structure, vous pouvez utiliser un tableau d’enregistrements comme
type de données dans une structure, puisque ce n’est qu’un tableau, après tout.
Soit une grande enseigne disposant de dix magasins. Vous devez décrire deux structures : une structure magasin, et
une structure enseigne. La structure enseigne doit contenir les enregistrements des dix magasins. Voici ce que vous
pourriez faire :
Structure tmagasin
adresse:chaîne
tel:chaîne
gerant:chaîne
FinStruct
Structure tenseigne
nom:chaîne
magasin :tableau[1..10] de tmagasins
FinStruct
Voici comment exploiter un enregistrement de type tenseigne :
Var
enseigne :tenseigne
i :entier
Début
Afficher "Nom de l’enseigne ?"
Saisir enseigne.nom
pour i de 1 à 10 Faire
Afficher "adresse du magasin",i
Saisir enseigne.magasin[i].adresse
Afficher "tel du magasin",i
Saisir enseigne.magasin[i].tel
Afficher "gérant du magasin",i
Saisir enseigne.magasin[i].gerant
FinPour
Fin
Il n’y a en fait rien de bien complexe. Vous pouvez encore aller plus loin en créant des tables contenant d’autres
tables, et ainsi de suite…
5. Et Java ?
Il y a ici un petit problème. Java ne dispose pas, tout au moins directement, de moyen de déclarer une structure en
tant que telle, contrairement à des langages comme le C, C++ ou le Pascal. Java est un langage dit objet. L’objet est
abordé dans le dernier chapitre. Pour créer un objet Java, il faut écrire une classe : c’est la description ou une sorte de
"type" d’objet. Une classe peut contenir des variables (les attributs) et des bouts de programme (les méthodes). Par
(mauvaise) analogie une classe qui ne contiendrait que des variables pourrait être apparentée à une structure. Voici
un exemple succinct :
class tfabricant {
public String ref;
public String nom;
public String adresse;
public String tel;
}
class tarticle {
public String ref;
public String libelle;
public float prix;
public tfabricant fab=new tfabricant();
}
class chap5_struct {
public static void main(String[] args) {
tarticle article1=new tarticle();
article1.ref="Art001_01";
- 6 -
© ENI Editions - All rigths reserved - Jonifar lina
122
