bonjour à tous

je débute sur Matlab et j'essaye d’écrire un programme de calcul de matrice avec la méthode d’élimination de gauss ce pendant je reçois un message d'erreur :

Attempted to access a(9,:); index out of bounds
because size(a)=[8,7].

Error in Untitled_test_essais (line 16)
        a(i,:)=a(i,:)-a(j,:)*(a(i,j)/a(j,j));
voici le programme en question


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
a=[0.866 0.000 0.000 0.000 0.000 0.000 0.000; 0.5000 1.000 0.000 0.000 0.000 0.000 0.000; 0.866 0.000 0.866 0.000 0.000 0.000 0.000; -0.500 0.000 0.5000 1.000 0.000 0.000 0.000; 0.000 0.000 0.866 0.000 0.866 0.000 0.000; 0.000 -1.000 -0.500 0.000 0.500 1.000 0.000; 0.000 0.000 0.000 -1.000 -0.500 0.000 0.500; -2933.000 1000.000 0.000 -1000.000 5000.000 0.000 0.000]
[m,n]=size(a);
for j=1:m-1
    for z=2
        if a(j,j)==0
            t=a(1,:);a(1,:)=a(z,:);
            a(z,:)=t;
        end
    end
    for i=j+1:m
        a(i,:)=a(i,:)-a(j,:)*(a(i,j)/a(j,j));
    end
end
for j=m:-1:2
    for i=j+1
        a(i,:)=a(i,:)-a(j,:)*(a(i,j)/a(j,j));
 
    end
end
for s=1:m
    a(s,:)=a(s,:)/a(s,s);
    x(s)=a(s,n)
end
disp ('Gauss-Jordan méthode:');
a
x'