Bonjour à tous !
Alors voila, j'ai un petit souci dans mon code matlab pour stocker une matrice sous forme d'un tableau particulier.
Je m'explique : Voici la matrice, j'aimerais stocker les termes qui sont au dessus de la diagonale (les termes diagonaux n'étant pas compris) dans un tableau que j'ai appelé Tab_col (voir code ci dessous), seulement je veux stocker les termes qui sont sous les lignes vertes (donc éviter les deux 0 qui sont en haut)
Voici le code :Le souci c'est que lorsque j'affiche Tab_col voici le résultat :
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 n=6; A=[2 0 1 0 -1 6; 0 1 4 2 1 4; -1 2 3 0 3 1; 0 1 0 -1 0 2; 5 -1 2 0 4 3; -2 4 -3 1 -2 1] tic k=1; Tab_col=zeros(1,13); for j=2:n for i=1:n if (j>i & A(1,j)~=0) Tab_col(1,k)=A(i,j); k=k+1; end end end Tab_col disp('Tableau Tab_col enregistré')
Tab_col= 1 4 -1 1 3 0 6 4 1 2 3 0 0
Alors que j'aimerais avoir :
Tab_col= 1 4 2 0 -1 1 3 0 6 4 1 2 3
En fait mon programme si il voit le 0 tout en haut il passe directement au stockage de la colonne d'après et je ne sais pas d'ou ca vient!
Votre aide m'est précieuse !!
Merci
PS : Autre question, savez vous quelle taille max peut on donner à une matrice sous matlab?
Merci![]()
Partager