加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Elm 循环结构分析

发布时间:2023-04-11 10:58:11 所属栏目:教程 来源:
导读:Elm是一种功能编程语言。Elm使用递归的概念来替代传统的循环结构。

递归
其他计算机编程语言允许模块或函数自行调用,此技术称为递归。

示例
在此程序中,我们将看到如何使用递归五次显示问候。

步骤一:
Elm是一种功能编程语言。Elm使用递归的概念来替代传统的循环结构。

递归
其他计算机编程语言允许模块或函数自行调用,此技术称为递归。

示例
在此程序中,我们将看到如何使用递归五次显示问候。

步骤一:创建文件 Loop.elm
创建一个模块Loop并定义一个函数sayHello。函数sayHello将一个整数值作为输入并返回一个字符串值。

module Loop exposing(..)
//function signature
sayHello:Int ->String
//function implementation
sayHello n =
   case n of
   1 -> "Hello:1 "
   _ -> "Hello:" ++ toString (n) ++ " " ++ sayHello(n-1)
函数sayHello检查传递的参数是否为1。如果参数为1,则函数将返回,否则将创建字符串Hello并调用同一函数。

步骤二:从REPL调用 sayHello
从当前项目文件夹(Loop.elm文件的位置)中打开elm REPL。

//import the module Loop
> import Loop exposing(..)
//invoke the sayHello function with parameter value as 5
> sayHello 5
"Hello:5 Hello:4 Hello:3 Hello:2 Hello:1 Hello:0 " : String
>
Elm 循环结构

示例
下面的示例使用递归打印n个数字的总和。

> sumOfNos n =\
| if n==0 then 0 \
| else (n) + sumOfNos (n-1)
<function> : number -> number1
在elm REPL中,我们创建了一个函数sumOfNos,该函数接受一个输入数字并将所有从0到该数字的数字相加。

例如,如果我们将输入传递为5,则将求和1 + 2 + 3 + 4 + 5,即15。

> ssumOfNos 5
15 : number
程序的输出如上所示。

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章