MATLAB矩阵题 请教 在线等 急!!!!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/27 05:50:23
1. 生成一个10x10矩阵,矩阵中左下三角部分元素为0,对角线元素为50,其它元素为0到99间的随机数
2. 生成一个10x10矩阵,其中心的4x4方阵元素为0,其余元素为1.
3. 生成一个10x10矩阵,元素为
1、2、3、4、5、6、7、8、9、0
2、3、4、5、6、7、8、9、0 、1
3、4、5、6、7、8、9、0 、1 、2

0 、1 、 2、3、4、5、6、7、8、9
4. 将101~125等25个数填入一个5行5列的表格中,使其每行每列及对角线的和均为565。
5. 计算3的x次方,x=1,2,3,…,15
6. 生成一个10x10矩阵,矩阵中的元素为-100到100间的随机整数

%%%%%%%%%%%%%这里给出两组程序,一组是一个for都没有的。另一组全部都有for的,你自己选用一组吧。

%%%%一个for都没有的。
%1
n=10;
A=diag(50*ones(n,1));
A=A+triu(rand(n)*99,-1)

%2
n1=8;
n2=4;
nstart=floor((n1-n2)/2)+1; %中间的起始位置
A=zeros(n1);
A(nstart:nstart+n2-1,nstart:nstart+n2-1)=ones(n2);

%3
A=repmat(1:10,10,1);
A=mod(A+A'-1,10)

%4
A=100+magic(5)

%5
3.^[1:15]

%6
-100+(100--100)*rand(10)

%%%%%%%%%%%%%%%%%%%%上面全部不用循环完成
%%下面全部用循环来做
%1
for i=1:10
for j=1:10
if i<j %上三角
A(i,j)=99*rand(1);
elseif i==j
A(i,j)=50;
else
A(i,j)=0;
end
end
end
A

%2
n1=10;
n2=4;
nstart=(n1-n2)/2+1;
for i=1:n1
for j=1:n1
if i>=nstart && i<=nstart+n2-1 && j>=nstart && j<=nstart+n2-1
A(i,j)=1;
else
A(i,j)=0;
end
end
end