篇一:用VB编了一个小程序来实现电脑抽奖的小功能
用VB编了一个小程序来实现电脑抽奖的小功能,其原理如下: 主要利用VB中的Rnd函数,来实现随机查找和打乱排序的功能,从而实现随机抽奖的目的。Rnd函数的语法结构是Rnd[(number)],可选的number参数是single或任何有效的数值表达式。Rnd函数返回小于1但大于或等于0的值。number的值决定了Rnd生成随机数的方式。为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound-lowerbound+1)×Rnd+lowerbound)
这里,upperbound是随机数范围的上限,而lowerbound则是随机数范围的下限。
另外,程序中还使用了INI文件,WindowsINI文件,可解释为Windows初始化文件。它是一种专门用来保存应用程序初始化信息和运行环境信息的文本文件。ini文件是一种文本文件,它可以通过Notepad等文本编辑器进行编辑。ini文件具有特定的格式。一个INI文件是由若干个段(section)组成的,每个段中包含若干关键字(key)及相应的值(value)。创建应用程序自己的INI文件,通过INI文件保存应用程序的一些运行环境信息,然后在程序中读取INI文件中的设置信息并据以处理。一旦程序的运行环境需要变更,则可以通过直接修改INI文件,或在程序中提供专门的界面间接地修改INI文件来保证程序的可用性。 源程序及注释如下:
'窗体源程序
OptionExplicit
Dimm_strNameArray()AsMyName Dimm_bIsStartAsBoolean Dimm_nNameIndexAsInteger DimMAX_INDEXAsInteger Dimm_nSelectNumAsInteger '被选定数
DimnScrollStepAsInteger DimnScrollWidthAsInteger DimbScrollStateAsBoolean DimnEnableSecondAsInteger Dimm_strTitleAsString Dimm_strAppTitleAsString
Dimm_strScrollTitleLeftAsString Dimm_strScrollTitleRightAsString Ifm_bIsStart=TrueThen '按停止钮
m_bIsStart=False “开始\"
Label_FlashName.Visible=True Timer_FlashName.Enabled=True Timer_ScrollName.Enabled=False Label_FlashName=
m_strNameArray(m_nNameIndex).strName+“中奖了!\"m_strNameArray(m_nNameIndex).bIsSelect=True m_nSelectNum=m_nSelectNum+1
DimTempAsMyName Temp=
m_strNameArray(MAX_INDEX) m_strNameArray(MAX-
INDEX)=m_strNameArray(m_nNameIndex)m_strNameArray(m_nNameIndex)=
Temp
MAX_INDEX=MAX_INDEX-1
IfMAX_INDEX=0Then
MsgBox“非常感谢您使用本软件\" EndIf
Else'按开始钮 m_bIsStart=True
Timer_ScrollName.Enabled=True
Timer_FlashName.Enabled=False Label_FlashName.Caption=“\" EndIf EndSub
PrivateSubForm_Load() Form_Bouns.ScaleMode=3
m_nNameIndex=0 m_bIsStart=False
Timer_ScrollName.Enabled=True Timer_ScrollTitle.Enabled=True Label_FlashName.Visible=False Label_ScrollName.Caption=“\" nEnableSecond=0 '定义起始秒数 ReDimNameArray
'获得文本中的名字和打乱名字顺序 nScrollStep=5'设定滚动字的步长 nScrollWidth=Label_Congruation.Left '设定title的移动宽度
bScrollState=False
'设定缺省的开始滚动方向为向左 m_nSelectNum=0 '初始化被选定数为0 Init
'初始化本程序的界面 EndSub
PrivateSubTimer_FlashName_Timer()'闪动中奖者姓名IfLabel_FlashName.Visible=TrueThen
Label_FlashName.Visible=False Else
Label_FlashName.Visible=True EndIf EndSub
PrivateSubTimer_ScrollName_Timer()'滚动出现名字Ifm_bIsStart=TrueThen
Ifm_nNameIndex>=MAX_INDEXThen m_nNameIndex=0 EndIf
m_nNameIndex= m_nNameIndex+1
Ifm_strNameArray(m_nNameIndex).bIsSelect=TrueThenIfm_nNameIndex<
MAX-INDEXThen m_nNameIndex= m_nNameIndex+1
Else
m_nNameIndex=0 EndIf EndIf
Label_ScrollName.Caption=m_str NameArray(m_nNameIndex).strName 'EndIf EndIf EndSub
PrivateSubTimer_ScrollTitle_Timer()'滚动“恭喜发财\"字样IfbScrollState=FalseThen'向左滚 nScrollStep=10
Label_Congruation.Caption=m_strScrollTitleLeft
IfnScrollWidth>0Then nScrollWidth=
nScrollWidth-nScrollStep Else
bScrollState=True EndIf Else'向右滚 nScrollStep=-10
篇二:scratch范例教学-趣味抽奖 趣味抽奖 教学目标:
【知识目标】
1.通过抽奖程序的,初步掌握Scratch中随机数模块的应用。 2.通过抽奖程序的设计,初步掌握Scratch广播模块的应用。 3.通过抽奖程序的设计,了解用角色造型存储图片数据。
4.通过抽奖程序的设计,了解Scratch中用变量模块实现随机数据的存储。
【能力目标】
1.通过抽奖程序的设计,让学生进一步了解随机数据的获取、存储和表达的过程。
2.通过抽奖程序设计的活动,引导学生思考生活中那些地方应用了抽奖程序这样类似问题,启发学生设计不同的抽奖方案。
【情感目标】
1.主动邀请他人分享成果,表达自己的设计思路,愿意合作交流。 教学重难点:
重点:抽奖程序的设计,让学生了解随机数据的获取、存储和表达的过程。
难点:启发学生用不同方法实现抽奖程序。 教学课时:
一课时
教学准备:范例、图片 教学过程:
一、创设情境,提出主题
师:元旦即将来临,班上将举行元旦庆祝活动,班主任老师,请我给班上设计一个电子抽奖的程序,下面,我想请同学们来试一试,请你用鼠标点击奖项(一等奖、二等奖、三等奖)开始抽奖。
生:学生操作
师:好。老师再请一位同学前来尝试。
生:操作
师:今天我们这节课请同学们也来设计一个趣味抽奖的游戏。你可以自己设计抽奖规则,创作不同的趣味抽奖游戏。我们比一比,看谁设计的最合理。
二、自主学习,研习范例
1、师:请同学打开老师的范例,看一看,探究以下问题:
1)设计抽奖游戏前,你准备设计一个什么样的趣味抽奖活动方案? 2)如何产生一组随机中奖号码? 3)如何实现开奖和抽奖过程? 4)抽奖的呈现的画面; 5)围绕主题,收集图片素材;
2、思考:回忆数据的获取和存储,如何创建“变量”?如何实现用变量存数一组随机数?参考其他范例:
篇三:用vb编一个抽奖软件的源代码 求用vb编一个抽奖软件的源代码 悬赏分:20-解决时间:2022-4-1522:47
2.请带一些语句说明最好
问题补充:这位前辈是不是将input写成了inpue, whilenot(eof(#1))总是提示错误
我是个vb小白,能不能说明白点,需要几个控键分别叫啥名字,语句能不能更完整些,谢谢
开始和停止为同一个键也可以 提问者:qvxiaogang-试用期一级 最佳 dimi 窗口启动:
i=0
whileeof(1)=false LineInput#1,a List1.AddItema wend close#1 按开始: 按结束: i=i+1
ifi=List1.ListCounttheni=0 Label1.Caption=List1.List(i)
不好意思啊,由于没有注意,所以先前的答案有两个小错误,现在已修正了
所需控件:
两个按钮,一个开始,一个结束;一个时钟控件 用VB6.0编写电脑抽奖程序
近年来在娱乐节目之中常常见到利用电脑来抽奖,笔者对其发生了兴趣遂自己动手用VB编了一个小程序来实现电脑抽奖的小功能,其原理如下:
主要利用VB中的Rnd函数,来实现随机查找和打乱排序的功能,从而实现随机抽奖的目的。Rnd函数的语法结构是Rnd[(number)],可选的number参数是single或任何有效的数值表达式。Rnd函数返回小于1但大于或等于0的值。number的值决定了Rnd生成随机数的方式。为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound-lowerbound+1)×Rnd+lowerbound)
这里,upperbound是随机数范围的上限,而lowerbound则是随机数范围的下限。
另外,程序中还使用了INI文件,WindowsINI文件,可解释为Windows初始化文件。它是一种专门用来保存应用程序初始化信息和运行环境信息的文本文件。ini文件是一种文本文件,它可以通过Notepad等文本编辑器进行编辑。ini文件具有特定的格式。一个INI文件是由若干个段(section)组成的,每个段中包含若干关键字(key)及相应的值(value)。创建应用程序自己的INI文件,通过INI文件保存应用程序的一些运行环境信息,然后在程序中读取INI文件中的设置信息并据以处理。一旦程序的运行环境需要变更,则可以通过直接修改INI文件,或在程序中提供专门的界面间接地修改INI文件来保证程序的可用性。
源程序及注释如下:
'窗体源程序 OptionExplicit
Dimm_strNameArray()AsMyName Dimm_bIsStartAsBoolean Dimm_nNameIndexAsInteger DimMAX_INDEXAsInteger Dimm_nSelectNumAsInteger '被选定数
DimnScrollStepAsInteger DimnScrollWidthAsInteger DimbScrollStateAsBoolean DimnEnableSecondAsInteger Dimm_strTitleAsString Dimm_strAppTitleAsString
Dimm_strScrollTitleLeftAsString Dimm_strScrollTitleRightAsString Ifm_bIsStart=TrueThen '按停止钮
m_bIsStart=False “开始\"
Label_FlashName.Visible=True Timer_FlashName.Enabled=True Timer_ScrollName.Enabled=False Label_FlashName=
m_strNameArray(m_nNameIndex).strName+“中奖了!\"m_strNameArray(m_nNameIndex).bIsSelect=True m_nSelectNum=m_nSelectNum+1
DimTempAsMyName
Temp=m_strNameArray(MAX_INDEX) m_strNameArray(MAX-
INDEX)=m_strNameArray(m_nNameIndex)m_strNameArray(m_nNameIndex)=Temp
MAX_INDEX=MAX_INDEX-1
IfMAX_INDEX=0Then
MsgBox“非常感谢您使用本软件\" EndIf
Else'按开始钮 m_bIsStart=True
Timer_ScrollName.Enabled=True Timer_FlashName.Enabled=False Label_FlashName.Caption=“\" EndSub
PrivateSubForm_Load() Form_Bouns.ScaleMode=3
m_nNameIndex=0 m_bIsStart=False
Timer_ScrollName.Enabled=True Timer_ScrollTitle.Enabled=True Label_FlashName.Visible=False Label_ScrollName.Caption=“\" nEnableSecond=0 '定义起始秒数 ReDimNameArray
'获得文本中的名字和打乱名字顺序 nScrollStep=5'设定滚动字的步长 nScrollWidth=Label_Congruation.Left '设定title的移动宽度
bScrollState=False
'设定缺省的开始滚动方向为向左 m_nSelectNum=0 '初始化被选定数为0 Init
'初始化本程序的界面 EndSub
PrivateSubTimer_FlashName_Timer()'闪动中奖者姓名IfLabel_FlashName.Visible=TrueThen
Label_FlashName.Visible=False Else
Label_FlashName.Visible=True EndSub
PrivateSubTimer_ScrollName_Timer()'滚动出现名字Ifm_bIsStart=TrueThen
Ifm_nNameIndex>=MAX_INDEXThen m_nNameIndex=0 EndIf
m_nNameIndex=m_nNameIndex+1
Ifm_strNameArray(m_nNameIndex).bIsSelect=TrueThenIfm_nNameIndex Else m_nNameIndex=0 EndIf EndIf Label_ScrollName.Caption=m_str NameArray(m_nNameIndex).strName 'EndIf EndIf EndSub PrivateSubTimer_ScrollTitle_Timer()'滚动“恭喜发财\"字样IfbScrollState=FalseThen'向左滚 nScrollStep=10 Label_Congruation.Caption=m_strScrollTitleLeftIfnScrollWidth>0Then nScrollWidth= nScrollWidth-nScrollStep Else bScrollState=True 因篇幅问题不能全部显示,请点此查看更多更全内容