Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| matrice double ? (tableau de tableaux de valeurs) | |
| | Auteur | Message |
---|
Sefiria
Nombre de messages : 25 Age : 32 Localisation : Nîmes (30), France Date d'inscription : 05/03/2013
| Sujet: matrice double ? (tableau de tableaux de valeurs) Ven 29 Mar 2013 - 0:57 | |
| Hey ! Me revoici après quelques épreuves passées en cours.
Vous sauriez comment créer une matrice double ? Par exemple, en schématisant :
MatX(MatY,MatY,MatY) ----> matrice x ..........(1)...(1)...(1) ..........(2)...(2)...(2) ..........(3)...(3)...(3) ...........|......|......| ...........v.....v......v ....mat. y1............ ..............mat. y2.. .......................mat. y3
En maths on appelle ça "une matrice d'ordre deux (2)". Oui, je parles bien d'une matrice double symétrique, une matrice à deux dimensions, entre autres.
En code cela devrait donner quelque chose comme : ma_matrice_x%(index_de_ma_matrice_x%,ma_matrice_y%(index_de_ma_matrice_y%)) En gros, dans ma_matrice_x chacune de ses valeurs est une ma_matrice_y. Tiens, j'ai trouvé mieux pour expliquer (je ne sais plus pour quel langage j'ai vu ca) : ma_matrice_x(0,0 , 1,0 , 2,0 , ...)
Toujours en schématisant :
ma_matrice_x[0,0|1,0|2,0|3,0|...] ' le nb de gauche est l'index de la premiere matrice, celui de droite l'index des matrices secondaires) .......................0,1|1,1|2,1|3,1 .......................0,2|1,2|2,2|3,2 .......................0,3|1,3|2,3|3,3 .......................0,4|1,4|2,4|3,4 ....................... ... |... | ... |...
Bon j'espère avoir été clair malgré cette fatigue qui me ronge... Voilà, j'espère une réponse positive ! Merci à ceux qui me répondront. Sinon tant pis :/
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 29 Mar 2013 - 1:18 | |
| c'est un table à deux dimensions ton truc | 0 | 1 | 2 | 3 | 4 | 0 | X | .. | .. | .. | .. | 1 | .. | Y | .. | .. | .. | 2 | .. | .. | .. | .. | Z | 3 | .. | W | .. | .. | .. | 4 | .. | .. | P | .. | .. |
x=0,0 y=1,1 z=4,2 w=1,3 p=2,3 soit un tableau de variable : X%(4,4)
Dernière édition par ygeronimi le Sam 30 Mar 2013 - 18:15, édité 1 fois | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: matrice double ? (tableau de tableaux de valeurs) Ven 29 Mar 2013 - 3:00 | |
| @Sefiria Si j’ai bien compris ta demande, ma réponse est non. En Panoramic, on ne peut pas déclarer une matrice dont les éléments sont des matrices. Les seuls types reconnus par Panoramic sont les types simples et non les types composésToujours en Panoramic, on peut déclarer une matrice à deux dimensions dont tous les éléments sont du même type et ce type ne peut pas être autre chose que le type entier ou le type réel ou le type chaîne de caractères. Exemples de déclarations valides - Code:
-
DIM M%(10,5) : ' matrice rectangulaire haute (à 2 dimensions) de 11 lignes et 6 colonnes dont tous les éléments sont des nombres entiers DIM T(5,5) : ' matrice carrée (à 2 dimensions) de 6 lignes et 6 colonnes dont tous les éléments sont des nombres réels (flottants) DIM A$(7,18) : ' matrice rectangulaire large (à 2 dimensions) de 8 lignes et 19 colonnes dont tous les éléments sont des chaînes de caractères.
REMARQUES : 1/ Le 1er indice commence à 0 (zéro) et non à 1. 2/ Le nombre de dimensions ne peut pas dépasser 2. Cette déclaration est incorrecte en Panoramic - Code:
-
dim a(2,3,5) : ' La déclaration d'un tableau à 3 dimensions est non autorisée
| |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: matrice double ? (tableau de tableaux de valeurs) Ven 29 Mar 2013 - 7:39 | |
| Par contre bien sûr tu peux tricher en "codant" les plusieurs valeurs soit dans un autre nombre (par exemple si tes valeurs vont de 1 à 255, tu peux coder la valeur en Val1*1000+Val2, ou par un sting composé STR$(VAL1)+";"+STR$(VAL2) (Tu peux coder plus que 2 valeurs si besoin) et ce pour les 2 valeurs de ton tableau bien sûr. | |
| | | Sefiria
Nombre de messages : 25 Age : 32 Localisation : Nîmes (30), France Date d'inscription : 05/03/2013
| Sujet: Re: matrice double ? (tableau de tableaux de valeurs) Sam 30 Mar 2013 - 15:28 | |
| Merci tout le monde ! Vous êtes tous dans le mille ! Alors papydall, apparemment on peut déclarer une matrice d'ordre 2 (2 dimensions) mais pas 3. Je cherche justement à déclarer une matrice d'ordre 2. Merci ! Et oui, on peut tricher pour rajouter des dimensions, mais deux dimensions me suffisent largement.
Merci tout le monde ! C'était clair, net, et très précis ! Merci aussi pour les infos complémentaires.
A bientôt ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 30 Mar 2013 - 19:02 | |
| Allons même un peu plus loin : déclaration d'un tableau de 5x5 pour des entiers dim Tab%(4,4) non,non y a pas d'erreur...puisque la première case est 0 donc 0,1,2,3,4 sur 0,1,2,3,4 bref, on veut le remplir : dim x%,y%,N% for x%=0 to 4 for y%=0 to 4 N%=N%+1 Tab%(x%,y%)=N% next y% next x% on obtient : | x% | y% | | 0 | 1 | 2 | 3 | 4 | 0 | 1 | 6 | 11 | 16 | 21 | 1 | 2 | 7 | 12 | 17 | 22 | 2 | 3 | 8 | 13 | 18 | 23 | 3 | 4 | 9 | 14 | 19 | 24 | 4 | 5 | 10 | 15 | 20 | 25 | |
On veut afficher la valeur en x%=2 et y%=3 message str$(Tab%(2,3)) si tout se passe comme cela se doit on doit obtenir "14" | |
| | | Contenu sponsorisé
| Sujet: Re: matrice double ? (tableau de tableaux de valeurs) | |
| |
| | | | matrice double ? (tableau de tableaux de valeurs) | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |