Elixir - 递归列表值的总和

2024-03-29

只是尝试对列表值进行简单求和。

defmodule Mth do 

    def sum_list([]) do 
        0
    end

    def sum_list([H|T]) do
        H + sum_list(T)
    end

end

IO.puts Mth.sum_list([1, 2, 300]) 

但我收到这个错误:

**(FunctionClauseError) no function clause matching in Mth.sum_list/1
    pokus.ex:3: Mth.sum_list([1, 2, 300])
    pokus.ex:14: (file)
    (elixir) src/elixir_lexical.erl:17: :elixir_lexical.run/2
    (elixir) lib/code.ex:316: Code.require_file/2**

您需要使用小写字母作为变量和函数名称。以大写开头的标识符是为模块保留的:

defmodule Mth do 

  def sum_list([]) do 
    0
  end

  def sum_list([h|t]) do
    h + sum_list(t)
  end

end

iex> IO.puts Mth.sum_list([1, 2, 300])
303
:ok
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Elixir - 递归列表值的总和 的相关文章

  • Ecto迁移中如何动态更新字段值?

    我有一个用户表 例如 email username email protected cdn cgi l email protection email protected cdn cgi l email protection email pr
  • 如何使用 Geo 库创建有效的 Ecto 模型变更集?

    我正在尝试使用Geo https github com bryanjos geo通过 Phoenix 模型变更集存储 Geo Point 的库 我的参数是 coordinates 49 44 17 87 或者更喜欢的是 coordinate
  • 如何使用 Ecto 的时间戳向现有表添加时间戳?

    Since inserted at and updated at不可能是null这是行不通的 def change do alter table channels do timestamps end end Postgrex Error E
  • Elixir - 递归列表值的总和

    只是尝试对列表值进行简单求和 defmodule Mth do def sum list do 0 end def sum list H T do H sum list T end end IO puts Mth sum list 1 2
  • Erlang:NIF 和透析器警告

    在实施 NIF 时 Dialyzer 给了我 函数 crc16 1 没有本地返回 可能是因为我这样做exit在 erl 模块中 如官方文档推荐 module my nifs export crc16 1 on load init 0 ini
  • 为什么在 Erlang 中使用 OTP?

    正如问题所说 使用 Erlang 进行开发时 使用 OTP 设计原则会带来什么好处 我正在开发一个仅接收命令并发送响应的服务器 正如 Jonas 所说 OTP 是一组久经考验的设计元素和习惯用法 用于创建容错系统以及其他功能 例如灵活性 实
  • 加密 (cryptojs) - 解密 (erlang)

    我有一个使用 cryptoJS AES 加密的值 需要使用 Erlang 加密库进行解密 对我来说问题在于能够在 Erlang 中使用解密aes cbc 128 decrypt Key IVec Cipher 我想 我需要知道使用的 IVe
  • 随机排列列表中的元素(随机重新排列列表元素)

    我的程序的一部分要求我能够随机洗牌列表元素 我需要一个函数 当我给它一个列表时 它会伪随机地重新排列列表中的元素 安排的改变Must每次通话时都可以看到相同的列表 我的实现似乎工作得很好 但我觉得它相当长 并且正在增加我的代码库 而且 我有
  • Erlang 中的二进制和位串有什么区别?

    在 Erlang shell 中 我可以执行以下操作 A 300 300 lt
  • Erlang 生成问题

    我在 erlang 中遇到了 spawn 问题 似乎进程在一段时间后就死掉了 这是简单的代码 module simple export server 1 client 1 owner 1 spawn n 2 start 1 main 1 s
  • “!”、“?”、“_”和“.”是什么意思? Elixir 中的语法

    我需要帮助理解 Elixir 中的以下语法 and 这些语法在 Elixir 的功能中起什么作用 例如Repo get 我不确定它们是否只是函数名称 或者有一个角色 虽然我知道 用于调用匿名函数 和 对于任何或可变的 失败时引发异常的函数约
  • 在 Erlang 中使用完全限定的函数调用?

    我刚刚学习了如何在 Erlang 中升级模块 并且我知道只有使用完全限定名称的函数调用 例如module function 重新链接 到加载到 VM 中的当前版本 但未指定模块名称的函数调用不会 重新链接 到当前版本 而是继续使用旧版本 关
  • 打造 ecto 独一无二的领域

    如何制作一个字段unique在体外 我以为它和Ruby中的活动记录一样 但似乎不是 你想使用唯一约束 3 http hexdocs pm ecto Ecto Changeset html unique constraint 3 这与 Act
  • Ecto 和 Elixir 的默认日期时间

    我今天刚刚开始使用 Elixir 和 Phoenix 我正在尝试添加 Ecto 作为映射器 但我在使用时间时遇到了一些问题 这是我的模型 schema users do field name string field email strin
  • 检查 Erlang 中的活动计时器

    有没有一种简单的方法来获取所有当前等待的计时器的列表erlang send after erlang apply after等在Erlang中 出于调试目的 您可以使用dbg 首先创建一个 ets 表来存储所有计时器引用 1 gt ets
  • 在 Erlang 中展平嵌套列表的列表

    我正在做练习Erlang编程 问题是 编写一个函数 给定一个嵌套列表的列表 该函数将返回一个平面列表 例子 flatten 1 2 3 4 5 6 1 2 3 4 5 6 提示 使用concatenate解决flatten 这是我的conc
  • 如何使用 ibrowse 将附件上传到 CouchDB 中的文档?

    我已经使用curl上传图像文件Penguins jpg 例如 C curl gt curl vX PUT H Content Type image jpeg http localhost 5984 DBNAME DOCID Penguins
  • Ecto 中按日期时间查询

    这是我尝试过的 date Ecto DateTime from erl calendar universal time query gt where record record deadline gt date 我也尝试过 date Ect
  • 停止 Erlang 守护进程

    除了跑步 killall 9 beam smp 当我知道 Erlang 节点的情况时 如何以编程方式杀死它 sname 如果我不希望心跳监视器重新启动该进程 如何确保上述问题的任何答案也会终止心跳 有没有一个不错的指南来将 Erlang 部
  • Mnesia:如何同时锁定多行,以便我可以写入/读取一组“一致”的记录

    我多么希望我一开始就能表达我的问题 取一个包含 26 个键 a z 的表 并让它们具有整数值 创建一个流程 哎哟 一遍又一遍地做两件事 在一笔交易中 写入随机值a b and c使得这些值always总和为 10 在另一个事务中 读取值a

