Sort Three Numbers проблем

preparation

#1

Здравейте, имам проблем с задачата Sort Three Numbers.Всичко върви, но ми дава 90/100, защото и отрицателните числа ги подрежда desending,т.е -3 -2 -1 , вместо -1 -2 -3.Не взема под внимание минуса.Някой има ли идея къде може да е проблема ?


#2

Здравей :slight_smile: Сподели си кода :wink:


#3

Ето го и кода :slight_smile: : https://pastebin.com/NRrvmFcM


#4

Здравей,

Кодът ти подрежда негативните числа правилно.

Проблемът идва при написването на три еднакви числа, без значение дали те са позитивни или негативни.

По този начин ти се активират и трите if loop-a, които работят независимо един от друг. Например, при 12-я case, Judge въвежда числата:

-1
-1
-1

И тъй като и трите числа са равни, и трите if loop-a се активират наведнъж:

-1 -1 -1-1 -1 -1-1 -1 -1

Помисли за ползването на един общ if loop с последващи else if loops, за да има централизирана логика. Например:

if (a >= b && b >= c) {
System.out.printf("%d %d %d", a, b, c);
} else if {

} …

Успех!

Поздрави,
Петър


#5

Много благодаря !


#6

Аз имам същия проблем. Кодът ми е като на @ivokaramfilov - дава ми 9/10, пробвах и по начина, по който @petbiv показва, но този път ми дава 0/10.

В условието на задачата е казано да се реши с nested if, може би за това не ми дава никакви точки или ?

Благодаря предварително!


#7

Здравей,

Ако искаш, сподели си кода, за да видим къде има проблем.

Тук можеш например да го добавиш и да споделиш линка: https://pastebin.com

Поздрави,
Петър


#8

Това е единият начин - https://pastebin.com/hz7HGe0u

Това е другият - https://pastebin.com/9EBkXSHP


#9

Здравей Алесандра,
Според мен проблема е когато получиш инпут с равни числа. Пробвай при 3/3/3 например каквъв ще ти е outputa.
Помисли къде да добавиш = и ще мине 10:10.
Поздрави,
Мишо


#10

Добавих в кода, когато числата са равни : https://pastebin.com/dKL6x667

Обаче пак ми дава 9/10, гърми на |Test case #12:|WA|[0.173s,|27.14 MB]|(0/1)|
| — | — | — | — | — |
|Your output (clipped)
-1|

:frowning:


#11

Здравей,

При следния input:

-1
-1
-1

Твоя код връща -1, а трябва да върне -1 -1 -1.

Оправи си последния else if, така че да показва и трите числа.

Успех!

Поздрави,
Петър


#12

Благодаря, получи се! Тази задача стана историческа хаха

Поздрави и лека вечер :slight_smile:
Алесандра