文档详情

VB程序设计基础第5章编程思维与方法训练.ppt

发布:2025-01-19约4.33千字共14页下载文档
文本预览下载声明

第5章编程思维与方法训练第1节程序设计的一般方法第2节一般计算问题基础部第1节程序设计的一般方法第2节一般计算问题第3节穷举法求解问题第4节递推和迭代求解问题第5节排序问题第6节查找问题【例5-1】猴子第一天摘下若干个桃子,当即吃掉一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃一个,以后每天早上都吃掉前一天剩下的一半又多一个。直到第10天早上,猴子发现只剩一只桃子了,问猴子第一天共摘了多少个桃子?问题分析:从第10天向第1天倒推:设i表示第几天,a表示各天的桃子数,则有下表关系1534a=2*(a+1)i=1766a=2*(a+1)i=2382a=2*(a+1)i=3190a=2*(a+1)i=494a=2*(a+1)i=546a=2*(a+1)i=622a=2*(a+1)i=710a=2*(a+1)i=84a=2*(a+1)i=91a=1i=10桃子数桃子数表达式第几天编号算法设计A=1第10天循环计算第9天到第1天a=2*(a+1)Printa编写程序Dima%,i%A=1Fori=9to1step-1a=2*(a+1)NextIPrinta运行调试在VB中编辑、运行分析结果对结果进行分析,并验证,若有问题,诊断错误,修改完善撰写文档撰写软件使用说明书,包括:程序名程序功能,运行环境,安装启动,数据范围,及注意事项等一、累加、累积二、计数与统计【例5-2】计算某班某门课的平均分。分析:输入学生数→循环输入成绩并累加→计算平均输出设计:设n表示学生数,i控制循环,t表示累加和代码:Dimn%,i%,t%N=val(inputbox(“”))Fori=1tona=val(inputbox(””))T=t+aNextIPrintt/n【例5-4】统计一段英文中各英文字母出现的次数,(不区分大小写)分析:声明一个一维数组:dima(25),其下标为:英文字母的Ascaii码值-65,通过循环用MID函数取一个字符并转换为大写,给对应下标变量加1。PrivateSubCommand1_Click()Dima%(25),cAsString*1,i%,k%Fori=1Tolen(text1)c=Mid(ucase(text1),i,1)Ifc=AAndc=ZThena(asc(c)-65)=a(asc(c)-65)+1NextiFori=0To25Ifa(i)0ThenPicture1.PrintChr(i)=a(i);EndIfNextiEndSubTab(((k-1)Mod5)*8+1);k=k+1三、计算定积分xy0abhhhf(a)xf(x)图5-4定积分求解几何示意图⑴矩形法求面积⑵梯形法求面积PrivateSubCommand1_Click()Dims!,si!,h!,x!,a!,b!,n%a=0:b=1:n=100h=(b-a)/n:x=a:s=0Fori=1Tonsi=Sin(x)*hs=s+si:x=x+hNextiPrint用矩形法定积分为:;sEndSubPrivateSubCommand2_Click()Dims!,si!,h!,a!,b!,n%a=0:b=1:n=100h=(b-a)/n:s=0Fori=1Tonsi=(Sin((i-1)*h)+Sin(i*h))*h/2s=s+siNextiPrint用梯形法定积分为:;sEndSub例5-5求求一个函数f(x)在[a,b]上的定积分,其几何意义是求f(x)曲线和直线x=a,y=0,x=b所围成的曲边图形的面积,如图5-4所示。【例5-6】给定两个整数m和n,输出最大公约数r和最小公倍数。按定义代码PrivateSubF

显示全部
相似文档