2019年高考一轮复习信息技术浙江专用 第十单元第1节 数论课件(5张幻灯片)+练习

文档属性

名称 2019年高考一轮复习信息技术浙江专用 第十单元第1节 数论课件(5张幻灯片)+练习
格式 zip
文件大小 644.2KB
资源类型 教案
版本资源 通用版
科目 信息技术(信息科技)
更新时间 2019-05-22 11:45:10

文档简介

第1节 数论
模拟演练
1.随机数中的完全平方数。若一个数能表示成某个整数平方的形式,则称这个数为完全平方数,如1(1*1)、9(3*3)、16(4*4)等都是完全平方数。编写程序,单击命令按钮Command1依次产生1 000个1到1 000范围内(包含1,也包含1 000 )的随机整数,并判断产生的每个随机整数是不是完全平方数,如果是完全平方数,则将其显示在列表框List1中。程序运行效果如图所示。
(1)代码“List1.Additem”中的“Additem”是列表框List1的   。(填字母:A.对象名/B.属性名/ C.属性值/D.事件名/E.方法名/F.事件处理过程名)?
(2)解决此问题相应的VB程序如下:
Private Sub Command1_Click()
Dim i As Integer, t As Integer
For i = 1 To 1 000
  x =  ①  ?
  t = Int(Sqr(x))
  If x =  ②  Then List1.Additem  ③  ?
Next i
End Sub
答案 (1)E (2)①Int(Rnd*1 000)+1  ②t*t或t^2  ③Str(x)
解析 (1) List1.Additem中List1是对象名,Additem是方法名,表示把内容输出到列表框List1中。(2) ①处产生一个[1,1 000]的随机整数。②处判断x是不是完全平方数。③如果条件成立,则变量x是完全平方数,因此输出x。
2.如果一个自然数的每个质因数都至少是二重的(即每个质因数乘方次数都大于或等于2),如整数72=2^3*3^2(即72=2*2*2*3*3),判断2~72所有数中全部质因子的乘方次数,找出质因子“2”乘方次数为3;质因子“3”乘方次数为2,不是72的质因子,那么这个自然数称为“漂亮数”。小李编写了一个验证“漂亮数”的VB程序。在文本框输入小于1 000的正整数,单击“检查”按钮在列表框中显示该数的质因子及该因子乘方数,在标签Label1中显示判断结果,在标签Label4中显示所有质因数的分解过程。程序运行界面如下图所示。
实现上述功能的VB代码如下,但加框处代码有错,请改正。
Private Sub Command1_Click()
Dim a(1 To 999) As Integer
Dim n As Integer
Dim s As String
For i=1 To 999
 a(i)=0
Next i
n=Val(Text1.Text)
s =“”
Do While n<>1 ’分解质因子过程并统计质因子出现次数
For i = 2 To n
 Do While n Mod i = 0
  s = s&“  ”&i
  a(i)= a(i)+1
  n = i ’①
 Loop
Next i
Loop
Label4.Caption =“质因子分解过程:” +s
For j = 2 To 999  ’判断是不是漂亮数
 Ifa(j)<2 Then  ’②
  Label1.Caption = “不是漂亮数”
  Exit For
 Else
  Label1.Caption =“漂亮数”
  End If
Next j
For j = 2 To 999  ’在列表框输出质因数及对应的乘方数
 If a(j)>0 Then
  List1.Additem Str(j)+“ ”+Str(a(j))
 End If
Next j
End Sub
答案 ①n = ni或n = n/i ②a(j)>0 And a(j)<2
解析 本题考查对VB基本语句含义的理解,以及利用VB解决实际问题的能力。
①分析代码可知,由于该处属于因子的分解过程,并且将结果记录在相应的数组中,因此答案是n=ni。
②根据题意,“漂亮数”的每个质因数乘方次数都大于或等于2(非负数),因此,此处必须限定其每个因数的范围,当a(j)>0并且a(j)<2时,不是“漂亮数”。
3.尼克斯彻定理:任何一个大于等于1的整数的立方等于一串连续奇数之和,如:13=1,23=3+5, 33=7+9+11。编写一个VB程序验证尼克斯彻定理,程序运行时,在文本框Text1中输入一个大于等于1的整数,单击“验证”按钮Command1,在文本框Text2中显示验证结果,运行界面如图所示。
实现上述功能的VB代码如下,请完善代码:
Private Sub Command1_Click()
Dim n As Integer,i As Integer,t As Integer,sum As Long,s As String
n=Val(Text1.Text)
For i = 1 To n^3 Step 2 ’变量i表示连续奇数的首个整数
 sum=0:t = i:flag = False
 Do While sum <= n^3 And flag = False
  sum =  ①  ?
  t = t +2
  If  ②  Then flag = True?
 Loop
 If flag = True Then Exit For
Next i
s = Str(n) + “^”+ Str(3) + “=”
Do While sum >0
  ③  ?
 If sum = 0 Then
  s = s + Str(i)
 Else
  s = s + Str(i) +“+”
 End If
 i = i + 2
Loop
Text2.Text = s
End Sub
答案 ①sum + t ②sum = n ^ 3 ③sum= sum - i
解析 通过双重循环找到连续奇数串首个数字,再用Do While语句分解列出连续的3个奇数。
①变量sum用于存放连续的奇数和,把外循环枚举的奇数值相加。②分析执行语句flag=True可知,条件判断是否已经满足尼克斯彻定理,因此填入sum=n^3。③变量i存放奇数串的首个数值,要通过sum=sum-i逐步分解得到后续的奇数。
课件5张PPT。
第1节 数论  数论研究整数的性质,如素数(质数)、合数、因子、数学猜想等问题。
1.相关运算及函数2.求整数n的各位数字的表达式3.四舍五入保留小数4.判断n能否被m整除的条件表达式5.判断n是不是完全平方数的条件表达式6.质数(素数)的判断:除了1与它本身之外不再有其他的因数,这样 的数称为质数。
f=True
For i=2 to n-1????
 If n Mod i= 0 Then f=false:exit for
Next
注:循环终值也可以设置为n2或Sqr(n)。最后判断f的值为True则为质 数,否则为合数。
同课章节目录