a=42
(a>0 && a%2==0)
Я не совсем понимаю формулу. Раздуплите меня, пожаЙлуста.
Логично, что число 42 это четное число со знаком плюс(+), что значит, что число 42 больше чем ноль(0).
ТоИсть, мне нужно было сказать машине, что это число со знаком плюс, чтоб она вывела на екран нужную надпись. Однак, я не нашел как поставить к числу знак плюс(+).
Туда же, меня путало, что есть еще нечетное число. Нечетное число возле 42 это 41 и 43. Как дурак я использовал дикремент к 42, чтоб получилось 41. Но машина не понимала, что я от нее хочу.
Дальше я пошел в помощь. Там увидел формулу а%2 и подумал, причем здесь проценты? и много таких помощников было. Взял листок, ручку и пытался разгадать аналоговым способом. Полазил по коментариям и понял, что нужно проверить делиться ли а на 2, если делиться-четное, не делиться-нечетное.
Так вышла формула (а>0 && а/2). Но машина упорно не пропускала меня. Несколько сигарет, чтоб успокоиться.
Вернулся в помощь. Все еще не понимая, что это за % и откуда они беруться.
Вопрос, как расшифровать формулу (а>0 && а%2==0)?
по слогам. а больше ноля и а делиться на 2. это понял методом тыка. Почему именно этот (%) знак, а не этот (/)? и что значит ==0? Логично, что если а деленое на 2 равно нолю, то а не может равняться нолю, потому что а равно 42. (42/2=0?WTF??)
Если я пропустил лекцию об этом, скажите пожаЙлуста где лекция?
Спасибо;)
Бодя Бодисон
9 уровень
Что я пропустил?
Архивный
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Анна Бурматнова
17 февраля 2020, 17:05
(a>0 && a%2==0) в этой формуле как раз и проверяется, выполняются ли оба условие. Условие 1- а больше 0,условие 2- остаток от деления а на 2=0 ,то есть четное ли число или нет.
+1
Антон Огурцов
17 февраля 2020, 12:48
В задаче нужно выводить характеристику числа, является ли оно положительным или отрицательным, чётным или нечётным. Оператор % вычисляет остаток деления, оператор / позволяет узнать частное деления, например 5 / 2 = 2, а 5 % 2 = , и даже 1 / 2 = 0.
Поэтому а % 2 == 0 - это проверка на чётность или нечётность числа, то есть делится ли число на 2 без остатка.
Не помню, в какой лекции об этом пишут, но Г. Шилдт в своей книге "Java. Руководство для начинающих" точно об этом упоминает.
+1
Бодя Бодисон
17 февраля 2020, 13:16
тоесть, с помощью %2 машина проверяет что в остатке, double или int? в примере: 5/2=double2,5. при этом задача машини получить остаток в int. поэтому машина округляет double(2,5) до int(2). и в примере 42%2==0 машина понимает что в остатке int, а значит это четное число.
правильно?
0
Антон Огурцов
17 февраля 2020, 13:25
Если делимое и делитель int, тогда и остаток от деления, и частное будут int. А если одно из чисел будет double, тогда остаток и частное будут double.
В примере 42 - это int, 2 - это int, поэтому остаток от деления будет тоже int, то есть 0.
+1
IceBergMaster
17 февраля 2020, 12:17
% - остаток от деления.
+1