找出满足条件的所有矩阵并且输出
本帖最后由 大笨象 于 2012-8-7 14:34 编辑有个n×n 矩阵元素只能为0或1 矩阵行列相同时的元素为0 矩阵所有元素和为n*(n-1)/2 求帮助 本帖最后由 大笨象 于 2012-8-7 14:34 编辑
希望大家讨论 这个简单吧,用个最简单的循环都可以做出来。。 求教。。。
把问题再描述的清楚一些。 把问题再描述的清楚一些。 本帖最后由 wish_豪 于 2012-8-8 10:31 编辑
先判断是否为n*n矩阵,再判断元素和是否符合要求,再用diag提取主对角线元素,直接求其和,判断是否为0。最后循环判断每个元素是否为0或1
最后一步暂时不知不用循环能否做出来 随便编写个 你试试
function panduan=duan(w)
%判断n阶矩阵
=size(w);
if a~=b
disp('矩阵不是n阶矩阵');
panduan=0;
return
else
panduan=1;
end
%判断元素和
if sum(w)~=a*(a-1)/2
disp('元素和不符合要求');
panduan=0;
return
else
panduan=1;
end
%判断主对角线元素和是否为0
if sum(diag(w))~=0
disp('主对角线元素和不为0');
panduan=0;
return
else
panduan=1;
end
for i=1:a
for j=1:a
if w(i,j)==0||w(i,j)==1
panduan=1;
else
disp('元素不为0或1');
panduan=0;
return
end
end
end wish_豪 发表于 2012-8-8 15:19 static/image/common/back.gif
随便编写个 你试试
function panduan=duan(w)
%判断n阶矩阵
你的回答非常感谢。不过我可能没表达清楚。不是判断是输出所有满足要求的矩阵。 比如如果是4阶矩阵 就是满足要求的我想把满足要求的全部找出来 khafi 发表于 2012-8-8 16:33 static/image/common/back.gif
你的回答非常感谢。不过我可能没表达清楚。不是判断是输出所有满足要求的矩阵。 比如如果是4阶矩阵 ...
你这个问题估计3,4阶估计没啥问题,阶数一高符合要求的矩阵就会呈几何倍上升的
页:
[1]
2