При решена вяран задача, да 0 точки в джъдж

Здравейте,

Благодаря за помощата.

Става въптрос за решена задача с Джава. В инелеиджей минава и дава верни резултати. Когато я кача в джъдж, да се оценява, ми дава 0 точки.

ето какво дава там.

или ако не се качи снимката: short sircuit

тук е задачата:

Balanced Numbers

A balanced number is a 3-digit number whose second digit is equal to the sum of the first and last digit.

Write a program which reads and sums balanced numbers. You should stop when an unbalanced number is given.
Input

Input data is read from the standard input

Numbers will be given
    Each one will be on a separate line

Output

Print to the standard output
Constraints

No more than 1000 numbers will be given

Sample tests
Input

132

123

Output

132

Input

275

693

110

742

Output

1078

тук е кода от джава

import java.util.Scanner;
public class balncedNumberVar3 {
public static void main(String[] args) {
int counterOfWhileCycles =0;
int sum = 0;
while (true){
Scanner scanner = new Scanner(System.in);
int input = Integer.parseInt(scanner.nextLine());
int input_1 = 0;
int input_10 = 0;
int input_100 = 0;

    input_1 = input % 10; // dawa ednicata
    input_10 = input / 10 % 10; // dawa deseticata
    input_100 = input / 100 % 10; //dawa stoticata

    int balncedNumber = 0;
    // ?? int sum = 0;
    // boolean balnacedNumber= ture (input_10 = input_1 + input_100); //    Urawennie za  balncedNumber
        boolean flag = true; boolean flag2 = false;
         //input = Integer.parseInt(scanner.nextLine());
         if (input_10 == (input_1 + input_100)) {
          sum += input;

             counterOfWhileCycles++;
            // STOP tuk ne moge da prodylgi. Stawa ne6to ; protiworech si s Gorniya Input
           //  System.out.printf("Sum :%d", input++);
             continue;
         }
         if (counterOfWhileCycles==1000) {
          break;
         }
         else if (input_10 != (input_1 + input_100)) {
          flag2= true;

             break;
         }
                     // flag2=false;
               }// END While
    System.out.printf("%d", sum);

}//END PROGRAM ++ START
}

Invalid return обикновенно означава, че не компилира правилно /дава грешка/. Провери дали си копирал целия код правилно. :slight_smile:

Ще проверя пак за копирането в джъдж; но в интелиджей локално на компютъра ми , задачата дава верни решения

Имам опасения за while цикъла. Че въпреки свършила задачата, той пак се отваря скенера, и чака нов вход за подаване. Виждъл съм видеа къдегото го затварят; но никога не съм го правил още.

Не бях забелязал безкрайния цикъл, да това е силно вероятно да пречи на джъджа. :slight_smile: Огледай къде си изтървал break. (брояча на циклите, примерно итерира само при определено условие) Иначе не е много добра идея да ползваш while(true) освен ако нямаш много ясна цел за него.

Здравей bochosyan опита ли да вмъкнеш
boolean isBalanced = true; във условието на цикъла?
`

 while (isBalanced) {
            int number = scanner.nextInt();
            int firstDigit = number / 100;
            int secondDigit = (number / 10) % 10;
            int thirdDigit = number % 10;
            if (secondDigit == firstDigit + thirdDigit) {
                sum += number;
            } else {
                isBalanced = false;
            }
        }
        System.out.println( sum);
}`