内容正文:
第三章 算法的程序实现
解析算法及其程序实现
如何根据边数计算正n多边形的内角度?
学前思考
已知条件:
要求的解:
数学表达式:
分析:
正多边形的边数n
正多边形内角度数d
d = (n - 2) * 180 / n
根据已知条件,分析出需要求出的解,寻找到已知条件和需求解之间的数学关系式 ------解析算法
解析算法
编程计算2个电阻并联后的总电阻值?
解析算法
分析:
解析算法
已知条件是什么?
要求的解是什么?
已知与结果之间的表达式怎么写?
两电阻的阻值R1,R2
并联后的总电阻值R
1/R = 1/R1 + 1/R2
R1=float(input("输入电阻R1的值:"))
解析算法
代码
R2=float(input("输入电阻R2的值:"))
R=1/R1+1/R2
print("电阻R1和R2并联的总电阻:%8.3f" %(1/R))
输出结果:
输入电阻R1的值:3
输入电阻R2的值:5
电阻R1和R2并联的总电阻: 1.875
编程计算n个电阻并联后的总电阻值?
扩展
分析:
解析算法
已知条件是什么?
要求的解是什么?
已知与结果之间的表达式怎么写?
n个电阻的阻值R1,R2,···,Rn
并联后的总电阻值R
1/R = 1/R1 + 1/R2 + ··· +
1/Rn
扩展
分析:
解析算法
需要哪些变量?
循环体语句怎么写?
r[]:存储每一次输入的电阻值;
R:累加器,存储电阻倒数(1/R)的累加值
R = R + 1/r[i]
循环范围是什么?
i = 0, 1, ···, n-1
扩展代码
解析算法
n=int(input("输入并联电阻的个数:"))
r=[ ];R=0
for i in range(n):
r.append(float(i