早教吧 育儿知识 作业答案 考试题库 百科 知识分享

求MATLAB牛人指点:如何建立一个10X10阶对称矩阵,对角线元素都是0,其余元素是事先已求出的。感激不尽!具体是这样的:我事先已经求出p(i)、q(r)和s(r)的值了,一共45个数i=1:5;p(i);r=1:20;

题目详情
求MATLAB牛人指点:如何建立一个10X10阶对称矩阵,对角线元素都是0,其余元素是事先已求出的。感激不尽!具体是这样的:我事先已经求出p(i)、q(r)和s(r)的值了,一共45个数 i=1:5; p(i); r=1:20; q(r); s(r); 该怎样定义一个10x10对称阵,对角线元素都是0,并填入这45个数作为元素呢? 财富值不多,还望高手不吝指教~
▼优质解答
答案和解析
用for循环直接对数组进行赋值即可,例如: for i=1:10 for j = 1:10 tem(i, j) = p(1); tem(j, i) = p(1); if i==j tem(i, j) =0; end end end 这里的关键是对数组赋值,您有三个数组p、q、s,需要您根据需要进行判断。 对称阵就是行列变换(转置)后,矩阵不变,用第3、4行实现; 对角线为零,进行第5行的判断就可以了。