Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 项目Euler Q.2 Ruby a[i]如果a[i]%2==0不工作_Arrays_Ruby - Fatal编程技术网

Arrays 项目Euler Q.2 Ruby a[i]如果a[i]%2==0不工作

Arrays 项目Euler Q.2 Ruby a[i]如果a[i]%2==0不工作,arrays,ruby,Arrays,Ruby,这是我的Github的链接 我的问题在第26行: c << a[i] if a[i] % 2 == 0 c这里是i,i=27,28,29,30的计算值。召回限制#=>4_000_000 i #=> 27 a[27] + a[28] #=> 514_229 + 832_040 #=> 1_346_269 < 4_000_000 #=> true # so continue c.last #=> 196_418 #=> unchanged b

这是我的Github的链接

我的问题在第26行:

c << a[i] if a[i] % 2 == 0

c这里是
i,i=27,28,29,30的计算值。召回
限制#=>4_000_000

i #=> 27
a[27] + a[28] #=> 514_229 + 832_040 #=> 1_346_269 < 4_000_000 #=> true # so continue
c.last #=> 196_418 #=> unchanged
b #=> 1_346_269
a #=> [..., 514229, 832040, 1346269]

i #=> 28
a[28] + a[29] #=> 832040 + 1346269 #=> 2178309 < 4000000 #=> true, so continue
c.last #=> 832_040 # c.last changes
b #=> 2_178_309
a #=> [..., 832040, 1346269, 2178309]

i #=> 29
a[29] + a[30] #=> 1346269 + 2178309 #=> 3524578 < 4000000 #=> true, so continue
c.last #=> 832_040 # unchanged
b #=> 3_524_578
a #=> [..., 1346269, 2178309, 3524578]

i #=> 30
a30 + a31 #=> 2178309 + 3524578 #=> 5702887 < 4000000 #=> false, so stop.
i#=>27
a[27]+a[28]#=>514_229+832_040#=>1_346_269<4_000#=>true#继续
c、 最后一次#=>196#418#=>
b#=>1_346_269
[5142298320401346269]
i#=>28
a[28]+a[29]#=>832040+1346269#=>2178309<4000000#=>true,继续
c、 最后#=>832_040#c.最后更改
b#=>2_178_309
[83204013462692178309]
i#=>29
a[29]+a[30]#=>1346269+2178309#=>3524578<4000000#=>true,继续
c、 最后#=>832_040#未更改
b#=>3_524_578
[1346269、2178309、3524578]
i#=>30
a30+a31#=>2178309+3524578#=>5702887<4000000#=>false,停止。

这说明了当
i
等于
30
时,
c
不会得到更新的原因。

根据堆栈溢出规则,问题应该尽可能自给自足,只需要最少的示例来说明问题本身;链接只是奖金。请在将来记住这一点。请尊重帮助你的人的时间。您的代码应该尽可能容易让他们阅读和理解。这意味着:描述性标识符名称(不是
a
b
c
)和禁用的调试代码已删除。此外,在引用大整数时,在代码和文档中使用下划线是很有帮助的,例如4_000_000和3_524_578。(关于我之前的评论,在Ruby中,在数字常量中使用下划线是合法的。)很抱歉,我以后会记住一件小事:你可以写
n.偶数?
n.奇数?