没有合适的资源?快使用搜索试试~ 我知道了~
首页计算机二级VB十大常用算法
资源详情
资源评论
资源推荐

累加与连乘
分析
累加形式:连乘形式:
其中: 是变量, 是递增表达式。累加和连乘一般通过循环结构来实现。
注意:需在执行循环体前对变量 赋初值。一般累加时置初值 ;连乘时置初值为 。
举例求 的结果。
!
"#$#$%&
'()* +输入 +!!
%
,-
%%
*
%
.
错误的写法:
!
"#$#$%&
'()* +输入 +!!
,-
%/赋初值语句位置不对!
%%
*
%/输出 % 的值为 ,而不是
.
应用举例
根据下列公式,求自然对数 的的近似值。
要求:误差小于
!
"#$&$$
0
"123
4
5(
+计算了+66+项目和是:+6
.*( !
/与上句输出值进行对比以证明算法的正确性

.
解题技巧
!由于这类题目往往是根据精度要求来求值,因此我们不能预知具体循环次数,所以这
类题目一般用 " 循环,很少用 , 循环。设定循环变量和通项变量,注意各变量的
初值;
0!分解通项表达式中各因子,并分别将各因子用循环变量表示;
7!如果步骤 0 中有的因子比较复杂,难以直接用变量表示,此时可以考虑使用
, 过程;
8!根据步骤 、0、7,写出通项表达式;
9!根据精度要求(往往是通项小于 负多少次方这样一个关系表达式),写出一条满
足精度要求后跳出循环的语句。通常是用::通项表达式3; <!2*
,注意这句话一般需放在累加或者连乘式之前。
实例说明以 00 年春上机试卷 = 编程题为例
根据 > 值计算:
=,0,……
要求: 项绝对值小于等于
<=
为止。
、由于循环次数不确定,因此确定用 " 循环结构并定义循环变量用 表示(初值
);用户输入的值用 * 表示;通项用 % 表示;累加值用 % 表示,初值为
;
0、分解通项式的组成
可以分解为三部分:
???可以表示为:(-); !
?????可以表示为:*; 0 <!!
?比较复杂,难以直接表示
7、由于步骤 0 中··· ···复杂,·此时考虑使用过程。
于是定义过程,输入值是 ,返回值是· ··
于是有:
(,((%@)%@
'%@
%%@

%/此处注意,由于是连乘,初值为
:'0 <!
%%'
*'
(%
.,
注意:由于是参数按地址传递,因此对于本题,实参的值不能在过程中被改变!(也
是改错题常考的地方!!)
8、根据步骤 、0、7,写出通项 % 的表达式:
%(-); !*; 0 <!!4( !
9、根据精度要求知:
':%(%)A; <=!2*
最后程序为:
!
"B%5@$%B%"$*B%"
* -*-*!
"
% <!; !*; 0 <!!4( !
':B% %!A; <=!-2.*"
%
5(
.
,( B%5@!B%5@
"'B%5@
"%B%5@
%C此处注意,由于是连乘,初值为
,'-0 <!
%%'
*'
(%
.,
注意:如果调试运行时死循环,可以按 +) 中断死循环,不需要重新启动机器。
(或者 5)
实战练习·
!?补充代码(07 秋二(D))
本程序的功能是求下面数列前 项之和。
*$!*400*;74087*;9408=*;0<408=0
E(.*(
!
"*B%@$%B%@
"B%'@$B%'@

*'()* +输入X:+,"求数列和",1!
'()* +输入N:+,"求数列和",1!
,-
%%: *$!
*
5(_(· ···)_· ·
-*%
.
,: *B%@$B%'@!B%@
__(· ·0··)__·· ·
(
,-
__(· ·7··)___· ·
*
:*; 0<!(
.,
0!编程题(07 春上机试卷 7)
按下列公式编写求积分余弦函数值的程序。当通项绝对值小于
-
9
时停止计算。
0最值问题
、算法说明·
在若干数中求最大值,一般先取第一个数为最大值的初值(即假设第一个数为最大
值),然后,在循环体内将每一个数与最大值比较,若该数大于最大值,将该数替换为最
大值,直到循环结束。
求最小值的方法类同。
求若干数平均值,实质上就是先求和,再除以这些数的个数。
应用举例
随机产生 个 -(包括 和 )的数,求它们的最大值、最小值和平均值。
!
"B%'@$B%'@$B%'@$*B%'@$
B%@$%B%'@
'()* +输入个数F+!!
%' G!
*%
%
%
+第 个数是:+&%
,0-
%' G!
+第+&?&+个数是:+&%
':%3*-2*%
':%A-2%

%
*
4
+*+6*6++66++6
.
解题技巧
最大值、最小值、平均值类型题目往往和数组放在一起考!有的不仅求这些值,还要对具
有最大值或者最小值的行或列或者某个元素进行处理,这时就要在记录最大、最小值时,
同时记录该值所在的行号和列号。
0、实战练习·
!补充代码(0 春二(H))
本程序的功能是在二维数组中查找鞍点元素,即该元素在所在行中为最大,且在所在
列中为最小。在一个数组中可能存在,也可能不存在这样的元素。数组各元素的值从文件
* 中读取。
, !
" 7$7!B%'@$B%'@$IB%'@
"*B%'@$B%'@$B%'@
E(*,'(B%J
,-7
,I-7
'(J$ $I!
$I!6
*I
*
,-7
*( )··
,I0-7
':*AB '$K!-L.
*( 0)··
I
.':
*I
,I-7
':*3 I$!-2( 7)··
*I
':I37-2
66$66!6 $!
.':
':( 8)·· ·-2鞍点元素不存在
*
.
剩余29页未读,继续阅读
















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0