风落平川 2024-03-21 12:02 采纳率: 96.8%
浏览 11
已结题

matlab如何自行编写矩阵上下翻转的函数?


function y=overturnlr(x)
n=size(x,1);
y=x(n:-1:1,:);
end

自己编写了左右翻转的运行正常,上下翻转函数如下

function y=overturnud(x)
n=size(x,2);
y=x(:,n:-1:1);
end

运行结果还是左右翻转,是哪里错了?

>> A

A =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

>> A2=overturnud(A)

A2 =

    15     8     1    24    17
    16    14     7     5    23
    22    20    13     6     4
     3    21    19    12    10
     9     2    25    18    11

展开全部

  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-21 12:02
    关注

    引自免费微信小程序:皆我百晓生

    在你给出的上下翻转函数中,错误在于对矩阵进行索引时使用了列索引而非行索引。对于矩阵的上下翻转,你需要保留列不变,改变行的位置。因此,正确的上下翻转函数应该按照以下方式编写:

    function y=overturnud(x)
    n=size(x,1); % 获取矩阵x的行数
    y=x(n:-1:1,:); % 使用行索引进行翻转
    end
    

    现在,当你用这个修正后的函数对矩阵A进行上下翻转时,将得到期望的结果:

    A =
    
        17    24     1     8    15
        23     5     7    14    16
         4     6    13    20    22
        10    12    19    21     3
        11    18    25     2     9
    
    A2 = overturnud(A);
    
    A2 将会是:
    
        11    18    25     2     9
        10    12    19    21     3
         4     6    13    20    22
        23     5     7    14    16
        17    24     1     8    15
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(5条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 3月28日
  • 已采纳回答 3月21日
  • 创建了问题 3月21日

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部