Haskell程序:计算梯形面积
本教程讨论如何在Haskell编程语言中编写一个计算梯形面积并打印结果的程序。
梯形是一个只有一组对边平行的四边形。
上图是一个梯形。其中一条平行边的长度用a表示,另一条平行边的长度用b表示。梯形的高度用h表示。
梯形的面积定义为(a+b)/(2*h),其中a和b是平行边的长度,h是平行边之间的高度或距离。
在本教程中,我们将学习两种实现计算梯形面积程序的方法。
- 在主函数中计算梯形面积的程序。
- 使用自定义函数计算梯形面积的程序。
算法步骤
- 输入或初始化变量。
- 实现计算梯形面积的程序逻辑。
- 打印或显示面积。
示例1
在主函数中计算梯形面积的程序
main :: IO() main = do -- declaring and initializing variables for sides and height let a = 5 let b = 6 let h = 8 -- computing the area let area = 0.5*(a+b)*h -- printing or displaying the area print ("The area of the trapezium with parallel sides "++ show a ++ "," ++ show b ++ " and height " ++ show h ++ " is:") print (area)
输出
"The area of the trapezium with parallel sides 5.0,6.0 and height 8.0 is:" 44.0
在上面的程序中,我们分别声明并初始化了表示边长和高度的变量a、b和h,其值分别为5、6和8。我们使用适当的公式和这些变量计算了梯形的面积,并将结果存储在变量area中。最后,使用print函数打印面积。
注意 − show函数接收一个数字作为参数,并返回该数字的解析字符串。“++”是Haskell中用于连接字符串的运算符。
示例2
使用自定义函数计算梯形面积的程序
-- function declaration area :: Float->Float->Float->Float -- function definition area a b h = 0.5*(a+b)*h main :: IO() main = do -- declaring and initializing variables for sides and height let a = 5 let b = 6 let h = 8 -- computing the area let d = area a b h -- printing or displaying the area print ("The area of the trapezium with parallel sides "++ show a ++ "," ++ show b ++ " and height " ++ show h ++ " is:") print (d)
输出
"The area of the trapezium with parallel sides 5.0,6.0 and height 8.0 is:" 44.0
在上面的程序中,我们声明了一个名为area的函数,它接收三个浮点数作为参数并返回一个浮点数。在函数定义中,接受三个参数a、b和h。在这个函数中计算梯形的面积并返回结果。在主函数中,我们分别声明并初始化了表示边长和高度的变量a、b和h,其值分别为5、6和8。我们使用a、b和h作为参数调用了area函数,并将返回的结果存储在变量d中。最后,使用print函数打印面积。
结论
在本教程中,我们讨论了在Haskell编程语言中实现计算梯形面积程序的不同方法。
广告