matlab - 根据数组的长度创建数字模式

标签 matlab math matrix octave

根据数组的长度创建一个数字模式,这个例子很小,只是展示了如果数组的大小为 5,6 或 7 会是什么样子。(数组的实际长度约为 400,000)

我怎样才能得到这个数字模式。我当时认为它看起来有点像帕斯卡三角,但数字不对。

我正在使用类似于 Matlab 的 Octave 3.8.1


示例:如果一个数组的长度为 5,则该系列将是

a1=[1 1 1;1 2 2;1 2 3;1 2 2;1 1 1]
a2=[1 1 1;2 2 1;3 2 1;2 2 1;1 1 1]

示例:如果一个数组的长度为 6,则该系列将是

a1=[1 1 1;1 2 2;1 2 3;1 2 3;1 2 2;1 1 1]
a2=[1 1 1;2 2 1;3 2 1;3 2 1;2 2 1;1 1 1]

示例:如果一个数组的长度为 7,则该系列将是

a1=[1 1 1 1;1 2 2 2;1 2 3 3;1 2 3 4;1 2 3 3;1 2 2 2;1 1 1 1]
a2=[1 1 1 1;2 2 2 1;3 3 2 1;4 3 2 1;3 3 2 1;2 2 2 1;1 1 1 1]

见下图: Image of number pattern going up and going down

最佳答案

这应该是相当快的:

n = 9;

a1 = bsxfun(@min, min(1:n,n:-1:1).', 1:ceil(n/2));
a2 = a1(:,end:-1:1);

关于matlab - 根据数组的长度创建数字模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29031368/

相关文章:

matlab - 如何在 Matlab 中发送描述矩阵内容的电子邮件

javascript - 在 paperjs 中围绕中心点绘制 X 度弧?

algorithm - 数值优化和最小化

c++ - 如何在 opencv 中访问 yml 文件的元素?

python - OpenCV中的imagesc相当于什么

matlab - 如何获取单选按钮的选定值?

image - 为什么我在 MATLAB 中加载此 PNG 时得到全黑/灰度图像?

latex - 有没有带有 LaTeX 语法的计算器?

matlab - 根据范围索引从矩阵中提取行?

c - c中使用结构的矩阵乘法