Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.06.2015
Сообщений: 7
1

Не добавляет число в сумму

29.12.2015, 00:49. Показов 1128. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет, есть такой код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int sum = 0;
        while(true){
            if(reader.readLine().contains("сумма"))
            {
                System.out.println(sum);
                break;
            }
            else
            {
                int n = Integer.parseInt(reader.readLine());
                sum += n;
                System.out.println(sum);
            }
        }
Задача предо мною стоит такая:
Код
Вводить с клавиатуры числа и считать их сумму, пока пользователь не введёт слово «сумма». Вывести на экран полученную сумму.
.
Проблема в том, что в переменную sum добавляется только каждое второе число, как решить?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.12.2015, 00:49
Ответы с готовыми решениями:

Функция принимает список и число и добавляет число к списку
f('(1 2 3) 4) => (1 2 3 4)

Не добавляет сумму в другую таблицу
Не получилось сделать через триггер, решил программным путем // обновляем данные суммы...

Процедура, которая добавляет к дате целое число
Здравствуйте! Уже есть программа, осталось только написать процедуру, которая к дате прибавила бы...

Работа со стеком. Программа, которая к вершине стека добавляет некоторое число, а следующему элементу присваивает значение предыдущего
Есть некоторый стек, в каждом элементе которого записаны по два целых числа. Нужно сделать...

4
206 / 206 / 71
Регистрация: 25.02.2014
Сообщений: 569
29.12.2015, 01:10 2
Лучший ответ Сообщение было отмечено jessez как решение

Решение

Java
1
2
3
 while(true){
            String line = reader.readLine()
/*....................*/
А дальше с переменной работайте
1
0 / 0 / 0
Регистрация: 11.06.2015
Сообщений: 7
29.12.2015, 01:40  [ТС] 3
Спасибо, помогло!
Не могли бы объяснить мне в двух словах, почему это так работает?
0
238 / 237 / 142
Регистрация: 03.02.2011
Сообщений: 1,437
29.12.2015, 09:19 4
Потому что вы читаете строку два раза.
Java
1
if(reader.readLine().contains("сумма"))
получили одну строку.
Если это выражение будет false, тогда вы читаете следующую строку
Java
1
int n = Integer.parseInt(reader.readLine());
а не используете предыдущую.
Надо переделать как сказал ne2win, один раз считать строку, и уже переменную подавать в иф.
1
0 / 0 / 0
Регистрация: 11.06.2015
Сообщений: 7
29.12.2015, 11:30  [ТС] 5
Точно! Я уже сделал как сказали, но мне интересно было, в чем же проблема, спасибо!
0
29.12.2015, 11:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.12.2015, 11:30
Помогаю со студенческими работами здесь

Подсчитать сумму введенных чисел пока не вводиться число 10 (число 10 не считать в сумму чисел)
Подсчитать сумму введенных чисел пока не вводиться число 10 (число 10 не считать в сумму чисел)....

Ввести число n, разбить число на цифры, и найти сумму этих цифр
Здравствуйте.Очень нужно сделать задание, кто может? Заранее спасибо!!! Ввести число n, разбить...

Дано натуральное число N и вещественное число x. Вычислить частичную сумму ряда.
Дано натуральное число N и вещественное число x. Вычислить S=\sum \limits_{i = 1}^N \frac x...

Дано действительное число а, и натуральное число n. Найти частичную сумму ряда
1/a + 1/a^2 + 1/a^4 +... 1/(a^(2)^n)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru