Haskell程序:求给定值的双曲反正切


本教程将帮助我们找到给定值的双曲反正切。双曲反正切,也称为反双曲正切,是双曲正切的反函数。它用atanh(或arctanh)表示,可以定义为atanh(x) = (ln(1+x) - ln(1-x)) / 2

语法

atanh(angle)

这里,atanh()是一个函数,值作为参数传递以计算传递值的双曲反正切。它返回(-∞, ∞)范围内的值。在Haskell中,atanh()函数是Floating类的部分,Floating类是Real类的子类。它用于计算值的反正切,其双曲正切等于给定值。

方法一:使用log()函数

在这种方法中,该函数使用自然对数函数(log)和平方根函数(sqrt)来计算输入值的双曲反正切,并在函数被调用后计算结果。

算法

  • 步骤1 − 导入“Data.Complex”模块以使用log函数。

  • 步骤2 − 程序执行将从main函数开始。main()函数控制整个程序。

  • 步骤3 − 初始化名为“value”的变量。最初,它将具有垃圾值。然后,将一个常数值赋给它。使用赋值运算符将此值赋给变量“value”。

  • 步骤4 − 调用双曲反正切函数atanh()。如果不使用cmath库,则必须定义atanh()函数。为了计算传递值的双曲反正切,使用log和sqrt函数定义atanh()函数,如atanh x = log ((1 + x) / (1 - x)) / 2。

  • 步骤5 − 将包含值的“value”变量作为参数传递给atanh()函数。

  • 步骤6 − atanh()函数计算最终结果值后,将结果赋值给“result”变量,并通过打印结果值显示最终输出。

示例

在这个例子中,我们将看到如何使用log()函数找到传递值的双曲反正切。

import Data.Complex

atanh :: Double -> Double
atanh x = log ((1 + x) / (1 - x)) / 2 

main :: IO()
main = do  
let value = 0.5 
let result = Prelude.atanh value 
putStrLn ("The hyperbolic arctangent of " ++ show value ++ " is " ++ show result)

输出

The hyperbolic arctangent of 0.5 is 0.5493061443340549 

方法二:使用atanh()函数

在这种方法中,给定值的双曲反正切是通过直接调用atanh()函数来计算的。atanh()函数的定义包含在cmath库中。因此,我们可以直接调用此函数并将值作为参数传递给它。然后,结果双曲反正切将显示在屏幕上。

算法

  • 步骤1 − 导入“Data.Complex”模块。

  • 步骤2 − 程序执行将从main函数开始。main()函数控制整个程序。

  • 步骤3 − 初始化名为“value”的变量。最初,它将具有垃圾值。然后,将一个常数值赋给它。使用赋值运算符将此值赋给变量“value”。

  • 步骤4 − 直接调用cmath库中已包含其函数定义以计算双曲反正切的双曲反正切函数atanh()。

  • 步骤5 − 将包含值的“value”变量作为参数传递给atanh()函数,只需编写函数调用的变量名即可。

  • 步骤6 − atanh()函数计算最终结果值后,将结果赋值给“result”变量,并通过打印结果值显示最终输出。可以使用‘putStrLn’打印结果,例如putStrLn ("The hyperbolic arctangent of " ++ show value ++ " is " ++ show result)。也可以使用print (result)。

示例

在这个例子中,我们将看到如何使用atanh()函数找到传递值的双曲反正切。

import Data.Complex

main :: IO ()
main = do  
let value = 0.5
let result = Prelude.atanh value 
putStrLn ("The hyperbolic arctangent of " ++ show value ++ " is " ++ show result)

输出

The hyperbolic arctangent of 0.5 is 0.5493061443340549

结论

可以使用atanh()函数计算Haskell中给定值的双曲反正切值。双曲反正切函数atanh()是Haskell中的内置函数,其定义已在cmath库中提供。否则,如果不使用cmath库,我们也可以使用log函数定义双曲反正切函数的函数定义。

双曲反正切函数在物理学、工程学和计算机科学等领域非常有用,用于研究双曲函数及其性质。

更新于:2023年1月20日

浏览量:113

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.