Haskell程序,用于查找给定值的双曲反正弦


本教程将帮助我们找到给定值的双曲反正弦。双曲反正弦(也称为“面积双曲正弦”或“反双曲正弦”)的值,表示为asinh(x),是双曲正弦函数(sinh(x))的反函数,定义为 -

asinh(x) = ln(x + sqrt(x^2 + 1))

语法

asinh(angle)

这里,asinh()是一个计算给定值的双曲反正弦的函数,并且value作为参数传递以计算传递的值的双曲反正弦。它包含在Prelude模块中,该模块自动导入到所有Haskell程序中,因此无需导入任何其他模块即可使用它。

方法1:使用asinh()函数

在这种方法中,asinh()函数计算双曲反正弦的值,这意味着它接收一个值x,并返回一个值y,使得sinh(y) = x。计算使用公式asinh(x) = ln(x + sqrt(x^2 + 1))进行。

算法

  • 步骤1 - 程序执行将从main函数开始。main()函数控制整个程序。它被写成,main = do

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

  • 步骤3 - 调用双曲反正弦函数asinh()。双曲反正弦asinh()函数不是Haskell中的内置函数,但它是Prelude模块的一部分。这里,asinh()函数使用ln和sqrt函数定义。

  • 步骤4 - 将包含值的“value”变量作为参数传递给来自Prelude模块的asinh()函数。

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

示例

在本例中,我们将看到如何使用asinh()函数找到传递值的双曲反正弦。

main = do
let value = 3.14
let result = asinh(value) 
print (result)

输出

1.8618125572133835 

方法2:使用log函数计算asinh()

在这种方法中,将使用Prelude模块中的log函数而不是ln函数,以及Math.Functions模块中的sqrt函数以及^运算符将数字提高到幂来计算Haskell中给定值的双曲反正弦。此定义在asinh()中定义,然后调用并用于计算结果。然后在屏幕上显示结果。

算法

  • 步骤1 - 导入“Prelude”模块,隐藏asinh()函数。此模块已包含asinh()函数。

  • 步骤2 - 使用log函数在Prelude模块下定义双曲反正弦函数,定义为asinh x = log (x + sqrt (x^2 + 1))。此定义在main函数中定义,并在调用函数后可以在main下使用。

  • 步骤3 - 程序执行将从main函数开始。main()函数控制整个程序。它被写成,main = do。

  • 步骤4 - 初始化一个名为“value”的变量,该变量将包含角度值。并使用赋值运算符为其分配一个常量值。

  • 步骤5 - 调用包含上述定义的log函数定义以计算传递的角度值的双曲反正弦的双曲反正弦函数asinh()。

  • 步骤6 - 通过简单地编写变量名称以及调用的函数,将角度值作为参数传递给asinh()函数。

  • 步骤7 - 在asinh()函数计算最终结果值后,结果将被赋给“result”变量,并通过打印结果值显示最终输出。要打印结果,我们可以使用‘putStrLn’,如putStrLn $ "asinh(" ++ show value ++ ") = " ++ show result。或者,我们也可以使用print (result)。

示例

在本例中,我们将看到如何使用log函数找到传递值的双曲反正弦。

import Prelude hiding (asinh)
asinh :: Double -> Double
asinh x = log (x + sqrt (x^2 + 1)) 
main :: IO ()
main = do  
let value = 2.5 
let result = asinh value 
putStrLn $ "asinh(" ++ show value ++ ") = " ++ show result  

输出

asinh(2.5) = 1.6472311463710958

结论

可以通过使用asinh()函数计算Haskell中给定值的双曲反正弦值。双曲反正弦asinh()函数不是Haskell中的内置函数,但它是Prelude模块的一部分。双曲反正弦函数对所有实数值x定义,并且返回负无穷大和正无穷大之间的值。它在数学、物理和工程等各个领域都有用。

更新于: 2023年1月20日

115 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告