Bonjour,
Je cherche à tester si deux tableaux ont les mêmes éléments. Existe-t-il une fonction qui fasse ça ?
Sinon, j'en programmerai une à la main.
Cerise
Tester l'égalité de deux tableaux
-
- Utilisateur éprouvé
- Messages : 447
- Inscription : mercredi 08 juin 2005, 18:03
Tester l'égalité de deux tableaux
Il fallait être Newton pour apercevoir que la Lune tombe quand tout le monde voit bien qu'elle ne tombe pas.
Paul Valéry
Paul Valéry
-
- Modérateur honoraire
- Messages : 2293
- Inscription : lundi 12 mars 2007, 11:20
- Localisation : Rouen
Re: Tester l'égalité de deux tableaux
Bonjour
Voici ce que dit la doc
O.G.
Voici ce que dit la doc
Il semble donc que oui (même taille, mêmes éléments).Asymptote includes a full set of vectorized array instructions for arithmetic (including self) and logical operations. These element-by-element instructions are implemented in C++ code for speed. Given
real[] a={1,2};
real[] b={3,2};
then a == b and a >= 2 both evaluate to the vector {false, true}. To test whether all components of a and b agree, use the boolean function all(a == b). One can also use conditionals like (a >= 2) ? a : b, which returns the array {3,2}, or write((a >= 2) ? a : null, which returns the array {2}.
O.G.
-
- Utilisateur éprouvé
- Messages : 447
- Inscription : mercredi 08 juin 2005, 18:03
Re: Tester l'égalité de deux tableaux
Bonjour,
Merci pour ton aide.
En effet, cela fonctionne pour des tableaux dont les éléments sont entiers (ou réels).
"==" fonctionne encore pour des tableaux de tableaux d'entiers, mais a le comportement qu'on attendrait de "all(a == b)", tandis que "all" ne fonctionne plus.
Et pour des tableaux de tableaux de tableaux, cela ne fonctionne plus du tout (et je suis dans ce cas...).
Bon, cela dit, il se trouve que mon grand tableau n'a que deux éléments (qui sont des matrices, donc des tableaux de tableaux) : je teste donc séparément pour ces deux matrices grâce à ta solution, et ça me convient.
Merci pour ton aide.
En effet, cela fonctionne pour des tableaux dont les éléments sont entiers (ou réels).
"==" fonctionne encore pour des tableaux de tableaux d'entiers, mais a le comportement qu'on attendrait de "all(a == b)", tandis que "all" ne fonctionne plus.
Et pour des tableaux de tableaux de tableaux, cela ne fonctionne plus du tout (et je suis dans ce cas...).
Bon, cela dit, il se trouve que mon grand tableau n'a que deux éléments (qui sont des matrices, donc des tableaux de tableaux) : je teste donc séparément pour ces deux matrices grâce à ta solution, et ça me convient.
Il fallait être Newton pour apercevoir que la Lune tombe quand tout le monde voit bien qu'elle ne tombe pas.
Paul Valéry
Paul Valéry