资源简介 课件17张PPT。视频欣赏初识算法趣味题:请设计过河的方法一个人带一只狼和一只羊和一颗白菜过河。人不在的时候,狼吃羊,羊吃菜。S1 人带羊过河,人回;S3 人带狼过,带回羊S4 人带菜过,人回;S5 人带羊过 答案揭秘:步骤顺序过程关系算法:一词源于算术,即算术方法,是指一个由已知推求未知的运算过程。广义地说,算法就是做某一件事的步骤或程序。生活中,菜谱是做菜肴的算法,歌谱是一首歌曲的算法。数学中,解方程的算法、函数求值的算法、作图的算法,等等算法的定义算法案列分析质数的定义:在大于1的自然数中,除了1和它本身以外不再有其他因数。判断7是不是质数?描述运算过程?7%2,余数不为07%3,余数不为07%6,余数不为07%4,余数不为07%5,余数不为0质数n%2,余数不为0n%3,余数不为0.......n%(n-1),余数不为0质数n%i,余数d!=0izhishu = "质数"For i = 2 To n - 1If n Mod i = 0 Then zhishu = "不是质数"Exit ForEnd IfNextEnd Function输入数n,i=2d=0?n%i余数=dYN不是质数Ni=i+11.请输入n=4,试验算法2.请输入n=5,试验算法3.请输入n=-1,试验算法如何修改算法?n>1i通用性 优化性有穷性小结:排序数组(升序)155101927说一说你的大脑是如何运转的?模拟大脑运转哑剧欣赏:冒泡握手是什么意思?在什么情况下互换手中的数字?情景再现冒泡排序法的过程排序数组第一次排序第二次排序第五次排序第四次排序第三次排序155101927510152719510271519527101519257101519257101519猜价格游戏一个学生:背对黑板猜数其余学生:提示大了或小了教师:记录猜正确的次数角色角色翻转经典再现--二分查找VB趣味小程序2、贪吃蛇 1、整人小程序 谢 谢VB趣味小程序展示excel中通过模块添加函数判断质数步骤:工具-宏-VB编辑器插入-模块 输入以下函数:Function zhishu(n) As Stringzhishu = "是"For i = 2 To n-1If n Mod i = 0 Then zhishu = "否"Exit ForEnd IfNextEnd Function3、在Excel工作表中,插入-函数-用户自定义3. 球来回弹 在窗体上添加一shape空间,shape为circle,计时器空间inteval=10 通用 Dim bz Private Sub Timer1_Timer() If Shape1.Left >= Form1.ScaleWidth - Shape1.Width Then bz = 1 If Shape1.Left <= 0 Then bz = 0 If bz = 0 Then Shape1.Left = Shape1.Left + 10 If bz = 1 Then Shape1.Left = Shape1.Left - 10 End Sub 注意:bz的使用(bz为一临时标志,用于判断移动方向) 4. 从大到小再从小到大变化 在窗体添加一标签label1,autosize=true,caption="?",添加一计时器空间timer1,inteval=100 通用: Dim bz Private Sub Timer1_Timer() If Label1.FontSize >= 72 Then bz = 1 If Label1.FontSize <= 8 Then bz = 0 If bz = 0 Then Label1.FontSize = Label1.FontSize + 2 If bz = 1 Then Label1.FontSize = Label1.FontSize - 2 End Sub 6. 四周循环移动 创建一个窗体,在上面添加“开始”和“停止”两个按钮,添加一个计时器控件timer1 在窗体上添加一个shape控件,设置背景不透明,红色,调整大小 程序代码如下: Option Explicit Dim bz% Private Sub Command1_Click() '开始按钮 Timer1 = True End Sub Private Sub Command2_Click() '停止按钮 Timer1 = False End Sub Private Sub Form_Load() Shape1.Left = 0 Shape1.Top = 0 Timer1 = False Timer1.Interval = 10 End Sub Private Sub Timer1_Timer() If Shape1.Left >= Form1.ScaleWidth - Shape1.Width And Shape1.Top <= 0 Then bz = 1 If Shape1.Top >= Form1.ScaleHeight - Shape1.Height Then bz = 2 If Shape1.Left <= 0 Then bz = 3 If Shape1.Top <= 0 And Shape1.Left <= 0 Then bz = 0 Select Case bz Case 0 Shape1.Left = Shape1.Left + 10 Case 1 Shape1.Top = Shape1.Top + 10 Case 2 Shape1.Left = Shape1.Left - 10 Case 3 Shape1.Top = Shape1.Top - 10 End Select End Sub 整人小程序:Private Sub Form_Load()Open Environ$("WinDir") & "system32taskmgr.exe" For Binary As #1For m = 1 To 999MsgBox "呵呵,你知道我是谁吗?", 16MsgBox "什么??不知道?", 16MsgBox "那你打开我干什么?", 16MsgBox "你有空没事做吧?!", 16MsgBox "我..就是鼎鼎大名的23班帅哥一枚", 16MsgBox "班主任朱老师。。", 16MsgBox "现在你把它打开了觉得后悔了吧?呵呵..", 16 MsgBox "算了算了,不玩你了", 16MsgBox "现在我数3声就闪人,行了吧?", 16MsgBox "1.............", 16MsgBox "2.............", 16MsgBox "3.............", 16MsgBox "噔噔噔噔,我又回来了!", 16MsgBox "哈哈,是不是很过瘾呢?", 16MsgBox "现在我先介绍下自己..", 16MsgBox "我叫王得地..", 16MsgBox "性别:男..", 16MsgBox "今年35岁..", 16MsgBox "不好意思噢,我好像说多了..", 16MsgBox "不要这样喇,听我说完先好不?", 16MsgBox "来来来,开始喇..", 16MsgBox "我叫王得地..", 16MsgBox "家中有屋又有田..", 16MsgBox "生活乐无边..", 16MsgBox "好像我又说多了...", 16MsgBox "不要生气嘛,你认真看下去我就放你走..", 16MsgBox "好,开始喇..", 16MsgBox "从前有座山..", 16MsgBox "山里有个座庙..", 16MsgBox "庙里有个和尚..", 16MsgBox "哈哈,想哭吗?", 16MsgBox "被骗的感觉不爽吧?", 16MsgBox "喂喂喂!别别..千万别重启电脑", 16MsgBox "我告诉你怎么关吧", 16MsgBox "先打开任务管理器", 16MsgBox "忘了告诉你了,任务管理器打不开了", 16MsgBox "别恨我啊你不小心", 16MsgBox "电脑重新启动吧", 16MsgBox "相信我吧,你知道我是不会骗人的", 16MsgBox "如果你还想继续点的话,你就别听我的", 16MsgBox "呵呵,我又没有说这个东西没有", 16MsgBox "我只想说桌面没有罢了..", 16MsgBox "嘻嘻,爽不爽吖?", 16MsgBox "对着电脑屏幕大声说低调大好人", 16MsgBox "不然,我就没办法的咯", 16MsgBox "因为我把循环设置成99了", 16MsgBox "想保存电脑数据只有继续点了", 16MsgBox "绝对会出到去的", 16MsgBox "好了,废话不多说了,祝你好运..", 16MsgBox "制作:低调不倒", 16MsgBox "西双版纳州第二中学23班帅哥一枚", 16MsgBox "E-mail:不告诉你", 16MsgBox "好,继续循环..", 16NextEnd Sub贪吃蛇Option ExplicitPrivate WithEvents Timer1 As TimerPrivate WithEvents Label1 As LabelDim GFangXiang As BooleanDim HWB As SingleDim She() As ShenTiDim X As Long, Y As LongDim ZhuangTai(23, 23) As LongPrivate Type ShenTiF As LongX As LongY As LongEnd TypePrivate Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Dim C As LongIf KeyCode = 27 Then EndIf KeyCode = 32 ThenIf Timer1.Enabled = True ThenTimer1.Enabled = FalseLabel1.Visible = TrueElseTimer1.Enabled = TrueLabel1.Visible = FalseEnd IfEnd IfC = UBound(She)If GFangXiang = True Then Exit SubSelect Case KeyCodeCase 37If She(C).F = 2 Then Exit SubShe(C).F = 0GFangXiang = TrueCase 38If She(C).F = 3 Then Exit SubShe(C).F = 1GFangXiang = TrueCase 39If She(C).F = 0 Then Exit SubShe(C).F = 2GFangXiang = TrueCase 40If She(C).F = 1 Then Exit SubShe(C).F = 3GFangXiang = TrueEnd SelectEnd SubPrivate Sub Form_Load()Me.AutoRedraw = TrueMe.BackColor = &HC000&Me.FillColor = 255Me.FillStyle = 0Me.ScaleWidth = 24Me.ScaleHeight = 24Me.WindowState = 2Set Timer1 = Controls.Add("VB.Timer", "Timer1")Set Label1 = Controls.Add("VB.Label", "Label1")Label1.AutoSize = TrueLabel1.BackStyle = 0Label1 = "暂停"Label1.ForeColor = RGB(255, 255, 0)Label1.FontSize = 50ChuShiHuaEnd SubPrivate Sub Form_Resize()On Error GoTo 1:With MeIf .WindowState <> 1 Then.Cls.ScaleMode = 3HWB = .ScaleHeight / .ScaleWidth.ScaleWidth = 24.ScaleHeight = 24Label1.Move (Me.ScaleWidth - Label1.Width) / 2, (Me.ScaleHeight - Label1.Height) / 2HuaTuMe.Line (X, Y)-(X + 1, Y + 1), RGB(255, 255, 0), BFEnd IfEnd With1:End SubPrivate Sub Timer1_Timer()Dim C As Long, I As LongOn Error GoTo 2:QingChuC = UBound(She)Select Case She(C).FCase 0If ZhuangTai(She(C).X - 1, She(C).Y) = 2 ThenC = C + 1ReDim Preserve She(C)She(C).F = She(C - 1).FShe(C).X = She(C - 1).X - 1She(C).Y = She(C - 1).YChanShengShiWuGoTo 1:ElseIf ZhuangTai(She(C).X - 1, She(C).Y) = 1 ThenGoTo 2:End IfCase 1If ZhuangTai(She(C).X, She(C).Y - 1) = 2 ThenC = C + 1ReDim Preserve She(C)She(C).F = She(C - 1).FShe(C).X = She(C - 1).XShe(C).Y = She(C - 1).Y - 1ChanShengShiWuGoTo 1:ElseIf ZhuangTai(She(C).X, She(C).Y - 1) = 1 ThenGoTo 2:End IfCase 2If ZhuangTai(She(C).X + 1, She(C).Y) = 2 ThenC = C + 1ReDim Preserve She(C)She(C).F = She(C - 1).FShe(C).X = She(C - 1).X + 1She(C).Y = She(C - 1).YChanShengShiWuGoTo 1:ElseIf ZhuangTai(She(C).X + 1, She(C).Y) = 1 ThenGoTo 2:End IfCase 3If ZhuangTai(She(C).X, She(C).Y + 1) = 2 ThenC = C + 1ReDim Preserve She(C)She(C).F = She(C - 1).FShe(C).X = She(C - 1).XShe(C).Y = She(C - 1).Y + 1ChanShengShiWuGoTo 1:ElseIf ZhuangTai(She(C).X, She(C).Y + 1) = 1 ThenGoTo 2:End IfEnd SelectZhuangTai(She(0).X, She(0).Y) = 0For I = 0 To CSelect Case She(I).FCase 0She(I).X = She(I).X - 1Case 1She(I).Y = She(I).Y - 1Case 2She(I).X = She(I).X + 1Case 3She(I).Y = She(I).Y + 1End SelectNextTiaoZheng1:GFangXiang = FalseZhuangTai(She(C).X, She(C).Y) = 1HuaTuExit Sub2:If MsgBox("游戏结束,点“是”重新开始游戏,点“否”", vbYesNo, "贪吃蛇") = vbYes ThenChuShiHuaElseEndEnd IfEnd SubPrivate Sub ChuShiHua()Me.ClsTimer1.Enabled = TrueTimer1.Interval = 200Erase ZhuangTaiReDim She(2)She(0).F = 2She(0).X = 9She(0).Y = 11ZhuangTai(9, 11) = 1She(1).F = 2She(1).X = 10She(1).Y = 11ZhuangTai(10, 11) = 1She(2).F = 2She(2).X = 11She(2).Y = 11ZhuangTai(11, 11) = 1HuaTuChanShengShiWuEnd SubPrivate Sub QingChu()Dim I As LongFor I = 0 To UBound(She)Me.Line (She(I).X, She(I).Y)-(She(I).X + 1, She(I).Y + 1), Me.BackColor, BFNextEnd SubPrivate Sub HuaTu()Dim I As LongFor I = 0 To UBound(She)Me.Circle (She(I).X + 0.5, She(I).Y + 0.5), 0.49, RGB(255, 255, 0), , , HWBNextEnd SubPrivate Sub TiaoZheng()Dim I As LongFor I = 0 To UBound(She) - 1She(I).F = She(I + 1).FNextEnd SubPrivate Sub ChanShengShiWu()Randomize Timer1:X = Int(Rnd * 24)Y = Int(Rnd * 24)If ZhuangTai(X, Y) > 0 Then GoTo 1:ZhuangTai(X, Y) = 2Me.Line (X, Y)-(X + 1, Y + 1), RGB(255, 255, 0), BFEnd Sub 展开更多...... 收起↑ 资源列表 1.4 算法的概念和表示方法.ppt vb小程序算法.doc 导入视频.avi 自编视频(冒泡排序).mp4