出现错误也是难免, 诸如数据类型不匹配 找不到变量等等问题, 教师要有耐心 引导学生找出错误的原因及解决办法, 避免学生由于程序无法运行对学习失去兴 趣与信心 微项目 2 变量与函数的应用 科技词典 名词解释 函数 能完成特定运算和操作的小程序 概念分析 标准函数供用户在编程时调用, 这样可以大大减少用户编程的工作量, 提高编程的效率 函数的一般格式为 : 函数名 ( 参数 ) 函数名规定函数的功能, 参数是函数的运算对象, 可以没有, 如 :Date 也可以是数或表达式, 如 :Abs(-10),Sqr(19/3) 若函数有多个参数, 则各参数间用逗号隔开, 如 :Right("abcde",2) 概念应用 函数运算后的结果称为函数的返回值 如 :Int(3.9) 的返回值为 3 VB 中的常用函数包含以下几类 1 数学函数主要用来完成数学运算, 常用的有 : 函数格式 用途 举例 结果 Abs(x) 求绝对值 Abs(20-55) 35 Int(x) 求不大于参数的最大整数 Int(3.1) 3 Sqr(x) 求算术平方根 Sqr(2.5*3-3) 2.12132 Rnd(x) 求一个介于 0-1 之间的单精度随机 数 参数值是随机数的种子 Rnd(88/9) 0-1 之间的单 精度随机数 18
第 2 单元探索程序运行的神经元 续表 函数格式 用途 举例 结果 Sin(x) 求正弦值 Sin(3.14159265/180*90) 1 Log(x) 求自然对数 Log(1) 0 Round(x,n) 按小数位数四舍五入 Round(3.14159,3) 3.142 2 字符串函数 用来对字符串进行处理, 常用的有 : 函数格式用途举例结果 Len(x) 求字符串的长度 Len("basic") 5 Mid(x,n1,n2) 从 x 字符串左边第 n1 个位置开始向右取 n2 个字符 Mid("basic",2,2) as Left(x,n) 从 x 字符串左边开始取 n 个字符 Left("basic",3) bas Ucase(x) 将 x 字符串中所有小写字母转换为大写 Ucase("basic") BASIC Instr (x1,x2,m) 返回字符串 x2 在字符串 x1 中的位置, M=1 不区分大小写, 省略则区分, 找不 到则返回 0 Instr ("babbac","ba") 4 String(n,x) 返回由 n 个首字符组成的字符串 String(3,"AB") AAA Space(n) 返回 n 个空格 Space(3) ( 三个空格 ) 3 转换函数 用来实现不同类型数据之间的转换, 常用的有 : 函数格式用途举例结果 Str(x) 将数值转换为字符串 Str(45.2) 45.2( 此值已变成字符串 ) Val(x) 将字符串中的数字转换成数值 Val("2.3ab") 2.3 4 日期和时间函数 用来获取与日期和时间相关的数据或运算结果, 常用的有 : 19
函数格式 用途 举例 结果 Date 返回系统日期 Date yyyy-mm-dd( 返回格式 ) Time 返回系统时间 Time hh:mm:ss( 返回格式 ) Now 返回系统日期和时间 Now yyyy-mm-dd hh:mm:ss( 返回格式 ) Year(x) 返回指定日期的年份 Year("2015-9-1") 2015 技术手册选题 1: 点名出列技术关键 : 影响对象位置变化的因素是 top 和 left 属性, 这个程序中需要通过 top 值的增减来控制对象的上下位置 部分关键代码 : image1.top = image1.top + 50 1 为程序添加 归队 按钮部分关键代码与技术 : 减少对象的 top 值 如 : 小鸡归队的代码 "imgxiaoji.top = imgxiaoji.top 50" 2 将单击按钮点名, 改为将名字输入文本框点名部分关键代码与技术 : 使用选择结构实现不同输入得到不同的结果 如 : 输入小鸡后小鸡出列的代码如下 If Text1.Text = " 小鸡 " Then imgxiaoji.top = imgxiaoji.top + 50 End If 3 添加 集合 按钮部分关键代码与技术 : 只需将小鸡的 left 增加, 将小兔的 left 减少 如 :imgxiaoji.left = imgxiaoji.left + 50 imgxiaotu.left = imgxiaotu.left - 50 选题 2: 解读身份证号技术关键 : 出生日期用 Mid() 函数提取身份证号中的字符 年龄用 year() 20
第 2 单元探索程序运行的神经元 函数提取此时的年份再减去提取出的身份证号中的年份 性别是通过提取身份证号第 17 位数, 以是否能被 2 整除作为条件进行判断 部分关键代码 : Dim birthday As String,age As Integer birthday = Mid(Text1.Text,7,8) Text2.Text = birthday age = Year(Date$)- Mid(Text1.Text,7,4) Text3.Text = age If Val(Mid(Text1.Text,17,1))Mod 2 Then Text4.Text = " 男 " Else Text4.Text = " 女 " End If 1 单独弹出获取身份证号的对话框, 该选用什么函数完成? 解答 :InputBox() 函数部分关键代码 : number = InputBox(" 您的身份证号是 "," 请输入身份证号 ") 2 在计算时, 数据类型是否一致? 不一致时是否需要转换? 如何转换? 点拨 : 数据类型不一致, 需要转换, 应使用 Val(x) 函数把字符型数据 x 转换成数值 如 :Val(Mid(Text1.Text,17,1) 就可以将用 mid() 函数取到的身份证号第 17 位的字符型数据转换成数值, 即可用于运算 3 函数在使用过程中能否嵌套, 该如何使用? 点拨 : 函数在使用过程中有时会需要嵌套调用, 即需要将某函数作为另一函数的参数使用 如 :abs(19-sqr(900)) 或 year(now) 选题 3: 自控变色衣技术关键 : 通过滚动条控件控制 RGB 函数的参数来调整颜色 部分关键代码 : 21
Private Sub hscroll1_change() Shape6.FillColor = RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value) End Sub 1 小白兔变小黄兔或小灰兔点拨 : 用 RGB() 函数结合滚动条控件, 控制小白兔的耳朵 脸 四肢的形状颜色 2 输入已知的 RGB 数值直接指定颜色部分关键代码与技术 : 添加三个 Textbox 控件, 分别代表 RGB 数值, 用 Val(x) 函数将输入的字符型数据转换为数值 代码如下 : Dim a As Integer,b As Integer,c As Integer a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) Shape6.FillColor = RGB(a,b,c) 3 做一个换装小游戏, 单击哪件, 小兔子就穿上哪件 部分关键代码与技术 : 添加几个 Image 控件, 分别展示不同的衣服 给每个 Image 的 Click 事件编写代码, 为小兔子身上的 image1.picture 赋值 如 :Image1. Picture = Image2.Picture 技术探索 : 滚动条控件的应用技术实验的点拨解答 : 滚动条的部分属性值列表 属性 Hscroll1 取值 Vscroll1 取值说明 LargeChange 10 1 SmallChange 100 50 用于设置单击滚动条中间区域时, 每单击一次滚动条移动的数量 用于设置单击滚动条两端箭头时, 每单击一次滚动条移动的数量 Max 400 216 定义 Value 属性值的最大值 Min 100 0 定义 Value 属性值的最小值 Value 100 216 该属性值对应于滚动框在滚动条中的相应位 置, 是一个整数 22
第 2 单元探索程序运行的神经元 1 小猫的运动范围是靠哪些属性来控制的? 解答 : 滚动条的 Max 和 Min 属性 2 要让小猫在拖动滚动条时步子迈的小一点, 该怎么办? 解答 : 减小 LargeChange 和 SmallChange 属性的取值 3 Value 属性的取值对于这个程序的运行有怎样的影响? 解答 :Value 值的大小决定了滚动条中滑块的位置, 反过来滑块的位置也影响 Value 值的大小 教学指引 指导学时 建议分为 2~3 课时为宜 以两课时的划分为例划分如下 第 1 课时可以完成前两个选题, 即 : 加深对变量赋值应用方法的理解, 并体验函数的简单应用 第 2 课时可以完成第三选题及 科学探究 和 技术探索 版块的学习, 即 : 尝试结合控件 函数为变量赋值, 系统归纳整理函数格式 类型等相关基础知识, 结合函数及变量赋值的知识, 掌握滚动条控件的应用技巧 教学建议 绝大多数程序的设计离不开变量 本项目的初衷就是让学生在上一项目的基础上深化对变量的理解和应用 而函数通常配合变量的应用, 会让程序实现更多的功能 教学方面应注意在专题 1 巩固变量应用的基础上, 引入专题 2 让学生学会调用函数为变量赋值 课堂进程和环节的串联应注意引导学生明确学习目标及知识间的关联 专题 3 有综合和巩固前两个专题的意味, 同时抛出滚动条控件这个新内容, 应注意结合 科学探究 版块对函数基本知识的系统梳理, 帮助学生理解并掌握常用函数的功能和用法 技术探索 版块中注意引导学生结合技术实验挖掘滚动条控件的关键属性, 增强灵活运用的能力 教学范例 变量与函数的应用教学目标 : 1. 掌握 RGB() 函数的应用方法 23
2. 掌握滚动条控件的使用技巧 3. 理解并掌握函数的含义 格式及常用函数的功能 用法 教学方法 : 分组探究 合作学习 教学过程 : 1. 引入借变色衣的话题, 自主探究或小组合作查找控制颜色变化的函数有哪些 2. 项目实施 (1) 小组合作对专题 3 开展探究活动 1 探究 RGB 函数的格式 取值范围, 汇报探究结果 2 探究并实践利用滚动条控件如何控制 RGB 函数的三个参数 (2) 讨论回答 : 滚动条属性的哪些设置会影响颜色的显示效果? (3) 小组讨论并实践 : 1 小白兔变小黄兔或小灰兔 2 输入已知的 RGB 数值直接指定颜色 3 将换颜色改为换衣服, 做一个换装小游戏 3. 深入挖掘 (1) 自主学习 科学探究 中的内容, 掌握函数的格式 参数 常见类型等 并独立完成技术实验 共同订正技术实验的答案 (2) 合作学习 技术探索 中的内容, 了解水平与垂直滚动条的用法 组内讨论, 做好分析, 运行并调试教材提供的程序, 完成填表要求 各组派代表汇报探究结果 (3) 讨论回答 : 1 小猫的运动范围是靠哪些属性来控制的? 2 要让小猫在拖动滚动条时步子迈的小一点, 该怎么办? 3 Value 属性的取值对于这个程序的运行有怎样的影响? 4. 交流与反思 (1) 函数的格式 常用类型 (2) 用函数为变量赋值要注意什么 (3) 说说对滚动条的几个关键属性的认识 (4) 说说在本节探究合作学习中有何困惑及经验 24