【问题标题】:Splitting up number by certain amount按一定数量拆分数字
【发布时间】:2013-07-18 03:57:34
【问题描述】:

我正在尝试按给定值 (4000) 拆分数字并将数字放在一个数组中

示例: 给出的最大值是:8202

所以 split_array 应该被 4000 分割,除非它到达末尾并且小于 4000 在这种情况下,它只会走到最后。

start_pos, end_pos
0,4000
4001,8001
8002,8202

so the first row in the array would be
[0 4000]
second row would be
[4001 8001]
third row would be 
[8002 8202]

请注意,最大值可以从 (8202) 更改为任何其他数字,例如 (16034),但不能是小数 如何使用 matlab / octave 进行此操作

【问题讨论】:

  • 在您的示例中,第一行是[0 4000] 还是0:4000?你是只包括开始和结束还是两者之间的所有内容?
  • @horchler 第一行是 [0 4000]

标签: matlab if-statement for-loop while-loop octave


【解决方案1】:

这应该会产生你想要的

n = 8202;
a = [0:4001:n; [4000:4001:n-1 n]]'

返回

a =
           0        4000
        4001        8001
        8002        8202

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    • 2022-11-14
    • 2018-07-06
    • 1970-01-01
    相关资源
    最近更新 更多