Так как задача в общем-то решена, из-за чего её код публиковать запрещено, опишу в общих чертах то, что я делал.
Scanner считывал в строковую переменную значения, в цикле выполнялась проверка, является ли значение строки словом "enter". Если нет – вперёд парсить её в int и добавлять к сумме. Можно было бы добавить проверку, чтобы не являющееся целочисленным значение, отличное при этом от "enter", не выдавало ошибку, но счёл излишним в рамках задачи.
Такой подход оптимален, или стоит ещё поискать методы решения?
Ivan Avatkov
14 уровень
Костыли или нет?
Решен
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
ГоффMaster
25 мая 2022, 18:27решение
Норм вполне.
Я бы предложил, раз используем сканнер, сначала, воспользовавшись, методом hasNextInt() посмотреть, что там у нас на входе, число или нет. Если число, считываем nextInt(), плюсуем. Если не число, то считываем строку, смотрим, если ENTER - то выходим из цикла и выводим сумму.
Плюсы - если введено не ENTER, а другое слово, то программа проигнорирует его и продолжит ввод чисел. И ошибок при работе программы не возникает, что бы на вводе не было.
Но твой вариант тоже вполне валидируемый.
+2