网站大量收购独家精品文档,联系QQ:2885784924

八皇后问题matlab程序.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精品文档 精品文档 PAGE PAGE4 精品文档 PAGE functiony=bahuanghou(); result=cell(1,8); N=100; fori=1:8 result{i}={[1,i]}; end; fori=1:8 forj=2:8 len=length(result{i}); flagss=0;%看每一行运行的时候是不是第一次 new_len=len; form=1:len aa=result{i}; bb=aa{m}; flags=0;%看第k行是否合适 fork=1:8 flags=0; iflength(bb)=j-2+eps%看找到的各行的点是否不合适了 %,不合适就停止议论 continue; else 1/4 cc=zeros(j-1,1); cc=bb(1:j-1,2); forkk=1:length(cc(: ,1)) iffind(cc(kk)==k)%如果发现在同一列上,跳出循环,持续下一列 flags=1; break; end; ifabs(k-cc(kk))==j-kk%如果在斜对角线上,跳出,持续下一列 flags=1; break; end; end; ifflags continue; end; if~flagss aa{m}=[bb;j,k];%如果是第一次找到那一列,就直接在其末尾增加这个点 result{i}=aa; flagss=flagss+1; else new_len=new_len+1;%如果不是第一次找到,就要新开辟一个会合 aa{new_len}=[bb;j,k]; 2/4 result{i}=aa; end; end; end; end; end; end; ret=zeros(8,N); ret=zeros(8,1); %寻找我已经找到的八皇后的结果 fori=1:8 aa=result{i}; len=length(aa); form=1:len bb=aa{m}; iflength(aa{m})==8 ret=[retbb]; end; end; end; %display(ret); 3/4 %把八皇后的结果写入 txt文档中进行结果保留 fid=fopen(F: \ang.txt,w) fori=2:length(ret) fprintf(fid,%d%d%d%d%d%d%d%d\r\n,ret(: ,i)); ifmod(i,2) fprintf(fid,\r\n); end; end; size(ret) 4/4

文档评论(0)

135****9629 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档