Стакан наполовину пуст или наполовину полон?

  • 4
  • Недоступна
В методе main() есть переменная double glass = 0.5, которая символизирует наполовину заполненный стакан. Для пессимиста он наполовину пуст, а для оптимиста - наполовину полон. Необходимо считать с клавиатуры данные типа boolean, используя метод nextBoolean() объекта типа Scanner. В зависимости от по
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (60)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
kefir
Уровень 6, Минск, Belarus
28 июня, 13:44
Не совсем понял почему эта задачка уровня medium. Субъективно, но предыдущие были сложнее (особенно с треугольником)
javIAN
Уровень 8, Georgia
19 мая, 07:01
😱😱😱😱😱😱😱😱😱😱😱😱😱😱😱
Alexander Kutenko
Уровень 11, Киев
4 мая, 21:02
Когда сокращал дольше, чем решал задачу)
Scanner scanner = new Scanner(System.in);
boolean a = scanner.nextBoolean();
System.out.println(a ? (int) Math.ceil(glass) : (int) Math.floor(glass));
Калин Малин
Уровень 8, Москва, Russian Federation
25 июня, 08:55
Молодец) 👍
kefir
Уровень 6, Минск, Belarus
28 июня, 13:44
Красиво)
Dimboz Kitchen Developer в Дом
21 июля, 17:08
Можно ещё короче double glass = 0.5; System.out.println( new Scanner(System.in).nextBoolean() ? Math.ceil(glass) : Math.floor(glass));
Neshta
Уровень 29
28 апреля, 19:08
Scanner con = new Scanner(System.in); boolean isBool = con.nextBoolean(); if (isBool) glass = Math.ceil(glass); else glass = Math.floor(glass); System.out.println((int)glass); Оказалось все просто)
Anonymous #3058632
Уровень 6, Москва, Russian Federation
16 июня, 20:56
почему не срабатывает если методы поменять местами : сначала floor . потом ceil ??
Плавали, знаем.
Уровень 10, Ростов-на-Дону, Россия
26 июля, 10:47
потому что в условии задачи написано, что оптимист (true). If выполняет первое условие при true. Если бы пессимиста признали трушным, то срабатывал бы ваш вариант.
Плавали, знаем.
Уровень 10, Ростов-на-Дону, Россия
26 июля, 10:50
либо в 1 условии можно прописать (!названиеВашейБулевойПеременной), чтобы false давал true
Роман
Уровень 27, Russian Federation
19 апреля, 20:57
Можно решить двумя способами. Простым без проверки на тип вводимых данных, но тогда программа падает если вводить не булевый тип. И такое решение прошло проверку! И более правильный с проверкой на тип вводимых данных, чтобы программа не падала. Но на это решение не могу пройти проверку, так как с начало решил первым способом, а это решение уже в IntelliJ IDEA делал.
Gumanitarii
Уровень 8, Russian Federation
21 марта, 09:42
Погодите-ка! 1) boolean opt = scanner.hasNext("true"); boolean pes = scanner.hasNext("false"); // два значения для того, чтобы реагировал только на конкретные слова. это то же самое, если мы напишем: 2) boolean isOpt = scanner.nextBoolean(); и isOpt будет реагировать ТОЛЬКО на введенные "true" и "false" ?! (компилятор реагирует только на них, отсюда и вывод) Задачу решил через первый способ, а про второй откуда узнать должен был, м? )) ЗЫ: Уважаемая администрация, если снова закроете мой комментарий, ответьте, пожалуйста, на вышеописанный вопрос. Нагуглить не удалось, а знать правду - мне важно!)
Alex Bit (Воронеж)
Уровень 32, Воронеж, Russian Federation
12 марта, 01:47
Если (переменная), то вывести в инт округлённое вверх. Если (!переменная), то вывести в инт округлённое вниз.
Gumanitarii
Уровень 8, Russian Federation
21 марта, 09:51
Привет! Правильный ответ смотрел после самостоятельного решения? Там интересности)
Denis Tkachenko Java Developer
7 февраля, 08:27
с 1 попытки, но минут 30 на размышления и все получилось, радует конечно что так сразу зашло, но хотелось бы немного по мучиться с задачами, для большего понимания и разбора кода
Denis Tkachenko Java Developer
7 февраля, 08:27
читайте внимательно задание, и разбирайте в голове сразу код, что за чем будете писать
Nalogovi4ok
Уровень 7, Москва, Russian Federation
6 февраля, 12:53
Приветствую всех, прошу объясните, кто знает. Почему я true должен приравнивать к true? И так же с false? Значение же мы им уже придали?
Andrey Shindin
Уровень 6, Москва, Russian Federation
17 января, 16:24
пока не знаю как избавиться от банальных ошибок, но радует то, что уже начинается видеть код наперед каким он должен быть, обратная сторона монеты что остаются куча синтаксических ошибок... от того что привык писать про nextLine(); и nextInt(); а вот как булен в сканер записать, пришлось с бубном потанцевать... оказалось абсолютно так же как и остальное -_- еще бы... в итоге сидел тупил еще больше над подобными ошибками... if (tru==true);{ System.out.println((int)Math.ceil(glass)); } else { System.out.println((int)Math.floor(glass)); сидишь как лось, и думаешь ну else же после if, чо не так, чего ты ругаешься... а там ; в итоге (-_-)