首页 新闻 搜索 短信 分类 聊天 企业
上移动梦网
赢手机大奖

新浪首页 > 科技时代 > 网上学园 > 高级编程 > 正文
用《发烧积木》制作彩票选号软件

http://www.sina.com.cn 2002/04/26 17:34 赛迪网--中国电脑教育报

  文/小兵瑞瑞

  老爸平时没有什么业余爱好,自从有了福彩,老爸就期期必买5注当作消遣,可是几期下来连个末奖也没中上。因为毕竟是无规则的随机数,所以我决定用随机函数帮他一把。

  可是用什么工具编写呢?VC、Delphi我是不灵,不过我还是胸有成竹,因为最近我掌握了一种简单易学的中文编程工具——《发烧积木》。我已经利用它写了几个小软件了,如高速浏览器、同学通讯录等等。如果你也想学,那么就跟我一起来做吧。

  模拟现场

  先分析一下摇奖过程:箱子里面放32个球,随机地取出7个球(32选7)。当第一个球出来后,这时从31个球中再产生第二个球。直到第七个球出来为止。计算机是如何模拟实现的呢?我也需要有一个大箱子——一个文本文件,里面装着32行文字,第一行对应的文字内容就是“01”,第二行的文字内容是“02”……依此类推。利用一个随机数构件产生随机数,范围是“32”。假设,第一个随机数是“8”,那么就取文本文件第八行,然后删除该行。这时在文本文件中就只剩31行了,前7行的对应关系没有变,而现在第8行,它内容是“09”,依次类推。

  机器仿真

  让我们开始吧!先建立一个文件夹,取名“福彩之星”,在该文件夹下,建立一个文本文件,名字叫“彩号”。文本内容用32行对应32个数字。


图1

  进入《发烧积木》界面(如图1),整个系统由主控窗口、构件板、项目设置器、项目窗口四个窗口组成,我们将在项目窗口上实现搭积木的过程。

  先确定要用到哪些构件:随机数构件,产生随机数以便抽取文本文件的行号;列表框构件,操作预先建立的文本文件;预置循环构件,因为每个彩号的产生过程都是一样的,共需要7次,所以用它可以减少重复性劳动;普通标签构件,显示最终模拟摇奖结果;普通按钮构件,当鼠标单击它的时候,幸运号码产生了。只需对设置预置循环构件的循环开始值属性为“1”,循环结束值属性为“7”。


图2

  下面就是最重要的部分,项目运行时期设置。它相当于其他程序语言的程序代码编写工作,这可是《发烧积木》独一无二的特点,也是它的最为精妙之处,一定要细细体味喔!

  事件:单击普通按钮1

  操作:在项目窗口选中普通按钮1,在“项目设置器”中选择“事件”页——“单击事件”后双击,弹出“事件设置”窗口进行设置。

  事件设置如图2所示。

  事件:循环过程

  操作:在项目窗口选中预置循环1,进入“事件设置”窗口进行设置。

  事件设置如图3所示。


图3

  现在我们用文字模拟一下循环过程。首先,第一次循环,假设产生随机值为“8”,赋给当前项目号。由于物理第一行的行号为“0”,所以当前选择内容为“09”。取普通标签的标题,由于初始化值为“空”,所以把“空”字符、“09”、“-”三个字符进行连接,其结果再赋给普通标签的标题。这样第一次循环后,普通标签的标题为“09-”。第二次循环(在不考虑其他设置情况下),假设随机值为“13”,当前选择内容为“14”,这时普通标签的标题“09-”、“14”、“-”三个字符串进行连接,其结果再赋给普通标签的标题。标题结果为“09-14-”,依此类推。

  事件:循环结束

  操作:选中预置循环1构件“事件”页,在“事件设置”窗口设置如图4所示。


图4

  内容:当循环结束时,我们会得到“xx-xx-xx-xx-xx-xx-xx-”这样一个字符串,细心的读者会发现该字符串有一小缺陷,最后的小横杠不应该有,不过这是该程序演算下来的必然结果。

  解释:得到普通标签的标题,整个标题共21个字符。从第1个到第20个字符进行截取,截取的结果再次赋给普通标签的标题属性。


图5

  这样我的“彩票之星”就做好了。开始运行!运行结果如图5所示。

按此下载本文介绍的软件。


  


发表评论】【初学者园地】【科技聊天】【关闭窗口

新 闻 查 询

 相关链接
在VB编程中用Winsock实现文件下载 (2002/03/22 17:15)
微软警告Java编程语言存在安全漏洞 (2002/03/21 10:57)
当让则让 Excel下借助VBA编程小记 (2002/03/20 14:40)
Microchip推出在线调试器/编程器 (2002/03/14 13:29)
用PHP编程语言开发动态WAP页面 (2002/03/11 13:42)
在VB编程中实现图片背景透明效果 (2002/01/29 18:16)
在VFP中使用“宏”来提高编程效率 (2002/01/29 18:20)
用Visual Basic编程实现清空文档菜单 (2002/01/25 18:14)


科技时代意见反馈留言板 电话:010-82612286 或 010-82628888-3488   欢迎批评指正

新浪简介 | 用户注册 | 广告服务 | 招聘信息 | 中文阅读 | Richwin | 联系方式 | 帮助信息

Copyright © 1996 - 2002 SINA.com, Stone Rich Sight. All Rights Reserved

版权所有 四通利方 新浪网