weixin_55201368 2023-02-19 09:46 采纳率: 100%
浏览 209
已结题

matlab循环编程如何输出每次循环的结果

请问如何得到每次循环的x1,y1呢?现在的程序只能得到最后一次循环的结果

clear;
clc;
x=[1 2 3 4 5]
y=[4 5 6 7 8]
for t=1:10
M=[1    0     t;
   0    1     0;
   0    0     1;]; 
P0(1,:)=x;
P0(2,:)=y;
P0(3,:)=1;
P1=M*P0;
x1=P1(1,:);
y1=P1(2,:);
end
plot(x1,y1)

  • 写回答

2条回答 默认 最新

  • CodeBytes 2023-02-19 10:08
    关注

    该回答引用ChatGPT

    在循环内部创建一个数组,将每次循环得到的 x1 和 y1 存储在该数组中,最后绘制完整的轨迹。

    以下是一个示例代码,展示如何在每次循环中保存 x1 和 y1 值:

    clear;
    clc;
    x = [1 2 3 4 5];
    y = [4 5 6 7 8];
    x1_all = [];  % 用于存储每次循环的 x1 值
    y1_all = [];  % 用于存储每次循环的 y1 值
    
    for t = 1:10
        M = [1 0 t; 0 1 0; 0 0 1];
        P0(1,:) = x;
        P0(2,:) = y;
        P0(3,:) = 1;
        P1 = M * P0;
        x1 = P1(1,:);
        y1 = P1(2,:);
        x1_all = [x1_all, x1];  % 将本次循环得到的 x1 追加到 x1_all 数组末尾
        y1_all = [y1_all, y1];  % 将本次循环得到的 y1 追加到 y1_all 数组末尾
    end
    
    plot(x1_all, y1_all)  % 绘制完整的轨迹
    
    
    

    在上面的代码中,我们创建了两个数组 x1_all 和 y1_all,分别用于存储每次循环得到的 x1 和 y1 值。在每次循环结束后,我们将本次循环得到的 x1 和 y1 值追加到 x1_all 和 y1_all 数组的末尾。最后,我们使用 plot 函数绘制完整的轨迹。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月27日
  • 已采纳回答 2月19日
  • 创建了问题 2月19日

悬赏问题

  • ¥15 如何查看h3c 5130s-28f-si交换机配置 及更改网口
  • ¥15 HFSS仿真喇叭天线阵列方向图出现异常
  • ¥15 blender自发光强度
  • ¥15 FIR滤波器算法设计与实现(利用库函数firdec()
  • ¥15 利用单片机产生正弦信号,来测量差分放大电路放大倍数和共模放大倍数的思路和仿真
  • ¥60 关于mavlink的论文咨询
  • ¥66 定制开发肯德基自动化网站下单软件
  • ¥15 中科院研发的TextMind(文心)
  • ¥20 vscode虚拟环境依赖包未安装
  • ¥15 odoo17关于owl开发js代码问题