skouatteur
Messages postés2Date d'inscriptionjeudi 23 novembre 2006StatutMembreDernière intervention23 novembre 2006
-
23 nov. 2006 à 08:52
skouatteur
Messages postés2Date d'inscriptionjeudi 23 novembre 2006StatutMembreDernière intervention23 novembre 2006
-
23 nov. 2006 à 17:13
bonjour tout le monde
je me suis inscrit sur ce site afin d'avoir un coud de main sur un logiciel qui s'appelle maple et j'espere que l'on pourra m'aider
je m'escuse d'avance si j'ai postez sur le mauvais forum
voila ce que je doit faire:
En fait, j'ai une matrice A de M(n,m) de R qui est une matrice rectangulaire à n lignes et m colonnes.
et moi je doit déterminer une procédure qui prend comme argument la matrice A et qui renvoie le rang de A et des matrices P appartenant à GL(n) de R,Q appartenant à GL(m) de R, B appartenant à M(n,m) de R telles que P*A*Q=B, avec B une matrice telle que si r est son rang, on ait b(1,1)....,b(r,r) non nuls et b(i,j)=0 si i>r ou si (j<=r et j with(student):
> pivot_cherche:=proc(A::matrix,k::integer)
local i,j;
for j from k to coldim(A) do
for i from k to rowdim(A) do
if A[i,j]<>0 then
return([i,j]);
end if;
end do;
end do;
return([0,0]);
end proc
>
pivot_elim:=proc(A::matrix,k::integer)
local B,i;
B:=A;
for i from (k+1) to rowdim(B) do
B:=addrow(B,k,i,-B[i,k]/B[k,k]);
end do;
return(B);
end proc;
gauss_elim:=proc(A::matrix)
local B,d,k,pivot;
B:=A;
d:=min(rowdim(B),coldim(B));
for k from 1 do
pivot:=pivot_cherche(B,k);
if pivot=[0,0] then
return(evalm(B),k-1);
else
B:=swaprow(B,k,pivot[1]);
B:=swapcol(B,k,pivot[2]);
B:=pivot_elim(evalm(B),k);
end if;
end do;
end proc;
mon probleme est que je suis censé écrire que une procédure et moi j'en ai plusieurs
de plus, dans le résultat final, P et Q doivent etre affiché mais moi je ne vois pas comment faire pour que celle ci s'affiche!
skouatteur
Messages postés2Date d'inscriptionjeudi 23 novembre 2006StatutMembreDernière intervention23 novembre 2006 23 nov. 2006 à 17:13
je ne saurais vous dire quel language j'ai utilisé...je sais juste que c'est celui utilisé avec le logiciel maple!
de toute facon, j'ai trouver la solution en 1 seule procédure!
merci quand meme!