我需要使用只有一個命令創建以下矩陣具有特定元素的矩陣:需要而無需鍵入它明確地創建僅使用一個命令
M = [0 0 0 0 0 0;...
0 0 0 0 0 0;...
0 0 0 0 0 0;...
0 0 0 1 2 3;...
0 0 0 4 5 6;....
0 0 0 7 8 9]
我是新在這等我不能使用任何複雜的命令。
我試着用linspace
加上zeros
,但是效果不好。
請幫忙!!
我需要使用只有一個命令創建以下矩陣具有特定元素的矩陣:需要而無需鍵入它明確地創建僅使用一個命令
M = [0 0 0 0 0 0;...
0 0 0 0 0 0;...
0 0 0 0 0 0;...
0 0 0 1 2 3;...
0 0 0 4 5 6;....
0 0 0 7 8 9]
我是新在這等我不能使用任何複雜的命令。
我試着用linspace
加上zeros
,但是效果不好。
請幫忙!!
更正Alex的答案:
M = zeros(6)
M(4:6,4:6) = [1,2,3;4,5,6;7,8,9]
這是如何回答這個問題的?這不完全是一個單一的命令解決方案... – Shai
這是最簡單的方法! –
不知道Matlab的,但在八度,你可以這樣做:
M = [zeros(3, 6); zeros(3), [1:3; 4:6; 7:9]]
如果矩陣M
沒有定義,你可以跳過zeros(6)
(由AlexL建議),並直接進入
M(4:6, 4:6) = reshape(1:9, [3 3]).'; %'
另一種簡單和緊湊oneliner,結合一些已經提到的事對於MATLAB和Octave:
M(4:6,4:6) = [1:3;4:6;7:9]
這個要求的基礎是什麼? –
by single command你是指單行嗎? – bla
如果提供動機,我會對此問題+1:爲什麼這是「單一命令」要求? – Shai