Haskell程式,用於查詢給定值的雙曲餘弦反函式


本文將幫助我們找到給定值的雙曲餘弦反函式。雙曲餘弦反函式,也稱為反雙曲餘弦,是雙曲餘弦的逆函式。它定義為acosh(x) = log(x + sqrt(x^2 - 1)),其中x > 1,log為自然對數。該函式的輸出是一個實數。

語法

acosh(angle)

這裡,acosh()是一個函式,value作為引數傳遞以計算傳遞值的雙曲餘弦反函式,並且傳遞的值必須大於1。

方法1:使用acosh()函式

在這種方法中,該函式使用自然對數函式(log)和平方根函式(sqrt)來計算必須大於1的輸入值的雙曲餘弦反函式。

演算法

  • 步驟1 − 匯入“Data.Complex”模組。

  • 步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成:main = do。

  • 步驟3 − 初始化一個名為“value”的變數。最初,它將具有垃圾值。然後,一個常量值被分配給它。此值使用賦值運算子分配給變數“value”。

  • 步驟4 − 從Prelude模組呼叫雙曲餘弦反函式acosh()。雙曲餘弦反函式acosh()不是Haskell中的內建函式。這裡,acosh()函式使用log和sqrt函式定義為acosh x = log (x + sqrt (x^2 - 1))。

  • 步驟5 − 包含值的“value”變數作為引數傳遞給acosh()函式,只需編寫函式呼叫的變數名稱即可。

  • 步驟6 − 在acosh()函式計算最終結果值後,結果被賦值給“result”變數,並透過列印結果值顯示最終輸出。要顯示輸出,我們使用print語句,如:print (result)。

示例

在這個例子中,我們將看到如何使用acosh()函式找到傳遞值的雙曲餘弦反函式。

import qualified Data.Complex as C
acosh :: Double -> Double
acosh x = log (x + sqrt (x^2 - 1)) 
main = do  
let value = 2.0 
let result = Prelude.acosh (value) 
putStrLn "The resultant hyperbolic arccosine value is:  "
print (result) 

輸出

The resultant hyperbolic arccosine value is:  
1.3169578969248166 

方法2:使用log函式

在這種方法中,計算給定複數值的雙曲餘弦反函式。該函式使用log函式和sqrt函式分別計算複數的自然對數和複數平方減一的平方根。此定義在acosh()中定義,然後被呼叫並用於計算結果。

演算法

  • 步驟1 − 匯入“Data.Complex”模組以處理複數並使用log函式。

  • 步驟2 − 使用log函式定義雙曲餘弦反函式,定義為acosh z = log (z + (sqrt ((z^2) - 1)))。這在main函式之上定義,以便在main函式中呼叫時使用。

  • 步驟3 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成:main = do。

  • 步驟4 − 從Prelude模組呼叫包含上述定義的log函式定義的雙曲餘弦反函式acosh(),以計算傳遞的複數值的雙曲餘弦反函式。

  • 步驟5 − 複數值(以a :+ b的形式)作為引數傳遞給acosh()函式。例如,acosh (3 :+ 4)

  • 步驟6 − 在acosh()函式計算最終結果值後,結果被賦值給“result”變數,並透過列印結果值顯示最終輸出。要顯示輸出,我們使用print語句,如:print (result)。

示例

在這個例子中,我們將看到如何使用log函式找到傳遞值的雙曲餘弦反函式。

import Data.Complex 

acosh :: Complex Double -> Complex Double
acosh z = log (z + (sqrt ((z^2) - 1))) 

main :: IO ()
main = do  
let result = Prelude.acosh (3 :+ 4) 
putStrLn "The resultant hyperbolic arccosine value is:  "
print (result) 

輸出

The resultant hyperbolic arccosine value is:  
2.305509031243477 :+ 0.9368124611557199

結論

可以使用acosh()函式計算Haskell中給定值的雙曲餘弦反函式值。雙曲餘弦反函式acosh()不是Haskell中的內建函式。還可以計算複數的雙曲餘弦反函式值,其中(x :+ sqrt (x^2 - 1))建立一個實部為x、虛部為sqrt(x^2 -1)的複數。

雙曲餘弦反函式在物理學、工程學和計算機科學等領域很有用,它用於研究雙曲函式及其屬性。

更新於: 2023年1月20日

瀏覽量:119

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告