1

Тема: Допомога з кодом Java .

Доброго вам дня!

Я зовсім новачок у мові Java , тільки почав вивчати цю мову програмування , так ось моя проблема в тому , що не можу зрозуміти , чому цей код не проходить перевірку .

Завдання :

Порахувати суму чисел.
Вводити з клавіатури числа і вважати їх суму . Якщо користувач ввів -1 , вивести на екран суму і завершити програму . -1 Повинно враховуватися в сумі .

public class Solution
{
    public static void main(String[] args)   throws Exception
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int summ = 0;
        for(; true ;)
        {
            int a = Integer.parseInt(reader.readLine());
            if (a == -1)
            {
                System.out.println(summ + (-1));
                break;
            } else
                summ += a;
                System.out.println(summ);
        }
    }
}

2

Re: Допомога з кодом Java .

Що каже компілятор?

3

Re: Допомога з кодом Java .

Компілятор ніяких помилок не видає та і програма начеб-то працює нормально, але сайт не приймає цю задачу,так як вона не правильна,може я не так зрозумів умову?

4

Re: Допомога з кодом Java .

А потрібно хіба виводити суму чисел на екран щоразу після введеного числа? Може через це й не приймає.

Подякували: BuzzY, koala2

5

Re: Допомога з кодом Java .

Тоді треба дивитись на правила сайту. Може бути, що вхід дається в args, може бути ще якийсь нюанс. Давайте посилання, чи що.

А потрібно хіба виводити суму чисел на екран щоразу після введеного числа? Може через це й не приймає.

Це неочевидно, особливо пітоністу, але вивід тут відбувається в кінці циклу. Зверніть увагу на фігурні дужки.

Подякували: BuzzY1

6

Re: Допомога з кодом Java .

quez написав:

Тоді треба дивитись на правила сайту. Може бути, що вхід дається в args, може бути ще якийсь нюанс. Давайте посилання, чи що.

А потрібно хіба виводити суму чисел на екран щоразу після введеного числа? Може через це й не приймає.

Це неочевидно, особливо пітоністу, але вивід тут відбувається в кінці циклу. Зверніть увагу на фігурні дужки.

То ж всередині циклу, але не за межами циклу, хіба не так?

for(; true ;)
        {
            int a = Integer.parseInt(reader.readLine());
            if (a == -1)
            {
                System.out.println(summ + (-1));
                break;
            } else
                summ += a;
                System.out.println(summ);  // оце всередині for чи ні?
        }
//чи не мало би бути ось тут одне єдине виведення для будь-якого випадку?
Подякували: BuzzY1

7

Re: Допомога з кодом Java .

Master_Sergius написав:
quez написав:

Тоді треба дивитись на правила сайту. Може бути, що вхід дається в args, може бути ще якийсь нюанс. Давайте посилання, чи що.

А потрібно хіба виводити суму чисел на екран щоразу після введеного числа? Може через це й не приймає.

Це неочевидно, особливо пітоністу, але вивід тут відбувається в кінці циклу. Зверніть увагу на фігурні дужки.

То ж всередині циклу, але не за межами циклу, хіба не так?

for(; true ;)
        {
            int a = Integer.parseInt(reader.readLine());
            if (a == -1)
            {
                System.out.println(summ + (-1));
                break;
            } else
                summ += a;
                System.out.println(summ);  // оце всередині for чи ні?
        }
//чи не мало би бути ось тут одне єдине виведення для будь-якого випадку?

А, туплю. В циклі, звичайно ж. Наркоманські відступи роблять свою справу.

Подякували: BuzzY1

8

Re: Допомога з кодом Java .

Дякую!
Дійсно,не треба було робити вивід на екран після кожного разу.

9

Re: Допомога з кодом Java .

grammar nazi

Вводити з клавіатури числа і вважати їх суму .

Ну добре, до «рахувати» в сенсі «вважати» («мати думку») ми вже якось звикли.
Але «вважати» в сенсі «рахувати» («провести обчислення») — ?!?!?!?

10

Re: Допомога з кодом Java .

quez написав:

А, туплю. В циклі, звичайно ж. Наркоманські відступи роблять свою справу.

Що наркоманські, то наркоманські. Пітоністи справді можуть проморгати. Але джаваскриптизерство трохи дає можливість звертати увагу і на фігурні дужки :)

11 Востаннє редагувалося P.Y. (06.09.2016 10:58:09)

Re: Допомога з кодом Java .

У даному випадку, гілка then закінчується break'ом, тож у частину коду з «наркоманським» відступом можна потрапити тільки після else. Можна загорнути обидві інструкції після else у фігурні дужки чи викинути слово else взагалі — результат роботи програми буде той же.