Tableau / Matrice

yoghisan Messages postés 204 Date d'inscription samedi 10 mai 2003 Statut Membre Dernière intervention 2 juin 2005 - 30 nov. 2003 à 00:38
yvemoreau Messages postés 308 Date d'inscription mardi 11 juin 2002 Statut Membre Dernière intervention 26 septembre 2008 - 21 déc. 2003 à 01:41
Bonjour,

Voila, comme la plupart des gens ici. J'utilise des tableaux pour stocker des données du style

MonTableau:array(0..9,0..9) of double;


Ce que j'aimerai savoir précisement si il existe par exemple une fonction standart qui permette de trouver la valeur minimale d'une ligne ou d'une colonne.

Et ce que j'aimerai savoir aussi de manière générale, c'est ou je peux trouver une liste des fonctions de bases qui font ce genre de truc sur des tableaux.

Merci

Yoghi

1 réponse

yvemoreau Messages postés 308 Date d'inscription mardi 11 juin 2002 Statut Membre Dernière intervention 26 septembre 2008
21 déc. 2003 à 01:41
type TMonTableau =array[0..1]of array[0..1]of double ;

function trouvePlusPetit(
Colonne:Boolean;
fixe,
maxItemduTableau:Integer;
tableau:TMonTableau):Double;

var
Form1: TForm1;
MonTableau:TMonTableau;
const
MonTableau2:array[0..1,0..1]of double =
((1.03,4.15),
(0.51,8.51));
implementation

function trouvePlusPetit(
Colonne:Boolean;
fixe,
maxItemduTableau:Integer;
tableau:TMonTableau):Double;

var x:Integer;

begin
result:=1.7 * 10*308; //maximun Double
try

if(Colonne=True)then
begin
for x:=0 to maxItemduTableau do
begin
if(tableau[fixe,x]<result)then result:=tableau[fixe,x];
end;
end else
begin
for x:=0 to maxItemduTableau do
begin
if(tableau[x,fixe]<result)then result:=tableau[x,fixe];
end;
end;
except;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var x:double;
begin
MonTableau[0,0]:=MonTableau2[0,0];
MonTableau[1,0]:=MonTableau2[1,0];
MonTableau[0,1]:=MonTableau2[0,1];
MonTableau[1,1]:=MonTableau2[1,1];

x:=trouvePlusPetit(____,____,1,MonTableau);
label1.Caption:=FloatToStr(x);

end;

^ca dépendra comment on le voit
((1.03, 4.15),
(0.51, 8.51));
renvoi 0.51 pour "false,0" Colonne 0 Vertical
renvoi 4.15 pour "false,1" Colonne 1

renvoi 1.03 pour "true,0" Rangee 0 Horizontal
renvoi 0.51 pour "true,1" Rangee 1

On passe un Tableau à une function mais il doit commencer par l'item 0 .

On doit s'assurer de la taille "maxdutableau" pour la boucle de recherche ainsi que la ligne fixe de recherche
au pire une erreur de conversion !!!

c'est une idée ? bonne chance !!!
yve
0
Rejoignez-nous