Page 1 sur 1

A+1

Publié : jeu. sept. 30, 2010 6:15 pm
par frederic han
Bonjour,

j'ai un truc bizarre. (versions 0.9 et 0.8 recente)

A:=matrix(5,5)
A+1

alors A n'est pas nulle. (et n'a que des 1)

B:=matrix(5,5,(j,k)->rand(10))
B+1
alors cette fois c'est l'identite qui est ajoutee a B, et B est encore modifiee.

Fred

Re: A+1

Publié : jeu. sept. 30, 2010 7:50 pm
par alb
l'exemple de l'aide matrix(4,3,(j,k)->j+k) me renvoie [[0,1,2],[1,2,3],[2,3,4],[3,4,5]]
alors qu'il est indiqué dans l'aide [[2,3,4],[3,4,5],[4,5,6],[5,6,7]]

Re: A+1

Publié : ven. oct. 01, 2010 7:13 am
par parisse
il faut qu'on change l'aide. En effet la fonction (en mode xcas) doit tenir compte de la numerotation des indices commencant a 0 et non a 1.
Pour le probleme de la modification en place de A, je viens de le corriger dans le source

Code : Tout sélectionner

diff gen.cc gen.cc~
4559,4563c4559,4560
<         for (int i=0;i<s;i++){
<           vecteur v = *res[i]._VECTptr;
<           v[i] += b;
<           res[i]=gen(v,res[i].subtype);
<         }
---
>         for (int i=0;i<s;i++)
>           (*(res[i]._VECTptr))[i] = (*(res[i]._VECTptr))[i] + b;
les binaires windows et linux devraient suivre d'ici midi.