Этот код на языке 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);
}
и это была моя попытка преобразовать его в Ruby,
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