Положительное число

  • 4
  • Недоступна
В школе «Позитивчик» шкала оценки знаний не ограничена ни снизу, ни сверху. Это радует юные дарования (а вы бы не радовались, получив оценку 100500 за изложение?). Все оценки больше нуля считаются хорошими, меньше — плохими. На зачете ученики должны сдать три предмета. Нам нужно ввести три оценки с клавиатуры, и вывести количество позитивных оценок.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (304)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Михаил Кладовщик 80lvl
12 сентября 2021, 16:00
int numPos = (a > 0 ? 1 : 0) + (b > 0 ? 1 : 0) + (c > 0 ? 1 : 0);
Максим Белоусов
Уровень 18, Москва, Россия
4 мая 2021, 14:35
То чувство когда сам решил задачу с 1 раза в 2021 году, а самый популярный коммент с таким же кодом от 2017 года :D public static void main(String[] args) throws Exception { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); int a = Integer.parseInt(reader.readLine()); int b = Integer.parseInt(reader.readLine()); int c = Integer.parseInt(reader.readLine()); int x = 0; if (a > 0) x ++; if (b > 0) x++; if (c > 0) x++; System.out.println(x);
Виталий Шепель
Уровень 11, Киев
19 июня 2021, 06:02
Шикарное решение! Только как быть с 4-ым пунктом исходя из "0" это String.
Максим Белоусов
Уровень 18, Москва, Россия
20 июня 2021, 06:13
Так выводится все-равно значение переменной int x, которую мы проинициализировали после считывания переменных.
Екатерина Лисняк
Уровень 4, Санкт-Петербург, Россия
24 ноября 2021, 21:49
то есть мы можем использовать if вместо else if, чтобы не исключать первый if? if (a>0).... (и если) if(b>0).... кто-то может объяснить или кинуть статью, не монимаю разницу нескольких if и почему не else if
Максим Белоусов
Уровень 18, Москва, Россия
26 ноября 2021, 04:17
Попробуйте прочитать это тык
Екатерина Лисняк
Уровень 4, Санкт-Петербург, Россия
1 декабря 2021, 19:17
Спасибо! Но насколько я вижу, там тоже нет примера, где именно несколько "чистых" if без else if. Типа как у нас "если а>0...", "если b>0" Я пыталась записать эту задачу именно с else if, но не работает( какую-то хитрость я упускаю
Александр Касьян
Уровень 9, Харьков
4 февраля, 20:00
Насколько я понимаю, то с чисто if должно выполняться каждое условие, а с else if - одно из них.
Никита
Уровень 8
11 апреля 2021, 10:31
ничего не понял, но заработало. Ввиду того ответа, что по итогу засчитало, то нужна более подробная лекция по if .. else, ибо я вообще был без понятия, что можно только if несколько раз прописывать, а здесь при else if вообще жаловаться будет
Светлана Семенова
Уровень 7, Санкт-Петербург, Россия
12 марта 2021, 11:30
Ребят, а такой вопрос: мы можем при вводе с клавиатуры принимать сразу число, без вот этого парсинга из стринга в инт? А то может зря я постоянно пишу это? String a = reader.readLine(); String b = reader.readLine(); String c = reader.readLine(); int x = Integer.parseInt(a); int y = Integer.parseInt(b); int z = Integer.parseInt(c);
Alicia_Apple
Уровень 9, Урюпинск, Россия
12 марта 2021, 13:21
Здравствуйте, Светлана!😉 Вы можете сразу превращать String в int, то есть можно переписать ваши два шага в один: int num = Integer.parseInt(reader.readLine()); ☺️
Igor Sholia
Уровень 7, Ужгород, Украина
11 марта 2021, 08:42
if и count - хорошая вещь)))
Domingo el Sumeri
Уровень 13, Екатеринбург
7 февраля 2021, 06:16
Цикл 3 раза { count += Integer.valueOf(reader.readLine()) > 0 ? 1 : 0; } print count
Diamond
Уровень 7, Kuala Lumpur
4 февраля 2021, 10:08
int p1 =(n1>0)?1:0; int p2 =(n2>0)?1:0; int p3 =(n3>0)?1:0; System.out.println(p1+p2+p3);
Simpson
Уровень 11, Белгород, Россия
27 января 2021, 23:41
слабаки . так то урок был по логическим операторам, значит и решать нужно используя их. if ((i > 0 & !(p > 0) & !(s > 0)) | (!(i > 0) & (p > 0) & !(s > 0)) | (!(i > 0) & !(p > 0) & s > 0)) System.out.println(1); else if (((i > 0 & p > 0) & (s <= 0)) | ((p > 0 & s > 0) & (i <= 0)) | ((s > 0 & i > 0) & (p <= 0))) System.out.println(2); else if (i > 0 & p > 0 & s > 0) System.out.println(3);
Андрей Dungeon Master
3 марта 2021, 13:48
Учти, что "0" не относится ни к положительным, ни к отрицательным числам.
Алёнка1
Уровень 7
18 января 2021, 18:30
Было провалено 6 попыток решить эту задачу. Пока не наткнулась в комментариях на решение от Priestik от 27 июня 2020. Гениально, просто и только теми способами что проходили.
selfer IllegalArgumentException в вашей программе
10 декабря 2020, 19:20
Решил через цикл for, но меня не покидает мысль что можно как-то решить через цикл while, типа если не известно заранее сколько там пользователь чисел навводит. Натолкните на мысль/статью как это сделать.
Andrew
Уровень 8, Санкт-Петербург
8 января 2021, 00:17
через count
Алексей Тонких Backend Developer в Сбербанк
16 января 2021, 19:37
Необходимо предусмотреть условие выхода из цикла. Например пока пользователь ничего не введёт:
while (true) { // Бесконечный цикл
    String s = reader.readLine(); //считываем строку
    if (s.equals("")) break; //Сравниваем с пустой строкой. В случае успеха - прерывание цикла
    int number = Integer.parseInt(s); // Если проверка не прошла, то выполняем дальнейшие действия
    //some code...
}
Balthazar Java Developer
18 апреля 2021, 05:39
Пока не прочитал комментарий, даже не думал, про заранее неизвестное кол-во чисел