壞的說法我有一個簡單的計算:藥劑:(ArithmeticError)的算術表達式
Enum.reduce(1..5, 0, &:math.pow/2)
但我得到這個錯誤:
** (ArithmeticError) bad argument in arithmetic expression
(stdlib) :math.pow(5, 262144.0)
(elixir) lib/enum.ex:1478: anonymous fn/3 in Enum.reduce/3
(elixir) lib/range.ex:80: Enumerable.Range.reduce/5
(elixir) lib/enum.ex:1477: Enum.reduce/3
是否有算術計算在藥劑的限制?
你真的想用'pow'減少1..199嗎?這將是一個非常龐大的數字。即使'1..5'也會產生一個大約180,000位的數字([Source](http://www.wolframalpha.com/input/?i=5+%5E+262144.0))。 – Dogbert
我正在學習Elixir,我正在介紹自己的限制。我知道這是一個很大的數字。但我其實需要了解這些限制。順便說一句,180k數字怎麼了?它只是一個很大的數字。 – Farsheed
這只是'1..5'。 '1..10'會產生[this](http://www.wolframalpha.com/input/?i=10%5E9%5E8%5E7%5E6%5E5%5E4%5E3%5E2%5E1)重新嘗試運行'1..199'。 – Dogbert