Vecteur en matrice
fatmadammak
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
fatma.dammak -
fatma.dammak -
bsr
SVP de m'aider comment rendre un vecteur en matrice avec le diagonale de cette matrice zero:
le vecteur :
C =[
0.8000
1.1000
0.4000
0.4000
0.8000
0.8000]
la matrice:
[0 0.8000 1.1000
0.4000 0 0.4000
0.8000 0.8000 0 ]
svp de m'aider
SVP de m'aider comment rendre un vecteur en matrice avec le diagonale de cette matrice zero:
le vecteur :
C =[
0.8000
1.1000
0.4000
0.4000
0.8000
0.8000]
la matrice:
[0 0.8000 1.1000
0.4000 0 0.4000
0.8000 0.8000 0 ]
svp de m'aider
1 réponse
% On créer une matrice de taille n
n=3;
mat = zeros(n,n);
% on initialise un "pointeur"
x=1;
% on parcours la matrice
for i=1:n
for j=1:n
if i ~=j % si on n'est pas sur la diagonale on rempli avec les valeurs de C
mat(i,j) = C(x);
x = x +1; % On avance notre "pointeur"
end
end
end
J'ai pas testé mais ça devrait marcher, si tu as des questions n'hésite pas... ;)
n=3;
mat = zeros(n,n);
% on initialise un "pointeur"
x=1;
% on parcours la matrice
for i=1:n
for j=1:n
if i ~=j % si on n'est pas sur la diagonale on rempli avec les valeurs de C
mat(i,j) = C(x);
x = x +1; % On avance notre "pointeur"
end
end
end
J'ai pas testé mais ça devrait marcher, si tu as des questions n'hésite pas... ;)
dis=[
0 2 0
0 0 0
0 0 3
0 0 3
0 2 0
0 2 0];
pour la ligne 1 j=2 puisque dis(1,2)~=0
je veux calculer D= max {vkj-vij} j in dis / max(|vkj-vij|) j in v (c a dire la différence entre deux ligne de v avec j obtenue de la matrice dis divisé par la différence entre le max de différence entre ligne de v) (k une ligne de v i la ligne suivante ou précédente)
avec v=
[2.8868 1.6971 2.4618
2.8868 2.1213 1.9695
2.8868 1.2728 2.4618]
merci b pour votre aide