m0_56220585 2023-03-16 20:27 采纳率: 25%
浏览 35
已结题

连续时间的日数 连续时间的日数

如果
A=[1 4 5 1 1 2 3 4 6 7 1 7 8 1 9 8 7 6 2 3 5 5]
求大于等于2的连续日数
即4 5为2天
2 3 4 6 7 为5天
7 8 为2天
9 8 7 6 2 3 5 5为8天
故 结果为2 5 2 8
请问,如何用matlab的语言实现这一步呢?

  • 写回答

2条回答 默认 最新

  • Leodong. 2023-03-16 21:01
    关注

    可以使用MATLAB的循环和条件语句实现的。

    
    A = [1 4 5 1 1 2 3 4 6 7 1 7 8 1 9 8 7 6 2 3 5 5];
    n = length(A);
    count = 0;
    result = [];
    for i = 1:n-1
        if A(i) >= 2
            count = count + 1;
        elseif count > 0
            result(end+1) = count;
            count = 0;
        end
    end
    if A(n) >= 2
        result(end+1) = count + 1;
    else
        result(end+1) = count;
    end
    disp(result);
    
    

    如果以上回答对您有所帮助,望采纳~谢谢

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

报告相同问题?

问题事件

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