强基初中数学&学Python——第二十九课 根据海伦-秦九韶公式编程计算三角形面积

    问题:如果把边长都是有理数的三角形称作“有理三角形”,编程计算“有理三角形”的面积(有理数或带根号的无理数,不是浮点数)。

    关键点分析:根号中的底化成最简分数,然后分子乘分母留在根号里,分母移到根号外。

    第一步、输入三边,用两小边之和大于第三边来做判断数据的合法性。首先定义一个函数输入1个正分数(这样可以重复利用代码,减少代码长度):

;然后定义一个检查三角形三边合法性函数(利于阅读理解程序):

;

最后,编写第一步主体代码:

    第二步、根号的底的整式运算,并化成最简分数。这里使用秦九韶公式进行整式运算,采用分数形式,系统自动化简:

编写主体程序代码:

    第三步、把分母移除根号外,化成整数开方,只需编写主体程序:

    第四步、化成整式或最简根式,为了缩短开发时间,引入第二十一课的SquareRoot类:

;编写主体程序代码:

    为了程序能不断提供服务,把主体代码放在永久循环之中,程序框架:

    课本计算题运算打印结果:

练习题1:把程序组合成完整的程序输入电脑自己算一算。

练习题2:改用海伦公式改编程序并运行,对比结果。