How do i create a (n x n) matrix using algorithm or other way whose elements are either -1, +3, –3 & 1 , otherwise 0, such that a11=a22=a33=.....=-1, a12=a23=a34=.....= 3, a13=a24=a35=.......= -3, a14=a25=a36=....= 1,.

1 次查看(过去 30 天)
How do i create a (n x n) matrix using algorithm or other way, whose elements are either -1, +3, –3 & 1 ,such that a11=a22=a33=.....=-1, a12 = a23 = a34 =.....= 3, a13 = a24 = a35=.......= -3, a14 = a25 = a36 =....= 1,otherwise 0.

采纳的回答

Stephen23
Stephen23 2016-1-23
编辑:Stephen23 2016-1-23
You can use toeplitz:
>> N = 6;
>> toeplitz([-1,zeros(1,N-1)],[-1,3,-3,1,zeros(1,N-4)])
ans =
-1 3 -3 1 0 0
0 -1 3 -3 1 0
0 0 -1 3 -3 1
0 0 0 -1 3 -3
0 0 0 0 -1 3
0 0 0 0 0 -1
If N can be less than four, then you will need to do this:
>> N = 3;
>> C = [-1,3,-3,1,zeros(1,N-4)];
>> R = [-1,zeros(1,N-1)];
>> toeplitz(R(1:N),C(1:N))
ans =
-1 3 -3
0 -1 3
0 0 -1
  1 个评论
Stephen23
Stephen23 2016-1-24
It is trivial to make this work with non-square matrices:
>> M = 5;
>> N = 7;
>> toeplitz([-1,zeros(1,M-1)],[-1,3,-3,1,zeros(1,N-4)])
ans =
-1 3 -3 1 0 0 0
0 -1 3 -3 1 0 0
0 0 -1 3 -3 1 0
0 0 0 -1 3 -3 1
0 0 0 0 -1 3 -3

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Elementary Math 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by