Haskell程式:從有理數中獲取分子


在Haskell中,我們可以使用numerator、div、quot和gcd函式從給定的有理數中找到分子。在第一個例子中,我們將使用numerator(r)函式;在第二個例子中,我們將使用(n `div` gcd n d)函式;在第三個例子中,我們將使用(numerator r `quot` gcd (numerator r) (denominator r))函式。

演算法

  • 步驟1 − 匯入Data.Ratio模組以使用numerator函式。

  • 步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。它寫成main = do。它呼叫帶有有理數的numerator函式並列印分子。

  • 步驟3 − 命名為“r”的變數被初始化。它將儲存要列印其分子的有理數值。

  • 步驟4 − 函式呼叫後,使用‘putStrLn’語句將結果分子值列印到控制檯。

示例1

在這個例子中,我們將看到如何從有理數中獲取分子。這可以透過使用numerator函式來實現。

import Data.Ratio

main :: IO ()
main = do
   let r = 3 % 4
   let num = numerator r
   putStrLn $ "The numerator of " ++ show r ++ " is: " ++ show num

輸出

The numerator of 3 % 4 is: 3

示例2

在這個例子中,我們將看到如何從有理數中獲取分子。這可以透過使用div和gcd函式來實現。

import Data.Ratio

getNumerator :: Rational -> Integer
getNumerator r = n `div` gcd n d where
   n = numerator r
   d = denominator r

main :: IO ()
main = do
   let r = 3 % 4
   let num = getNumerator r
   putStrLn $ "The numerator of " ++ show r ++ " is: " ++ show num

輸出

The numerator of 3 % 4 is: 3

示例3

在這個例子中,我們將看到如何從有理數中獲取分子。這可以透過使用quot和gcd函式來實現。

import Data.Ratio

getNumerator :: Rational -> Integer
getNumerator r = numerator r `quot` gcd (numerator r) (denominator r)

main :: IO ()
main = do
   let r = 3 % 4
   let num = getNumerator r
   putStrLn $ "The numerator of " ++ show r ++ " is: " ++ show num

輸出

The numerator of 3 % 4 is: 3

結論

有理數的分子是分數的頂部部分。換句話說,它是被分母除的數字。

在Haskell中,要獲取給定有理數的分子,我們可以將gcd函式與div或quot函式一起使用。也可以使用numerator函式獲得。

更新於:2023年3月13日

瀏覽量:133

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告