Haskell程序计算自然数之和


在本教程中,我们将讨论编写一个程序,使用 Haskell 编程语言计算自然数之和。

自然数是从 1、2、3...N 开始的正整数

在本教程中,我们将了解实现计算自然数之和程序的不同方法。

  • 使用数学公式计算自然数之和的程序。

  • 使用递归函数计算自然数之和的程序。

  • 使用列表方法/函数 sum 计算自然数之和的程序。

算法步骤

  • 声明或输入自然数的范围值 (n)。

  • 实现程序以计算最多 n 的自然数之和。

  • 打印或显示计算出的总和。

示例 1

使用数学公式计算自然数之和的程序。

main :: IO() main = do -- declaring and initializing the variable for range n let n = 10 -- computing sum and loading it in a variable let sum = n*(n+1)/2 -- printing the computed sum print ("sum of the natural number in range 1 to "++ show n) print (sum)

输出

"sum of the natural number in range 1 to 10.0"
55.0

在上面的程序中,我们声明并初始化了一个变量 n 来加载范围值。我们使用逻辑 n*(n+1)/2 计算了最多 n 的自然数之和。我们将计算出的值加载到变量 sum 中。最后,我们使用 print 函数打印了计算出的总和。

注意:“++” 是连接两个字符串的操作符。函数 show 用于将数字解析为字符串。此函数接受一个参数并返回一个字符串。

示例 2

使用递归函数计算自然数之和的程序

-- function declaration for function sumNatural sumNatural :: Int->Int -- function definition for function sumNatural -- base case sumNatural 1 = 1 -- all other cases sumNatural n = n + sumNatural (n-1) main :: IO() main = do -- declaring and initializing the variable for range n let n = 20 -- computing sum by invoking the function sumNatural and loading it in a variable let sum = sumNatural n -- printing the computed sum print ("sum of the natural number in range 1 to "++ show n) print (sum)

输出

"sum of the natural number in range 1 to 20"
210

在上面的程序中,我们声明了一个函数 sumNatural,它接受一个整数作为参数并返回一个整数。在其函数定义中,我们正在获取一个整数参数 n 并返回 n 加上对自身进行递归调用(参数为 n-1)。在函数基部,如果参数为 1,则函数返回 1。即函数返回从 1 到 n 的数字之和。在主函数中,我们声明并初始化了范围值 n 的变量。我们使用参数 n 调用了函数 sumNatural,并将返回值加载到变量 sum 中。最后,我们打印了变量 sum。

示例 3

使用列表方法/函数 sum 计算自然数之和的程序

main :: IO() main = do -- declaring and initializing the variable for range n let n = 10 -- generating a list of numbers from 1 to n let numbers = [1..n] -- computing sum by using the list method sum let sum1 = sum numbers -- printing the computed sum print ("sum of the natural number in range 1 to "++ show n) print (sum1)

输出

"sum of the natural number in range 1 to 10.0"
55.0

在上面的程序中,我们声明并初始化了一个变量 n 来加载范围值。我们使用“..”运算符生成了一个从 1 到 n 的数字列表,并将列表加载到变量 numbers 中。我们使用参数 numbers 调用了函数 sum。函数 sum 接受一个数字列表并返回列表中元素的总和。我们将返回的总和加载到变量 sum1 中,最后我们打印了变量 sum1。

结论

在本教程中,我们讨论了三种不同的方法来实现一个程序,以便在 Haskell 编程语言中计算自然数之和。

更新于: 2022年11月24日

834 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.