Azzera filtri
Azzera filtri

I have to find the sum of the elements in the upper dimension matrix and this is the code i came up with. When I submitted this code it's showing error.

2 visualizzazioni (ultimi 30 giorni)
function summa=halfsum(A)
n=length(A);
k=1;
[m,p]=size(A);
if m~=p
return
else
summa=0;
for i=1:n
for j=k:n
summa=summa+A(i,j);
end
k=k+1;
end
end
  2 Commenti
MANOGNA POTLURI
MANOGNA POTLURI il 14 Lug 2020
function summa=halfsum(A)
summa=0;
n=length(A);
k=1;
[m,p]=size(A);
if m~=p
if p>m
A(p,p)=0;
elseif m>p
A(m,m)=0;
end
end
for i=1:n
for j=k:n
summa=summa+A(i,j);
end
k=k+1;
end
end
MANOGNA POTLURI
MANOGNA POTLURI il 14 Lug 2020
i got it now; the prof also wants to convert a non-square matrix to a square matrix and then find the halfsum.

Accedi per commentare.

Risposta accettata

David Hill
David Hill il 14 Lug 2020
Why not just:
[a,b]=size(A);
if a==b
summa=sum(triu(A),'all');
end

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by