风落平川 2024-03-21 20:02 采纳率: 96.7%
浏览 10
已结题

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 20: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月29日
  • 已采纳回答 3月21日
  • 创建了问题 3月21日

悬赏问题

  • ¥15 关于模型导入UNITY的.FBX: Check external application preferences.警告。
  • ¥15 气象网格数据与卫星轨道数据如何匹配
  • ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
  • ¥15 微软账户问题不小心注销了好像
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题