Haskell程式:計算圓錐的體積和表面積


本教程將幫助我們計算圓錐的體積和表面積。圓錐的體積是圓錐內部空間大小的度量。表面積是指圓錐的側面積。圓錐體積的公式為 V = (1/3) * π * r^2 * h,其中 r 為圓錐底部的半徑,h 為圓錐的高度,π 近似等於 3.14。

圓錐表面積的公式為 A = π * r * s,其中 r 為圓錐底部的半徑,s 為圓錐的斜高。

演算法

  • 步驟 1 - 初始化名為“radius”(半徑)和“height”(高度)的變數。它們將分別包含需要計算表面積和體積的圓錐的半徑和高度。

  • 步驟 2 - 根據簡單的數學公式定義體積和表面積函式:體積 = (pi * radius^2 * height) / 3;側面積 = pi * radius * sqrt(radius^2 + height^2);表面積 = 側面積 + pi * radius^2。

  • 步驟 3 - 程式執行將從主函式開始。main() 函式控制整個程式。它寫成 main = do。主函式從使用者那裡獲取圓錐的半徑和高度輸入,然後使用上述函式計算體積和表面積。

  • 步驟 4 - 一旦呼叫體積和表面積函式,則使用 'putStrLn' 語句和 show 函式顯示最終的體積和表面積值。

使用使用者自定義函式

在這個例子中,我們使用 pi 值和平方根函式。圓錐的半徑和高度在程式開始時定義為變數。然後,我們使用這些變數,根據適當的公式計算圓錐的體積、側面積和總表面積。最後,我們使用 putStrLn 函式將結果列印到控制檯。

示例

radius = 5
height = 10
volume = (pi * radius^2 * height) / 3
lateralArea = pi * radius * sqrt(radius^2 + height^2)
surfaceArea = lateralArea + pi * radius^2
main = do
   putStrLn ("Volume: " ++ show volume)
   putStrLn ("Surface Area: " ++ show surfaceArea)

輸出

Volume: 261.79938779914943
Surface Area: 254.160184615763

使用圓錐資料型別

這種方法定義了一個圓錐資料型別,它是一個包含兩個欄位的記錄:半徑和高度。然後,我們定義三個函式 coneVolume、coneLateralArea 和 coneSurfaceArea,它們以 Cone 為引數並返回相應的體積和麵積。在主函式中,我們建立一個具有半徑和高度值的 Cone,然後使用定義的函式計算體積和表面積並將其列印到控制檯。

示例

data Cone = Cone { radius :: Double, height :: Double }

coneVolume :: Cone -> Double
coneVolume (Cone r h) = (pi * r^2 * h) / 3

coneLateralArea :: Cone -> Double
coneLateralArea (Cone r h) = pi * r * sqrt (r^2 + h^2)

coneSurfaceArea :: Cone -> Double
coneSurfaceArea c = coneLateralArea c + pi * (radius c)^2

cone = Cone 5 10
main = do
   putStrLn ("Volume: " ++ show (coneVolume cone))
   putStrLn ("Surface Area: " ++ show (coneSurfaceArea cone))

輸出

Volume: 261.79938779914943
Surface Area: 254.160184615763

結論

計算圓錐的體積、側面積和表面積有多種方法,但計算圓錐體積和麵積的數學公式始終保持不變。在 Haskell 中,可以使用使用者自定義函式或定義 Cone 資料型別來計算圓錐的體積和麵積。

更新於:2023年1月23日

瀏覽量:186

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告