JavaRush
Акція
Університет
Java FullStack
Python FullStack
new
Навчання
Курси
Задачі
Опитування
Ігри
Допомога
Графік стусанів
Стажування
Спільнота
Користувачі
Форум
Чат
Статті
Історії успіху
Дії
Відгуки
Передплати
Світла тема
Запитання
  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Усі запитання
JavaRush/Допомога із Java задачами/работает правильно, но выдает ошибку
Тетяна
13 рівень
  • 2/2/23
  • 352переглядів
  • 7коментарів

работает правильно, но выдает ошибку

Запитання щодо задачі Трикутник
Java Syntax,  4 рівень,  3 лекція
Обговорюється

Напишемо програму, яка буде прораховувати можливість існування трикутника, виходячи з довжин його сторін.
Для цього тобі потрібно:

  1. Ввести з клавіатури три числа — довжини сторін передбачуваного трикутника.
  2. Визначити можливість існування трикутника з даними сторонами.
Результат вивести на екран у такому вигляді: "трикутник існує" або "трикутник не існує".

Щоб це з'ясувати, слід порівняти кожну сторону із сумою двох інших.
Тобто тобі потрібно виконати три порівняння:

  1. Якщо в кожному порівнянні сторона менше суми двох інших, то трикутник із такими сторонами існує.
  2. Якщо принаймні в одному випадку порівняння одна сторона виявиться більшою за суму двох інших або дорівнюватиме їй, то трикутника з такими сторонами не існує.

Вимоги:
  • Програма повинна зчитувати три числа з клавіатури.
  • Програма повинна виводити текст на екран згідно з умовою задачі.
  • Якщо трикутник з такими сторонами може існувати, потрібно вивести текст: "трикутник існує".
  • Якщо трикутник із такими сторонами не може існувати, потрібно вивести текст: "трикутник не існує".
package ua.javarush.task.pro.task03.task0306; import java.util.Scanner; /* Трикутник */ public class Solution { private static final String TRIANGLE_EXISTS = "трикутник існує"; private static final String TRIANGLE_NOT_EXISTS = "трикутник не існує"; public static void main(String[] args) { //напишіть тут ваш код Scanner s = new Scanner(System.in); int x = s.nextInt(); int y = s.nextInt(); int z = s.nextInt(); String s1 = "трикутник існує"; String s2 = "трикутник не існує"; if ((x + y) < z || (x + z) < y || (y + z) < x) { System.out.println(s2); } else { System.out.println(s1); } } }
0
Коментарі (7)
  • популярні
  • нові
  • старі
Щоб залишити коментар, потрібно ввійти в систему
Ivan D.
Рівень 3
6 серпня 2025, 19:10
Переменные для вывода на экран s1 и s2 создавать не надо, а так всё правильно. Переменные для вывода на экран в коде программы уже есть - это TRIA.... две статических строки заданных в начале кода.
0
Максим
Рівень 28
Expert
3 лютого 2023, 20:18
ти System.out.println() в середину встав TRIANGLE_EXISTS заміть s1
0
Тетяна
Рівень 13
3 лютого 2023, 12:04
Мне кажется, что if ((x + y) < z || (x + z) < y || (y + z) < x) треугольник не существует и if ((x + y) > z && (x + z) > y && (y + z) > x) треугольник существует равнозначны. Где я ошибаюсь?
+1
Ivan D.
Рівень 3
6 серпня 2025, 19:05
В лекции, там, где была указана таблица истинности операторов || и &&, таблица указывалась только для двух операндов. В вашем случае также работает, т.к. образуется полная группа событий, но вы забыли !, т.е оператор НЕ перед скобочками. Полностью всё логическое выражение условия в if взять в скобочки и перед скобочками поставить "!", тогда эти выражения были бы эквивалентны. Событие и противоположное ему событие образуют полную группу.
0
Alexander Komlichenko
Рівень 51
2 лютого 2023, 21:17
вы используете || (или), а вам надо, чтобы каждые 2 стороны были больше чем третья, т.е. стоит использовать &&
0
Goga
Рівень 5
2 лютого 2023, 21:16
Ну во-первых у тебя уже есть эти две строки: "трикутник існує", "трикутник не існує", второй раз их создал, но это ладно. Условие в if'е, в нём загвоздка. Подумай сам.
+1
Максим
Рівень 28
Expert
3 лютого 2023, 20:19
TRIANGLE_EXISTS треба використати не просто так тобі його дали )
0
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush