QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6273|回复: 16
打印 上一主题 下一主题

找出满足条件的所有矩阵并且输出

[复制链接]
字体大小: 正常 放大
khafi        

8

主题

5

听众

160

积分

升级  30%

  • TA的每日心情
    郁闷
    2012-10-15 16:45
  • 签到天数: 61 天

    [LV.6]常住居民II

    群组学术交流A

    跳转到指定楼层
    #
    发表于 2012-8-7 13:48 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    20体力
    本帖最后由 大笨象 于 2012-8-7 14:34 编辑

    有个n×n 矩阵元素只能为0或1  矩阵行列相同时的元素为0   矩阵所有元素和为n*(n-1)/2  求帮助

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持1 反对反对0 微信微信

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    回复

    使用道具 举报

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    function res=fun(n)
    k=1;
    %n为构造矩阵阶数;
    N=n*(n-1)/2; %判断有多少个1;
    index0=1:n^2;
    for i=1:n^2
        if i~=11+n)n^2)
        index(k)=index0(i);
        k=k+1;
        end
    end  %保证主对角线为0
    kind=nchoosek(index,N);
    res=zeros(n,n,kind);
    for i=1:size(kind,1)
        s0=zeros(n);
          for j=1:N
              s0(kind(i,j))=1;
              res(:,:,i)=s0;
          end
    end
    回复

    使用道具 举报

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    回复

    使用道具 举报

    1

    主题

    5

    听众

    100

    积分

    升级  0%

  • TA的每日心情
    开心
    2012-9-9 08:35
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    群组第四届cumcm国赛实训

    群组学术交流A

    群组学术交流B

    回复

    使用道具 举报

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    function res=fun(n)
    k=1;
    %n为构造矩阵阶数;
    N=n*(n-1)/2; %判断有多少个1;
    index0=1:n^2;
    for i=1:n^2
        if i~=11+n)n^2)
        index(k)=index0(i);
        k=k+1;
        end
    end  %保证主对角线为0
    kind=nchoosek(index,N);
    res=zeros(n,n,kind);
    for i=1:size(kind,1)
        s0=zeros(n);
          for j=1:N
              s0(kind(i,j))=1;
              res(:,:,i)=s0;
          end
    end
    res %矩阵保存变量
    回复

    使用道具 举报

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    function res=fun(n)
    k=1;
    %n为构造矩阵阶数;
    N=n*(n-1)/2; %判断有多少个1;
    index0=1:n^2;
    for i=1:n^2
        if i~=11+n)n^2)
        index(k)=index0(i);
        k=k+1;
        end
    end  %保证主对角线为0
    kind=nchoosek(index,N);
    res=zeros(n,n,kind);
    for i=1:size(kind,1)
        s0=zeros(n);
          for j=1:N
              s0(kind(i,j))=1;
              res(:,:,i)=s0;
          end
    end
    res %矩阵保存变量
    回复

    使用道具 举报

    0

    主题

    5

    听众

    86

    积分

    升级  85.26%

  • TA的每日心情
    郁闷
    2012-8-28 20:11
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    学生

    群组数学建模培训课堂1

    function res=fun(n)
    k=1;
    %n为构造矩阵阶数;
    N=n*(n-1)/2; %判断有多少个1;
    index0=1:n^2;
    for i=1:n^2
        if i~=11+n)n^2)
        index(k)=index0(i);
        k=k+1;
        end
    end  %保证主对角线为0
    kind=nchoosek(index,N);
    res=zeros(n,n,kind);
    for i=1:size(kind,1)
        s0=zeros(n);
          for j=1:N
              s0(kind(i,j))=1;
              res(:,:,i)=s0;
          end
    end
    res %矩阵保存变量
    回复

    使用道具 举报

    wish_豪 实名认证    中国数模人才认证   

    1

    主题

    3

    听众

    207

    积分

    升级  53.5%

  • TA的每日心情
    开心
    2013-11-27 19:05
  • 签到天数: 57 天

    [LV.5]常住居民I

    群组Matlab讨论组

    群组数学建模

    群组数学建摸协会

    khafi 发表于 2012-8-8 16:33
    你的回答非常感谢。不过我可能没表达清楚。不是判断是输出所有满足要求的矩阵。 比如如果是4阶矩阵    ...

    你这个问题估计3,4阶估计没啥问题,阶数一高符合要求的矩阵就会呈几何倍上升的
    回复

    使用道具 举报

    khafi        

    8

    主题

    5

    听众

    160

    积分

    升级  30%

  • TA的每日心情
    郁闷
    2012-10-15 16:45
  • 签到天数: 61 天

    [LV.6]常住居民II

    群组学术交流A

    wish_豪 发表于 2012-8-8 15:19
    随便编写个 你试试
    function panduan=duan(w)
    %判断n阶矩阵

       你的回答非常感谢。不过我可能没表达清楚。不是判断是输出所有满足要求的矩阵。 比如如果是4阶矩阵      [0 1 1 1;0 0 1 1;0 0 0 1;0 0 0 0]就是满足要求的我想把满足要求的全部找出来
    回复

    使用道具 举报

    wish_豪 实名认证    中国数模人才认证   

    1

    主题

    3

    听众

    207

    积分

    升级  53.5%

  • TA的每日心情
    开心
    2013-11-27 19:05
  • 签到天数: 57 天

    [LV.5]常住居民I

    群组Matlab讨论组

    群组数学建模

    群组数学建摸协会

    随便编写个 你试试
    function panduan=duan(w)
    %判断n阶矩阵
    [a,b]=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
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-15 12:59 , Processed in 0.613767 second(s), 102 queries .

    回顶部