《循环结构习题》PPT课件.ppt

上传人:小飞机 文档编号:5508025 上传时间:2023-07-15 格式:PPT 页数:22 大小:299.49KB
返回 下载 相关 举报
《循环结构习题》PPT课件.ppt_第1页
第1页 / 共22页
《循环结构习题》PPT课件.ppt_第2页
第2页 / 共22页
《循环结构习题》PPT课件.ppt_第3页
第3页 / 共22页
《循环结构习题》PPT课件.ppt_第4页
第4页 / 共22页
《循环结构习题》PPT课件.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《《循环结构习题》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《循环结构习题》PPT课件.ppt(22页珍藏版)》请在三一办公上搜索。

1、,素数是一个大于2,且不能被1和本身以外的整数整除的数。判别某数m是否为素数最简单的方法是:对于m,从 i=2,3,判别m能否被i整除,只要有一个能整除,m不是素数,否则m是素数。,求素数,求100以内素数,在循环语句中如何表示一个数是否为素数?定义一个Boolean型变量Flag,Flag=true表示一个数为素数,Flag=false表示一个数不是素数。,解题思路:(1)如何判断一个数m是否为素数;(m除以i=2).(2)使用循环语句找出1100之间所有的素数。,Private Sub Command1_Click()Dim i As Integer,m As Integer,n as i

2、nteger Dim flag As Boolean:n=0 For m=2 To 100 flag=True If flag=true Then print m;”;n=n+1 if n mod 10=0 then Print End if Next mEnd Sub,判断一数是否为素数,用flag来标注,假定m为素数,根据flag来打印素数,For i=2 To Sqr(m)If(m Mod i)=0 Then flag=FalseNext i,在窗体上换行输出的方法,一行固定输出10数字,常用算法,1.累加、连乘,累加是在原有和的基础上一次一次地每次加一个数。Sum=Sum+i,连乘是在

3、原有积的基础上一次一次地每次乘一个数。t=t*i,算法是对某个问题求解过程的描述,计算sum 1!2!3!10!,Private Sub Form_Click()Dim sum As Long Dim i As Integer Dim t As Long sum=0:t=1 For i=1 To 10 t=t*i sum=sum+t Next i Print 1!+2!+3!+.+10!=;sumEnd Sub,求自然对数e的近似值,要求其误差小于0.00001,近似公式为:,该例题涉及两个问题:(1)用循环结构求级数和的问题。本例根据某项值(t)的精度(要求计算精度为0.00001)来控制循

4、环的结束与否。(2)累加:e=e+t 循环体外对累加和的变量清零 e=0 连乘:n=n*i 循环体外对连乘积变量置1 n=1,级数t,连乘积n,累加和e,Private Sub Form_Click()Dim i%,n eEnd Sub,穷举法求水仙花数,水仙花数是一个三位数,它的每位数的立方和刚好等于其本身。如 153就是水仙花数 153=13+53+33,思考:找出1000之内的所有完数。,完数的界定:一个数恰好等于他的因子之和,这个数就称为完数。如数字6,它的因子是1、2、3,刚好有等式:6=1+2+3 成立,所以6就是一个完数。,回文数:第一位数与最后一位数相等,第二位数与倒数第二位数

5、相等第N位数与倒数第N位数相等,Private Sub Command1_Click()Dim n As IntegerDim i As IntegerDim sum As IntegerFor n=1 To 1000 sum=0 For i=1 To n-1 If n Mod i=0 Then sum=sum+i Next i If sum=n Then Text1.Text=Text1.Text&n&vbCrLf End IfNext n End Sub,完数,Private Sub Command1_Click()Dim num As StringDim str As StringDim

6、 i As Integernum=Text1.Textstr=For i=1 To Len(num)str=Mid(num,i,1)&strNext iIf str=num Then Label2.Caption=num&是回文数Else Label2.Caption=num&不是回文数End IfEnd Sub,回文数,“递推法”又称为“迭代法”,其基本思想是把一个复杂的计算过程转化为简单过程的多次重复。每次重复都从旧值的基础上递推出新值,并由新值代替旧值。实验D第7题:,4.递推法,在若干个数中求最大值,一般先假设一个较小的数为最大值的初值,若无法估计较小的值,则取第一个数为最大值的初值;

7、然后将每一个数与最大值比较,若该数大于最大值,将该数替换为最大值;依次逐一比较。例 随机产生10个100200之间的数,求最大值。,Private Sub Command1_Click()dim max as integer,x as integer Max=100 For i=1 To 10 x=Int(Rnd*101+100)Print x MaxEnd Sub,5.最小、最大值,随机输入10名学生成绩,将成绩显示在窗体中。并显示其中的最好及其序号。输入输出形式自定。例如:输入85,74,62,37,98,77,65,77,69,81显示:5号成绩最好,98分,Private Sub Fo

8、rm_Click()Dim i As Integer,cj As IntegerDim max As Integer,maxn As Integermax=0:maxn=0For i=1 To 10cj=Val(InputBox(请输入第 If i Mod 5=0 Then Print If cj max Then max=cj:maxn=iNext iPrintPrint 第&maxn&号的得分最高,为&maxEnd Sub,思考:增加显示最差成绩和平均分 4号成绩最差,37分 平均分为,XX,统计问题(一),Private Sub Command1_Click()统计按钮的事件过程Dim

9、str As String:Dim zimu As Integer:Dim shuzi As IntegerDim qita As Integer:Dim i As Integer:Dim ccstr As String*1zimu=0:shuzi=0:qita=0str=Text1.TextFor i=1 To Len(str)ccstr=Mid(str,i,1)Select Case ccstr Case A To Z,a To z zimu=zimu+1 Case 0 To 9 shuzi=shuzi+1 Case Else qita=qita+1 End SelectNext iTex

10、t2.Text=zimu:Text3.Text=shuzi:Text4.Text=qitaEnd Sub,统计问题(二),输入一个字符串,统计其中每个字母(不区分大小写)出现的频率。,Private Sub Text1_KeyPress(KeyAscii As Integer)Dim str$,i%,ccstr$Dim n(26)As IntegerIf KeyAscii=13 Then str=Text1.Text For i=1 To Len(str)ccstr=UCase(Mid(str,i,1)n(Asc(ccstr)-65+1)=n(Asc(ccstr)-65+1)+1 Next i

11、 For i=1 To 26 If n(i)0 Then Picture1.Print Chr(i+65-1)&出现了&n(i)&次 End If Next i End IfEnd Sub,Private Sub Command1_Click()Picture1.Cls Text1.Text=End Sub 清屏,是否已经按下回车键得判断,文本框得keypress事件,keyascii为其参数,执行下面的程序段后,输出结果为_。x=5For I=1 To 20 Step 2 x=x+I 5Next IPrint x,I(A)21 20(B)22 20(C)21 21(D)22 21,以下程序段的输出结果是_。num=0Do Until num2num=num+1Loop Print num,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号