Haskell程序:计算圆柱体的体积和表面积
本教程将帮助我们计算圆柱体的体积和表面积。圆柱体的体积是圆柱体内空间大小的度量。表面积是指圆柱体的表面积。圆柱体体积的公式是圆柱体底面积(πr^2)乘以高h的积。圆柱体表面积的公式是两个圆形面的面积与矩形侧面面积之和。
算法
步骤 1 − 导入Text.Printf模块。
步骤 2 − 根据简单的数学公式定义体积和表面积函数,分别为体积 r h = pi * r * r * h 和表面积 r h = (2 * pi * r * h) + (2 * pi * r * r)。
步骤 3 − 程序执行将从主函数开始。main() 函数控制整个程序。它写成 main = do。主函数获取圆柱体的半径和高度,然后调用体积和表面积函数来计算结果。
步骤 4 − 初始化名为“radius”和“height”的变量。它们将分别包含要计算其面积和体积的圆柱体的半径和高度。
步骤 5 − 调用体积和表面积函数后,使用‘printf’语句显示最终的体积和表面积值。
使用用户定义的面积和体积函数
在这个例子中,定义了两个函数,volume 和 area,它们分别以圆柱体的半径和高度作为参数,并返回其体积和表面积。
示例 1
import Text.Printf volume :: Double -> Double -> Double volume r h = pi * r * r * h area :: Double -> Double -> Double area r h = (2 * pi * r * h) + (2 * pi * r * r) main :: IO () main = do let radius = 5 let height = 10 let vol = volume radius height let ar = area radius height printf "Volume of the cylinder is: %.2f" vol printf "Surface area of the cylinder is: %.2f" ar
输出
Volume of the cylinder is: 785.40 Surface area of the cylinder is: 471.24
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
使用 $ 运算符和 print 函数
此方法使用 $ 运算符将右侧的函数应用于左侧的参数,有效地减少了对函数调用周围括号的需求。最后,它使用 print 函数将结果打印到控制台。
示例 2
import Text.Printf volume :: Double -> Double -> Double volume r h = pi * r * r * h area :: Double -> Double -> Double area r h = (2 * pi * r * h) + (2 * pi * r * r) main :: IO () main = do let radius = 5 let height = 10 print $ "Volume of the cylinder is: " ++ show (volume radius height) print $ "Surface area of the cylinder is: " ++ show (area radius height)
输出
"Volume of the cylinder is: 785.3981633974483" "Surface area of the cylinder is: 471.23889803846896"
结论
有多种计算圆柱体体积和表面积的示例,但计算圆柱体体积和表面积的数学公式始终保持不变。在 Haskell 中,可以使用用户定义的函数或使用 $ 运算符和 print 函数来计算圆柱体的体积和表面积。