how sum all element which are the right of diagonal. where row=colom .....i have done this much but confuse in further operation
    1 view (last 30 days)
  
       Show older comments
    
function summa = halfsum(A)
    %A = randi(n,x,y);
    [row,col] = size(A);
    if row == col
        for r = 1:row
            for c = 1:col
                summa = sum(A(r,c)) + sum(A(r,c));
            end
        end
    else
        fprintf('Input correct matrix.\n')
    end
end

2 Comments
  Image Analyst
      
      
 on 26 Sep 2020
				Is this homework (sounds a lot like it)?  If so, tag as homework.  In the meantime, check out triu() and tril(), and consider if r <= or >= c
if c >= r    % or....
if c <= r   
if you want/need to do it as a for loop.
Answers (1)
  KSSV
      
      
 on 26 Sep 2020
        
      Edited: KSSV
      
      
 on 26 Sep 2020
  
      Read about triu.
If A is your matrix, use:
iwant = sum(sum(triu(A)))
3 Comments
  KSSV
      
      
 on 26 Sep 2020
				Read the documentation..it is clear in the documentation. 
Also you can use loops like below:
A = rand(3) ;
[m,n] = size(A) ; 
upper_diagonal = zeros([],1) ; 
count = 0 ;
for i = 1:m
  for j = 1:n
    if i<=j
      count = count+1 ; 
      upper_diagonal(count) = A(i,j) ; 
    end
  end
end
See Also
Categories
				Find more on Creating and Concatenating Matrices in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!