《高中信息技术VB课件.pptx》由会员分享,可在线阅读,更多相关《高中信息技术VB课件.pptx(27页珍藏版)》请在优知文库上搜索。
1、4.1 4.1 变量变量1.变量名有字母、数字和下划线字符组成;变量名有字母、数字和下划线字符组成;2.必须以字母开头;必须以字母开头;3.不能用不能用vb中的关键词命名。中的关键词命名。如:如:123a 34/a x*y x/y abc do for if stu_nameDim 变量名变量名 as 变量类型变量类型 Dim a as Integer 4.1 4.1 变量变量使用变量之前要先声明定义数据类型。为什么要定义数据类型呢?使用变量之前要先声明定义数据类型。为什么要定义数据类型呢?Integer 整数型整数型 2个字节个字节Long 长整数型长整数型 4个字节个字节Single 单精
2、度实数型单精度实数型 4个字节个字节Double 双精度实数型双精度实数型 8个字节个字节String 字符串型字符串型4.1 4.1 变量变量题题1、下列变量定义正确的是(、下列变量定义正确的是( )A. Dim a*c As String B. Dim 4ac As BooleanC. Dim abc As Integer D. Dim for As Double题题2、已赋值语句、已赋值语句s=“Good Bye!”,则下列变量则下列变量s定义定义正确的是(正确的是( )A. Dim s As long B. Dim s As integer C. Dim s As string D.
3、Dim s As double 4.1 4.1 常用的标准函数常用的标准函数 Abs(X) 求求X的绝对值的绝对值Absolute Int(X) 求不大于求不大于X的最大整数的最大整数integer Sqr(X) 求求X的算术平方根的算术平方根square Val(X) 数字字串转换为数值数字字串转换为数值value Str(X) 数值转换为字符串数值转换为字符串string + - * / 实数除法实数除法 整除整除 乘幂乘幂 Mod取模取模所有运算符都不能省略。所有运算符都不能省略。Abs(-3.5) Int(4.1) Int(-4.1) Sqr(4) Val(“-170”) Str(-1
4、70) a2 3/2 32 5mod2“45”+“36”与与45+36的区别?的区别?4.1 4.1 常用的标准函数常用的标准函数案例分析案例分析?4.1 IF4.1 IF语句语句IF 条件表达式条件表达式1 Then 语句块语句块1Else 语句块语句块2End IFIf ab then max=aElse max=bEnd if x=100If x0 then y=Abs(x)Else y=Sqr(x)End if 4.1 IF4.1 IF语句语句4.1 For4.1 For循环语句循环语句For 循环变量循环变量=初值初值 To 终值终值 Step 步长步长 语句块语句块Next 循环变
5、量循环变量表达式表达式1 1判断?判断?表达式表达式2 2Dim i as integerDim Sum as integerSum=0For i=1 to 10 Sum=Sum+iNext iPrint SumS=1*2*3*.*10S=12+22+32+10024.1 For4.1 For循环语句循环语句表达式表达式1 1判断?判断?表达式表达式2 2Dim s as integerDim i as integers=0For i=1 to 10 step 4 print “#”; s=s+iNext iPrint s输出输出“#”的个数是的个数是_;s=_;S=1+6+11+.+1014
6、.1 For4.1 For循环语句循环语句表达式表达式1 1判断?判断?语句语句判断?判断?表达式表达式2 24.1 For4.1 For循环语句循环语句s=0 For i=1 to 3 For j=1 to 5 s=s+1 Next jNext iPrint s4.1 For4.1 For循环语句循环语句Dim Dim i i, j As Integer, j As Integer For For i i = 1 To 10 = 1 To 10 For j = 1 To For j = 1 To i i Print Print * *; Next j Next j Print Print N
7、ext Next i i4.1 For4.1 For循环语句循环语句4.1 For4.1 For循环语句循环语句例:例: 求求s=3+6+9+300的值。解决该问题,采用两种不同的方法。的值。解决该问题,采用两种不同的方法。例:例: 以下是计算以下是计算s=1-2+3-4+5-+99-100的程序代码,请补全程序。的程序代码,请补全程序。4.1 4.1 回顾并复习回顾并复习程序执行的三种流程结构?程序执行的三种流程结构?变量的命名规则?定义语句又是什么?变量的命名规则?定义语句又是什么?IF 语句怎么写?语句怎么写?For 语句怎么写?语句怎么写?4.1 4.1 回顾并复习回顾并复习1.单单分
8、支结构的格式:分支结构的格式:IF 条件语句条件语句 then 语句语句End if2.双分支结构的格式:双分支结构的格式:IF 条件语句条件语句 then 语句一语句一Else 语句二语句二End IF4.1 Do While4.1 Do While循环语句循环语句Do While 条件表达式条件表达式 语句块语句块Loops=0 i=0 Do While s10 i=i+1 s=s+i*i Loop Print i Print s以上程序段执行的次数是?值分别是多少?以上程序段执行的次数是?值分别是多少?4.1 Do While4.1 Do While循环语句循环语句Dim a,b,r a
9、s Integer a=98 b=63 r=a mod b Do While r0 a=b b=r r=a mod b Loop Print b以上程序段执行的次数是?值分别是多少?以上程序段执行的次数是?值分别是多少?4.1 Do While4.1 Do While循环语句循环语句3 3、算法设计的几种方法、算法设计的几种方法解析法:解析法:通过分析问题中各要素之间的关系,用最简练的语言或通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号来表达它们的关系,得出解决问题所需的表达式,形式化的符号来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法然后设计程序求解问题
10、的方法。简单的说,就是用数学表达式求。简单的说,就是用数学表达式求解问题。解问题。枚举法枚举法:也叫穷举法,把问题涉及的可能情况一一罗列出来,根也叫穷举法,把问题涉及的可能情况一一罗列出来,根据条件逐个判断,从中筛选出符合条件的解答据条件逐个判断,从中筛选出符合条件的解答;递归法:递归法:反复的调用自身反复的调用自身。二二分查找分查找法:法:必须是有序的查找必须是有序的查找对象。对象。3 3、算法设计的几种方法、算法设计的几种方法eg1:eg1:假设银行的年存储利率为假设银行的年存储利率为3%3%,如果现在存储,如果现在存储1000010000元元钱,问多少年后连本带息超过钱,问多少年后连本带
11、息超过1200012000元。设定:连本带息元。设定:连本带息= =本金本金* *(1+1+利率)利率)年数年数 算法分析算法分析 假设假设n n年后连本带息超过年后连本带息超过1200012000,根据题意得出,根据题意得出数学关系式:数学关系式:1000010000* *(1+3%1+3%)n n1200012000。求最小的。求最小的n n。3 3、算法设计的几种方法、算法设计的几种方法Dim Dim s,r,ns,r,n as as integerintegers=10000s=10000r=0.03r=0.03n=0n=0Do Do WhileWhile n=n+1 n=n+1 s=
12、s s=s* *(1+r)(1+r)LoopLoopPrint n; “Print n; “年后年后”;“”;“连本带息连本带息超过超过”; s”; s根据上述回答下列问题:根据上述回答下列问题:1 1)本题)本题采用的算法采用的算法是是 (填写:解析法填写:解析法/ /枚举法枚举法/ /排序法排序法/ /递归法)。递归法)。2 2)写出)写出程序中空白处表达式程序中空白处表达式 。3 3、算法设计的几种方法、算法设计的几种方法eg2:百百钱买百钱买百鸡鸡 假设假设一只公鸡值一只公鸡值5钱,一只母鸡值钱,一只母鸡值3钱,三只小鸡值一钱,三只小鸡值一1钱。现钱。现用用100钱来买钱来买100只鸡
13、。问公鸡、母鸡、小鸡各买多少只?(要求公只鸡。问公鸡、母鸡、小鸡各买多少只?(要求公鸡、母鸡、小鸡,每种最少买一只)鸡、母鸡、小鸡,每种最少买一只)设计算法并编写程序输出所有的买鸡方案。设计算法并编写程序输出所有的买鸡方案。界面及运行结果界面及运行结果3 3、算法设计的几种方法、算法设计的几种方法算法设计X表示公鸡的数量:1=x=20;y表示母鸡的数量:1=y=33;z表示小鸡的数量:1=z=100;参考程序Dim x As IntegerDim y As IntegerDim z As IntegerPrint “公鸡”;”母鸡”;”小鸡”For x=1 To 20 For y=1 to 3
14、3 For z=1 To 100 If Then Print x;y;z End If Next z Next yNext x根据上述回答如下问题:1、解决此问题采用的算法是 (填:解析法/枚举法/排序法/递归法)。2、程序代码中空白处应填写的条件是 (填:A/B/C/D)。A.x+y+z=100 And 5x+3y+z/3=100B.x+y+z=100 or 5x+3y+z/3=100C.x+y+z=100 And 5*x+3*y+z/3=100D.x+y+z=100 or 5*x+3*y+z/3=100eg3、猴子吃桃问题猴子吃桃问题要小猴有一天摘了若干个桃子,它非要小猴有一天摘了若干个桃
15、子,它非常贪吃当天就吃掉了一半还多一个;第二天接着吃剩下的常贪吃当天就吃掉了一半还多一个;第二天接着吃剩下的桃子的一半多一个;以后每天都是如此,到了第七天要吃桃子的一半多一个;以后每天都是如此,到了第七天要吃桃子时,却发现只剩下一个。问小猴那天一共摘了多少个桃子时,却发现只剩下一个。问小猴那天一共摘了多少个桃子?桃子?3 3、算法设计的几种方法、算法设计的几种方法eg4、二分查找又称折半查找,是一种应用于有序数列的二分查找又称折半查找,是一种应用于有序数列的高效查找算法。下列数列中适合二分查找算法的是()高效查找算法。下列数列中适合二分查找算法的是()3 3、算法设计的几种方法、算法设计的几种方法3 3、算法设计的几种方法、算法设计的几种方法例子:例子:算法算法设计与程序实现设计与程序实现(数列问题数列问题) 已知已知包含包含25项的数列:项的数列:1,2/3,3/5,24/47,25/49。问题问题1:写出该数列的通项公式:写出该数列的通项公式f(n)=_(3分分)问题问题2:以下是计算:以下是计算S=1+2/3+3/5+24/47+25/49的程序的程序,请请补全代码:补全代码:Dim i As integerDim s As singles=0For i= 1 To 25 s=s+_(3分分)Next iPrint “s=”;s