Я написал программу для кодовых войн, которая находит два младших целых числа и возвращает их сумму:
def sum_two_smallest_numbers(numbers)
array_lowest = [0, 0]
main_iterate = 2
array_lowest[0] = sum_two_smallest_numbers[0]
array_lowest[1] = sum_two_smallest_numbers[1]
until main_iterate == sum_two_smallest_numbers.length - 1 #maybe -2, or 0
if sum_two_smallest_numbers[main_iterate] < array_lowest[0]
array_lowest[0] = sum_two_smallest_numbers[main_iterate]
main_iterate += 1
elsif sum_two_smallest_numbers[main_iterate] < array_lowest[1]
array_lowest[1] = sum_two_smallest_numbers[main_iterate]
main_iterate += 1
else
main_iterate += 1
end
end
return array_lowest[0] + array_lowest[1]
end
выполнить тесты следующим образом:
Test.assert_equals(sum_two_smallest_numbers([5, 8, 12, 18, 22]), 13)
Test.assert_equals(sum_two_smallest_numbers([7, 15, 12, 18, 22]), 19)
Test.assert_equals(sum_two_smallest_numbers([25, 42, 12, 18, 22]), 30)
Он жалуется на мою первую строку (это было предоставлено вместе с end
), и если я заменю numbers
на любые действительные числа, как в тестовых примерах, он выдает следующее:
syntax error, unexpected tINTEGER, expecting ')'
Как я могу решить это?