Somam matrici matlab

summer.911
Ragazzi ho un problema con una semplicissima funzione in matlab,sevo somamre due amtrici ma non mi riesce..ho risolto così:

%Somma matrici
n=input('dammi il numero di righe');
m=input('dammi il numero di colonne');
i=0;
j=0;
m=[0,0];
for i=1:n
for j=1:m
m(i,j)=input('dammi i valori in matrice');
end
end
disp('la mia matrice è:');
m

a=input('dammi il numeri di righe della seconda matrice');
b=input('dammi il numero di colonne della seconda matrice');
k=0;
h=0;
M=[0,0];
for k=1:a
for h=1:b
M(k,h)=input('dammi gli elementi della matrice');
disp('la mia matrice è:');
M
end
end
somma=m(i,j)+M(h,k);
disp('la somma è:');
somma


ho provato anke a mettere lo stesso numero di righe e colonne..ma niente e x di + l inizzializzazione della prima amtrice che creo mi fa uscire una amtrice di soli zeri:S e non riescoa speigarmi il xkè!
qualcuno sa aiutarmi?:(
grazie anticipatamente

Risposte
Umby2
Non ho capito cosa hai fatto alla fine...
Hai accettato in input la prima matrice, poi la seconda, e poi ??? cosa intendi fare ?

summer.911
la somam delle due matrici..elemento per elemento..devo farle scorrere con un altro ciclo for? non ne ho idea:S

Umby2
Intendi sommarle per metterle in una terza matrice ?
Ti serve solo il totale?

In ogni caso certo che le devi scorrere con altro ciclo.

summer.911
devo sommarle e metterle in una terza matrice..mmm
forse devo provare a creare uan matrice A che inizializzo con zero e faccio scorrere con il ciclo for sia per i,j,k,h ?
e poi scrivo A=m(i,j)+M(k,h)?
ma in qeusto caso devo trovare anke delle nuove variabili x A?
e sopratutto xkè la mia inizializzazione della prima matrice mi porta ad avere una amtrice di zeri e mi esce "inserire i numeri in matrice?"
scusa l ignoranza..XD

Feliciano1
Tu vuoi prendere in ingresso due matrici e mettere la loro somma in una terza. Giusto?

alcuni commenti: le matrici devono avere le stesse dimensioni quindi basta prenderle in ingresso una sola volta, la struttura del for in matlab è for (...) ... else ... end, prima del ciclo for non è necessario inizializzare le variabili di conteggio
ed infine il bello di Matlab (Matrix Laboratory) è proprio che per sommare due matrici non devi fare nessun ciclo

%Somma matrici
clear all
close all
clc
n=input('dammi il numero di righe>>');
m=input('dammi il numero di colonne>>');
%prima amtrice
M1=[0,0];
for (i=1:n)
for (j=1:m)
M1(i,j)=input('dammi i valori in matrice M1>>');
end
end
disp('la mia matrice è:');
M1
%seconda amtrice
M2=[0,0];
for (i=1:n)
for (j=1:m)
M2(i,j)=input('dammi i valori in matrice M2>>');
end
end
disp('la mia matrice è:');
M2
%somma
somma=M1+M2
disp('la somma è:');
somma

summer.911
grazie mille..:):):) sei stato gentilissimo:)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.