Haskell程序 从给定分数和指数计算数值

Haskell程序 从给定分数和指数计算数值

这个haskell教程将帮助我们从一个数字的给定分数和指数中计算出数值。为了找到这一点,我们将输入分数和指数,并计算出其相应的数值。

算法

  • 第1步– 导入 “Data.Ratio “来处理分数的问题。

  • 第2步– 定义calculateValue函数

  • 第3步 – 程序的执行将从主函数开始。main()函数拥有程序的全部控制权。它被写成main = do。

  • 第4步 – 变量 “fraction “和 “exponent “被初始化。它将保存要计算的分数和指数的值。

  • 第5步 – 使用case下的’putStrLn’语句将结果打印到控制台。

例1

在这个例子中,我们将看到如何使用fromRational函数从给定的分数和指数中计算出数值。

import Data.Ratio

calculateValue :: Rational -> Integer -> Double
calculateValue fraction exponent = (fromRational fraction)^exponent

main :: IO ()
main = do
   let fraction = 3 % 4
   let exponent = 2

   let value = calculateValue fraction exponent
   putStrLn ("The value is: " ++ show value)

输出

The value is: 0.5625

例2

在这个例子中,我们将看到如何使用 Maybe monad 从给定的分数和指数中计算出数值。

import Data.Ratio

calculateValue :: Rational -> Integer -> Maybe Double
calculateValue fraction exponent = (^ exponent) <> (Just fromRational fraction)

main :: IO ()
main = do
  let fraction = 3 % 4
  let exponent = 2

  let result = calculateValue fraction exponent

  case result of
    Just value -> putStrLn ("The value is: " ++ show value)
    Nothing -> putStrLn "An error occured"

输出

The value is: 0.5625

例3

在这个例子中,我们将看到如何使用Either monad从给定的分数和指数中计算出数值。

import Data.Ratio

calculateValue :: Rational -> Integer -> Double
calculateValue fraction exponent = (fromRational fraction)^exponent

main :: IO ()
main = do
   let fraction = 3 % 4
   let exponent = 2

   let result = Right (calculateValue fraction exponent)

   case result of
      Right value -> putStrLn ("The value is: " ++ show value)
      Left error -> putStrLn error

输出

The value is: 0.5625

结论

在Haskell中,可以使用fromRational函数,通过使用Maybe或Either单体来计算给定分数和指数的值。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程