m0_63360141 2021-11-17 11:55 采纳率: 83.3%
浏览 33
已结题

用matlab编写函数来实现triu函数的功能

img

  • 写回答

1条回答 默认 最新

  • CSDN专家-Matlab_Fans 2021-11-17 20:23
    关注
    
    function Test
    
    A = [1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16];
    B1 = myfunciton(A)
    B2 = triu(A)
    
    B1 = myfunciton(A,2)
    B2 = triu(A)
    
    
    function B = myfunciton(A,k)
    
    if nargin == 1
        k = 0;
    end
    
    B = A;
    for ii = 1:length(A)
        for jj = 1:length(A)
            if jj - ii < k
                B(ii,jj) = 0;
            end
        end
    end
    
    

    结果:

    
    
    B1 =
    
         1     2     3     4
         0     6     7     8
         0     0    11    12
         0     0     0    16
    
    
    B2 =
    
         1     2     3     4
         0     6     7     8
         0     0    11    12
         0     0     0    16
    
    
    B1 =
    
         0     0     3     4
         0     0     0     8
         0     0     0     0
         0     0     0     0
    
    
    B2 =
    
         0     0     3     4
         0     0     0     8
         0     0     0     0
         0     0     0     0
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月26日
  • 已采纳回答 11月18日
  • 创建了问题 11月17日