Loading...
svetivdim avatar svetivdim 0 Точки

Задача Left and Right Sum

Здравейте.Бихте ли ми казали,къде ми е грешката?Благодаря предварително

Код:

import java.util.Scanner;

public class  LeftandRightSum{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);           

            

       
            int n = Integer.parseInt(Scanner.nextLine());
            int leftSum = 0;
            int rigthSum = 0;

            for (int i = 0; i < n; i++){
           
                int number = Integer.parseInt(Scanner.nextLine());
                leftSum += number;
            }

            for (int i = 0; i < n; i++){
            
                int number = Integer.parseInt(Scanner.nextLine());
                rigthSum += number;
            }

            if (leftSum == rigthSum)
            {
               System.out.println("Yes, sum = {0}", leftSum);
            }
            else
            {
                System.out.println("No, diff = {0}", Math.Abs(leftSum - rigthSum));
            }
        }
    }

           

Тагове:
0
Programming Basics
krum_43 avatar krum_43 756 Точки

Kak да ти намерим грешка като не си дал точното условие на задачата.

Има различни задачи за лява и дясна сума,а грешката ти може да е нещо съвсем дребно.

Иначе кода ти изглежда верен.

:)

0
damesova avatar damesova 203 Точки

Ееее, или го направи с println() така:

public class LeftAndRightSum {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = Integer.parseInt(scanner.nextLine());
        int sumLeft = 0;
        int sumRight = 0;

        for (int i = 0; i < 2*n; i++) {
            int num = Integer.parseInt(scanner.nextLine());
            if (i < n) {
                sumLeft += num;
            } else {
                sumRight += num;
            }
        }

        if (sumLeft == sumRight) {
            System.out.println("Yes, sum = " + sumLeft);
        } else {
            int diff = Math.abs(sumLeft - sumRight);
            System.out.println("No, diff = " + diff);
        }
    }
}

или с printf() така:

if (sumLeft == sumRight) {
            System.out.printf("Yes, sum = %d%n", sumLeft);
        } else {
            int diff = Math.abs(sumLeft - sumRight);
            System.out.printf("No, diff = %d%n", diff);
        }

Във втория случай работиш с плейсхолдъри за всеки вид променлива, а след запетайката подаваш аргументите.

0
svetivdim avatar svetivdim 0 Точки

Наавих го с println ,но judge ми даде Compile time error

0
damesova avatar damesova 203 Точки

Я пак провери скобичките :)

0
svetivdim avatar svetivdim 0 Точки

Сега вече се оучи.Не бях задал скенера.А може ли и малко помощ за тези две програмки:

 import java.util.Scanner;
    public class OddEvenSum{
    
        public static void Main(string[] args){
         Scanner scanner = new Scanner(System.in);
            int n = Integer.parseInt(Scanner.nextLine());
            int oddSum = 0;
            int evenSum = 0;

            for (int i = 1; i <= n; i++)
            {
                int number = Integer.parseInt(Scanner.nextLine());

                if (i % 2 != 0)
                {
                    oddSum += number;
                }
                else
                {
                    evenSum += number;
                }
            }

            if (oddSum == evenSum)
            {
                System.out.printf("Yes\nSum = {0}", oddSum); // using \n in order to print the part after it on a new line
            }
            else
            {
                System.out.printf("No\nDiff = {0}", Math.Abs(oddSum - evenSum)); // using \n in order to print the part after it on a new line
            }
        }
    }

 

и съответно :

 import java.util.Scanner;
    public class VowelSum{
    
        public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
              
            String input = scanner.nextLine();
            int vowelSum = 0;

            for (int letterIndex = 0; letterIndex < input.length(); letterIndex++){
           
                char currentLetter = input.charAt(letterIndex);
                switch (currentLetter){
              
                    case 'a':
                            vowelSum +=1;
                             break;

                }
                    
         }
               System.out.println(vowelSum);
           
  }
}
 

А и ако имаш решението на Clever Lily ?Благодаря ти още веднъж

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.