全排列三阶数独讲义x.docx_第1页
全排列三阶数独讲义x.docx_第2页
全排列三阶数独讲义x.docx_第3页
全排列三阶数独讲义x.docx_第4页
全排列三阶数独讲义x.docx_第5页
全文预览已结束

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文介绍一个三阶数独产生。通过判断1到9的全排列来判定是不是三阶数独。全排列方法:本文不采用递归法,因为递归法比较费解。而是采用最简单,最符合逻辑的方法,而且运算速度很快。基本逻辑如下例子:例:13的全排列:For a=1 to 3第一个数从1到3遍历For b=1 to 3第二个数也从1到3遍历If ba then第二个数不能等于第一个数For c=1 to 3第三个数从1到3遍历If ca and cb then第三个数不能等于第一个和第二个数Print a+”,”+b+”,”+c输出排列End ifNext cEnd ifNext bNext a逻辑非常简单。三阶数独用到9个数字。要求纵,横,斜的和都相同一个标签:caption=三阶数独一个frame 放置1个标签,设置好后复制粘贴8个,粘贴时选择创建数组。第一个标签属性如下:创建两个按钮,command1和command2属性如下:Command1. Caption=产生数独Command2.caption=下一个Command2.visible=false放置一个进度条不是默认控件,先添加。部件选择:把进度条名称改为如下图:至此,界面设计完毕。复制如下代码到代码区。看起来长,实际上很少东西,几个for+if语句而已。便可运行。Private Sub Command1_Click()Command2.Visible = TrueCommand2.Enabled = FalseFor a = 1 To 9 For b = 1 To 9 If b a Then For c = 1 To 9 If c a And c b Then For d = 1 To 9 If d a And d b And d c Then For e = 1 To 9 If e a And e b And e c And e d Then For f = 1 To 9 If f a And f b And f c And f d And f e Then For g = 1 To 9 If g a And g b And g c And g d And g e And g f Then For h = 1 To 9 If h a And h b And h c And h d And h e And h f And h g Then For i = 1 To 9 If i a And i b And i c And i d And i e And i f And i g And i h Then j = a + b + c k = d + e + f l = g + h + i m = a + d + g n = b + e + h o = c + f + i p = a + e + i q = c + e + g If j = k And j = l And j = m And j = n And j = o And j = p And j = q Then Label1(0).Caption = a Label1(1).Caption = b Label1(2).Caption = c Label1(3).Caption = d Label1(4).Caption = e Label1(5).Caption = f Label1(6).Caption = g Label1(7).Caption = h Label1(8).Caption = i Command2.Enabled = True 实现暂停 Do Until Command2.Enabled = False DoEvents Loop 实现暂停 End If pb1.Value = a * 100 / 9 If pb1.Value = 100 Then Command1.Visible = True Command2.Enabled = True Command2.Visible = False End If End If Next i End If Next h End If Next g End If Next f End If Next e End If Next d End If

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论