文档介绍:授课人: 杨鹏第 06 课并联电阻总阻值的计算高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏(1)什么是解析算法(2)怎样用解析方法来设计算法(3)找到正确解决问题的数学关系式 2 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏解析算法用数学公式描述客观事物间的数量关系,是人们解决问题时最常用的方法之一。例如计算以速度 v作匀速直线运动的一个物体,在 t秒内经过的距离 s,则可通过公式 s=vt 得到。解析算法基本思想:用解析的方法找出表示问题的前提条件与所求结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。 3 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏例题例1 . 计算 n个电阻并联后的总电阻值电阻有 A、B两端,把 n个电阻的 A端和 A端相联, B端和 B端相联, 形成并联结构,称为“n个电阻并联”。这时,从并联的 n个电阻的两端 A、 B测得的电阻值,是这 n个电阻并联的总电阻值。图 1是2个电阻并联, 图2是3个电阻并联。设计一个算法,计算电阻并联的总电阻值 R。其中,每个电阻的阻值可由键盘输入,当输入了一个 0时,表示输入结束。图1图2 4 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏解决该问题的步骤: (1)算法分析 n个并联电阻的总电阻值 R的倒数等于参与并联的各个电阻值的倒数之和,即: 算法设计中各变量的用途: rs:累加器,参与并联的各电阻值的倒数将逐个地累加到这个累加器中。 r:存储从键盘输入的电阻值。 5 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏(2)用流程图描述的算法如图: 运行体验运行“计算总电阻”程序,完成下列操作。 1)采用“自动运行”模式, 分别输入数据 25 、 36 和0, 输出结果为。 2)采用“单步运行”模式, 输入数据 0,输出的所有结果为。 6 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏例题例 ,将设计一个计算机程序,专门回答储户如下的问题: “M 元钱需要存多少年,才能得到至少 K元本息? ”(为简单起见,算法中暂不考虑利息税问题)。为简单起见,假定银行公布的储蓄规则为: ①存期以年为单位,存款以元为单位; ②不论存期的长短,年利率均为 % ; ③不计复利。 7 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏(1)算法分析: 按照该银行的储蓄规则,一笔数量为 M元的存款: 1年后到期的本息为: M+M × 2 年后到期的本息为: M+M × +M × Y 年后到期的本息为: M+Y ×(M× ) 因此,一笔 M元钱的存款,需要存 Y年,才能得到至少 K元本息: 8 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏(2)用流程图描述算法如下图: 运行体验运行“储蓄顾问”程序,完成下列操作。 1)采用“自动运行”模式,分别输入数据 10000 和 12000 ,输出结果为。 2)采用“单步运行”模式, 若输入数据 1000 和 2000 ,则需要存年本息才能达到 2000 元。 3)继续采用“单步运行”模式, 若输入数据 1000 和 800 ,这时程序能否正常运行? 9 高中信息技术必修高中信息技术必修 2 2:算法与程序设计:算法与程序设计授课人: 杨鹏例题例3 . 计算 S=1+ 1/3 !+ 1/5 !+ 1/7 !的值, 用流程图来描述。算法分析: n!=1 *2*3*……* (n-1) *n, 如5! =1 *2*3*4*5,因为计算分母最大值为 7!,所以设置 n循环范围为 2—4,变量 i初值为1,通过( 2* n-1 )* (2* n-2) *i产生 3!、 5!、 7!。用算法流程图表示如下: 10