-3
C语言中的这些代码完美地工作,我将解释它的作用: 给定一个正整数“n”和一个“n”个整数序列,总和将确定一个正整数。输入 实例: 4 9 -1 4 -2 预期输出:13 /输入:3 3 0 -2输出:3/无法将C程序转换为Ruby
#include <stdio.h>
int main(){
int cont=0,n,num,sum;
scanf("%i",&n);
while(n>cont){
cont++;
scanf("%i",&num);
if(num>0){
sum=num+sum;
}
}
printf("%i",sum);
}
,这是我的尝试将其转换为红宝石
cont=0
n=gets.to_i
while n>cont do
cont=cont+1
num=gets.to_i
if num>0
sum=num+sum
end
puts"#{sum}"
,这是即时得到什么:
ruby test.rb
test.rb:10: syntax error, unexpected end-of-input, expecting keyword_end
puts"#{sum}"
^
。谁能帮忙?
谢谢你,所以这是工作
cont=0
sum=0
n=gets.to_i
while n>cont do
cont=cont+1
num=gets.to_i
sum=num+sum if num>0
end
puts"#{sum}"
对不起,不指定,即时得到这个错误est.rb:9:语法错误,意外结束输入,期待keyword_end 打印“#{sum}” ^ –
我重写了这个问题。 –
'if num> 0'部分表明它不适用于负数。只要摆脱它,Ruby就可以用'2 + -1'(是1)。 – steenslag