没有合适的资源?快使用搜索试试~ 我知道了~
1) 由于这类题目往往是根据精度要求来求值,因此我们不能预知具体循环次数,所以这类题目一般用Do循环,很少用For循环。设定循环变量和通项变量,注意各变量的初值; 2) 分解通项表达式中各因子,并分别将各因子用循环变量表示; 3) 如果步骤2中有的因子比较复杂,难以直接用变量表示,此时可以考虑使用Function过程; 4) 根据步骤1、2、3,写出通项表达式;
资源推荐
资源详情
资源评论
计算机等级考试二级 VB 常用算法
(1)累加和连乘
1、算法说明
累加形式:
连乘形式:
其中: 是变量, 是递增表达式。累加和连乘一般通过循环结构来实现。
注意:需在执行循环体前对变量 赋初值。一般的,累加时置初值 ;连乘时置初值为
举例
求 !的结果。
()
,,
(!"#$(%输入 %))
&'
$
(
错误的写法:
()
,,
(!"#$(%输入 %))
&'
))))))))))))*赋初值语句位置不对!
$
)))))))))))))))*输出 的值为 ,而不是 !
(
应用举例
根据下列公式,求自然对数 的的近似值。
要求:误差小于
()
, ,!,!
+
,-.
/
0"
%计算了%;;%项目和是:%;
($"()‘与上句输出值进行对比以证明算法的正确性
(
解题技巧
)由于这类题目往往是根据精度要求来求值,因此我们不能预知具体循环次数,所以这类题目一
般用 循环,很少用 & 循环。设定循环变量和通项变量,注意各变量的初值;
+)分解通项表达式中各因子,并分别将各因子用循环变量表示;
1)如果步骤 + 中有的因子比较复杂,难以直接用变量表示,此时可以考虑使用 & 过程;
2)根据步骤 、+、1,写出通项表达式;
3)根据精度要求(往往是通项小于 负多少次方这样一个关系表达式),写出一条满足精度要
求后跳出循环的语句。通常是用:4)通项表达式.5(6)-$,注意这句话一般需放在累
加或者连乘式之前。
实例说明
以 ++ 年春上机试卷 7 编程题为例
根据 8 值计算:
=,+,……
要求: 项绝对值小于等于 67 为止。
、由于循环次数不确定,因此确定用 循环结构并定义循环变量用 表示(初值 );用户输
入的值用 $ 表示;通项用 表示;累加值用 表示,初值为 ;
+、分解通项式的组成
可以分解为三部分:
可以表示为:(-)5()
可以表示为:$5(+(6))
比较复杂,难以直接表示
1、由于步骤 + 中 复杂,此时考虑使用过程。
于是定义过程,输入值是 ,返回值是
于是有:
"&"(9)9
!9
9
)))*此处注意,由于是连乘,初值为
4!+(6)
!
$!
"
(&
注意:由于是参数按地址传递,因此对于本题,实参的值不能在过程中被改变!(也是改错题常
考的地方!!)
2、根据步骤 、+、1,写出通项 的表达式:
(-)5()$5(+(6))/"()
3、根据精度要求知:
!4():5(67)-$
最后程序为:
()
;09,;,$;
$('$'$)
(6)5()$5(+(6))/"()
!4;():5(67)'-($
0"
(
&"(;09);09
!;09
;09
)<此处注意,由于是连乘,初值为
&!'+(6)
!
$!
"
(&
注意:如果调试运行时死循环,可以按 +# 中断死循环,不需要重新启动机器。(或者
0)
2、实战练习
)补充代码(+1 秋二(=))
本程序的功能是求下面数列前 项之和。
($,)$/++!$51/+21!$53/+27>>!$5+6/+27>>+
?"($"
()
$;9,;9
;!9,;!9
$!"#$(%输入X:%,"求数列和",1)
!"#$(%输入N:%,"求数列和",1)
&'
4($,)
$
0"_()_
'$
(
&4($;9,;!9);9
__(+)__
"
&'
__(1)___
$
4$5(+6)"
(&
+)编程题(+1 春上机试卷 1)
按下列公式编写求积分余弦函数值的程序。当通项绝对值小于 -3 时停止计算。
(2)最值问题
1、算法说明
在若干数中求最大值,一般先取第一个数为最大值的初值(即假设第一个数为最大值),然后,在循环体
内将每一个数与最大值比较,若该数大于最大值,将该数替换为最大值,直到循环结束。
求最小值的方法类同。
求若干数平均值,实质上就是先求和,再除以这些数的个数。
应用举例
随机产生 n 个 1-100(包括 1 和 100)的数,求它们的最大值、最小值和平均值。
Private Sub Command1_Click()
Dim n As Integer, i As Integer, min As Integer, max As Integer, aver As Single, s As Integer
n = Val(InputBox("输入个数:"))
s = Int(Rnd * 100) + 1
max = s
min = s
aver = s
Print "第 1 个数是:" & s
For i = 2 To n
s = Int(Rnd * 100) + 1
Print "第" &i & "个数是:" & s
If s > max Then max = s
If s < min Then min = s
aver = aver + s
Next i
aver = aver / n
Print "max="; max; "min="; min; "aver="; aver
End Sub
解题技巧
最大值、最小值、平均值类型题目往往和数组放在一起考!有的不仅求这些值,还要对具有最大值或者最
小值的行或列或者某个元素进行处理,这时就要在记录最大、最小值时,同时记录该值所在的行号和列号。
2、实战练习
@))))))补充代码(+ 春二(A))
)))本程序的功能是在二维数组中查找鞍点元素,即该元素在所在行中为最大,且在所在列中为最小。在
一个数组中可能存在,也可能不存在这样的元素。数组各元素的值从文件 $ 中读取。
)))))))&B@
))))))))))))))))))))))))))B1C1@;!9C;!9CD;!9
))))))))))))))))))))))))))$;!9C;!9C;!9
))))))))))))))))))))))))))?"$&!";E
))))))))&'1
)))))))))))))))))&D'1
))))))))))))))))))))))))))!"ECBCD@
))))))))))))))))))))))))))BCD@F
)))))))))))))))))$D
)))))))))))))))))
))))))))$
))))))))&'1
)))))))))))))))))$)()
)))))))))))))))))
)))))))))))))))))&D+'1
))))))))))))))))))))))))))!4$
)))))))))))))))))))))))))))))))))))$)(+)
)))))))))))))))))))))))))))))))))))D
))))))))))))))))))))))))))(!4
)))))))))))))))))$D
)))))))))))))))))&D'1
))))))))))))))))))))))))))!4$.BDC@'-))(1)
)))))))))))))))))$D
(3)素数
1、算法说明
素数(质数):就是一个大于等于 + 的整数,并且只能被 和本身整除,而不能被其他整数整除的数。
判别某数 是否是素数的经典算法是:
剩余31页未读,继续阅读
资源评论
k99200
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
- 音乐展示网页、基于Stenography的图像数字水印添加与提取,以及基于颜色矩和Tamura算法的图像相似度评估算法py源码
- 基于EmguCV(OpenCV .net封装),图像数字水印加解密算法的实现,其中包含最低有效位算法,离散傅里叶变换算法+文档书
- 基于matlab+DWT的图像水印项目,数字水印+源代码+文档说明+图片+报告pdf
- (优秀毕业设计)基于python实现的数字图像可视化水印系统的设计与实现,多种数字算法实现+源代码+文档说明+理论演示pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功