随机推荐

  • 如何在Wordpress中通过父页面标题获取页面的所有子页面?

    例子 About technical medical historical geographical political 如何创建这样的函数 function get child pages by parent title title th
  • 点源变量 VS 全局变量

    我有两种从单独的脚本文件引用脚本变量的方法 以下是两个基本示例 1 点源变量 ps1 Source source Destination dest 执行 ps1 Variables ps1 Copy Item Path Source Des
  • 在 Pandas 中,如何根据列的值对多索引的一个级别进行排序,同时保持另一级别的分组

    我现在正在大学学习数据挖掘课程 但我有点陷入多索引排序问题 实际数据涉及大约 100 万条电影评论 我试图根据美国邮政编码进行分析 但为了测试如何做我想做的事 我一直在使用一个小得多的数据集 其中包含 250 个随机生成的数据集我使用的是年
  • 结构伪类和属性选择器不能一起工作

    我有这个 HTML 代码 div class field div
  • 如何在不使用 R 中的 for 循环的情况下编写此指标矩阵

    我有一个由一系列数字给出的因子向量 这些因素也可以在单独的数据集中找到 称为test set and train set 以下代码的作用是查找数据集中的因子在因子向量中匹配的位置 并将 1 放在矩阵的位置 乘以这个矩阵compound te
  • 在持续重构的项目中使用 git/mercurial?

    我试图了解我是否真的有使用 git mercurial 的情况 我工作的项目是java和c 项目 通常有5 20人致力于 一个共同的目标 发布 大多数开发人员都是专业开发人员 重构代码一直 所以典型的linux内核有大量的 单独文件中相对独
  • 有没有一种简单的方法来获取时间戳==昨天的数据?

    有没有一种简单的方法来获取时间戳 昨天的数据 我只想要昨天的数据 SELECT COUNT t0 user id AS t0 qt AC5uO9oi FROM something here AS t0 WHERE t0 event type
  • 了解“中位数的中位数”算法

    我想了解以下示例的 中位数 算法 我们有 45 个不同的数字 分为 9 组 每组 5 个元素 48 43 38 33 28 23 18 13 8 49 44 39 34 29 24 19 14 9 50 45 40 35 30 25 20
  • 如何安装uWebSockets?

    我通过 VMware 在 Windows 10 上运行 ubuntu 因为Udacity课程需要uWebSockets来运行模拟器 这是班级安装它的步骤 run chmod a x install linux sh 这是install li
  • 在 For 循环内创建线程 C++

    我一直在 for 循环内尝试多线程 基本代码块将是这样的 void function int a string b MyClass Obj MyClass2 Obj2 execution part void anotherclass Mem
  • C# 类多态

    为什么下面代码的结果是 Class AA级A级 public class A public virtual void f Console WriteLine Class A public class B A public virtual v
  • 如何保护网站免受 DoS 攻击

    保护站点免受 DoS 攻击的最佳方法是什么 知道流行的网站 服务如何处理这个问题吗 应用程序 操作系统 网络 托管级别的工具 服务是什么 如果有人能分享他们的真实经历 那就太好了 Thanks 您确定是说 DoS 不是注入吗 在 Web 编
  • Materialise css 图标不显示在 Safari 浏览器中

    我注意到materialized CSS图标不显示在Safari v5 1 7 7534 57 2 关于这个主题进行了很多搜索 但没有任何有关 safari 的浏览器兼容性的文档已列出 谁能告诉我这是否是一个需要修复的错误 或者是否有其他方
  • Python 正则表达式 findall 带变量

    我正在尝试使用 re findall 与后视和前瞻来提取数据 当我不使用 raw input 变量时 正则表达式工作正常 但我需要用户能够输入各种不同的搜索词 这是当前的代码 me re findall r lt variable vari
  • Angular Google 地图 - 自动设置“中心”和“缩放”以适应所有标记

    我的 Google 地图中有一个动态生成的标记列表 我希望地图的中心成为所有标记的中心 并缩小到足以使所有标记都在视图中 在计算地图中心方面 也许可以通过迭代所有的纬度和经度并找到中心点来实现 但是 我无法找出计算缩放比例的最佳方法 这有可
  • 异构词典,但是类型化?

    这更多的是一个学术探究而不是一个实际问题 是否有任何语言或框架功能可以或将来允许异构类型字典 例如 myDict Add Name Bill myDict Add Height 1 2 其中 myDict 现在不包含两个object类型作为
  • 错误:迁移到 androidx 后找不到符号类 MediaStyle

    android support v4 media app NotificationCompat MediaStyle 在音乐播放器应用程序中工作正常 但迁移到 android x 后出现此错误 找不到符号类 MediaStyle 任何帮助将
  • 使用 post 方法打开 URL android

    我必须向网址发送一些参数并打开它 但我不知道该怎么做 var variables URLVariables new URLVariables variables param1 param1 variables param2 param2 v
  • Objective-C 在 NSArray 中搜索字符串?

    我有一个字符串数组 我如何才能找出字符串在数组中的索引 NSArray indexOfObject http developer apple com mac library documentation Cocoa Reference Fou
  • Elixir - 递归列表值的总和

    只是尝试对列表值进行简单求和 defmodule Mth do def sum list do 0 end def sum list H T do H sum list T end end IO puts Mth sum list 1 2