sc2mosta
LE LANGAGE DE PROGRAMATION PASCAL .
 
AccueilPortailGalerieFAQRechercherS’enregistrerConnexion
Derniers sujets
» NOTES EMD2 SUITE
Lun 1 Sep - 20:03 par Anonymous

» Notes EMD2
Lun 1 Sep - 19:59 par Anonymous

» TD NO 04
Ven 30 Mai - 2:23 par Anonymous

» SUJET EMD2 ET CORRECTIONS + NOTES
Mar 27 Mai - 14:48 par Admin

» cours numéro 12
Lun 26 Mai - 20:46 par Anonymous

» NOTES EMD1
Lun 26 Mai - 12:36 par Anonymous

» TD NO 03
Ven 16 Mai - 22:54 par Anonymous

» cours numéro 04
Jeu 1 Mai - 13:36 par Anonymous

» cours numéro 06
Mar 29 Avr - 12:49 par Anonymous

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Partenaires
Rechercher
 


 Résultats par :
 
Rechercher Recherche avancée
cours numéro 09
Dim 16 Mar - 18:08 par Admin
5. Tableaux à plusieurs dimensions :

Le type d'une composante d'un tableau peut être à son tour un tableau, on parle alors d’un tableau à plusieurs dimensions. Par exemple une matrice est un tableau de colonnes.

Exemple:
const
taille = 10 ;
type
indice = l..taille ;
colonne = array [indice] of Real;
matrice = array [indice] of colonne;


Dans cette exemple, le type 'matrice' est un tableau à deux dimensions puisque ses composant sont des vecteurs. La déclaration du type 'colonne' peut être incorporée dans la déclaration du type ‘matrice' :

type
matrice = array [indice] of array [indice] of real;



Cette dernière déclaration est assez lourde et peut être simplifiée par la déclaration suivante:

type
matrice = array [indice, indice] of real;


Remarque: dans l'exemple plus haut nous avons déclaré un tableau à deux dimensions (qu’'on appelle souvent matrice) dans lequel les intervalles des deux indices sont les mêmes, on parle alors de matrice carrée. On peut envisager le cas d'une matrice rectangle comme dans l'exemple suivant:

type
mat = array [1..10, 1..15] of real;


. Règles relatives à un tableau à plusieurs dimensions:

. L'accès aux composantes de la matrice se fait en utilisant deux indices (indice de ligne et indice de colonne). Par exemple:

Var
a : matrice;
i, j : indice ;


les composantes de la matrice a s'écrivent alors a[i,j].

. Les composantes d'un tableau à deux dimensions sont stockées en mémoire dans des cases successives en les alignant ligne par ligne ou colonne par colonne (suivant la convention du compilateur utilisé). Un calcul d'indice est effectué pour passer de la représentation à deux dimensions à la représentation en mémoire centrale (qui est représentation à une seule dimension).
. Pratiquement toute opération manipulant une matrice (tableau à deux dimensions) nécessite l'utilisation de deux boucles imbriquées (L’une pour l'indice de ligne et l'autre pour l'indice de colonne). Par exemple:

var
a : matrice;
i, j : indice;
begin
(* lecture de la matrice *)
for i:=l to taille do
for j :=1 to taille do
read (a[i,j]) ;
end.


Somme de deux matrices:
La somme de deux matrices a et b est la matrice c telle quI: Cij = aij + bij.

Program SommeMatrices;
Const
N = 1..10;
M = 1..15 ;
Type
Ligne = 1..N ; Colonne = 1..M ;
Matrice = array [Ligne, Colonne] of Real ;
Var
A, b, c : Matrice;
I : Ligne; J : Colonne;
Begin
(* Lecture des matrices a et b l'une après l’autre*)
for 1:= 1 to N do
for J:= 1 to M do
read (a[I,J]) ;
for 1:= 1 to N do
For J:= 1 to M do
read (b[I,J]) ;
(* Calcul de la somme *)
for 1:= 1 to N do
for J := 1 to M do
c[I,J] := a[I,J] + b[I,J] ;
(* Affichage du résultat *)
for I:= 1 to N do
begin
for J := 1 to M do
Write (c(I)]) ;
Writeln
End
End.


Commentaires: 0
Sondage
Forum
Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité

Utilisateurs enregistrés : Aucun


[ Voir toute la liste ]

Le record du nombre d’utilisateurs en ligne est de 5 le Lun 26 Mai - 20:41
Statistiques
Nous avons 16 membres enregistrés
L’utilisateur enregistré le plus récent est HAKIKI MUSTAPHA YACINE

Nos membres ont posté un total de 58 messages dans 21 sujets