Что значит деление по модулю? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
0

Что значит деление по модулю?

% я не понимаю как такое выражение используется в алгебре, ведь это же часть от целого числа, тогда как оно применимо в коде

18th Dec 2019, 3:42 AM
Виктор
Виктор - avatar
40 Answers
+ 3
Хорошо, "только зачем же такие сложности в проверке числа на чётность, не проще ли использовать целые, понятные числа?" 😁 Теперь понятно, зачем используется деление с остатком?
18th Dec 2019, 7:33 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 4
Например тебе надо определить число чётное или нет? Тогда код будет такой: Введите число (х); ЕСЛИ (х % 2 == 0) ВЫВОД("число х - четное) ИНАЧЕ ("число х - нечетное") Т.е. если число делённое на 2 без остатка, то значит оно чётное. Иначе - нечётное.
18th Dec 2019, 4:44 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 4
Начни с проверки числа на чётность. Подумай, какие есть характеристики у четных чисел и у нечетных. Как их различить?
18th Dec 2019, 6:03 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 3
float и double это десятичные дроби, отличаются размером занимаемой памяти(пр 4 и 8 байт соответсвенно), числа double более точные(диапозон от 1.7е-308 до 1.7е+308, в то время как у float всего 3.4е-38 до 3.4е+38), необходимость применения исходит из конкретной задачи.
18th Dec 2019, 9:56 AM
sankot
sankot - avatar
+ 3
Ну а % еще можно использовать чтобы гарантированно получить число из заданного диапозона, например точка ползет в край экрана, как только заполза за край(размер экрана мы знаем) мы можем пустить ее бежать с другого края(соответсвующего 0 координат по оси) просто взяв остаток от деления на ширину (что-то типо координата по горизонтали%ширина экрана - точка гарантированно будет где-то в поле видимости)
18th Dec 2019, 10:00 AM
sankot
sankot - avatar
+ 2
А еще при помощи остатка от деления можно реализовать много интересного. Нпаример, дано 10000 секунд и надо это значение вывести корректно в виде Х часов Y минут и Z секунд
18th Dec 2019, 8:59 PM
Borys
Borys - avatar
+ 1
Дело не в этом. Придумай пожалуйста алгоритм проверки числа на четность как в моём примере. Напиши реализацию кода, как ты её видишь
18th Dec 2019, 5:57 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Я сам не очень понимаю где ещё это деление используется, но это самый доходчивый пример
18th Dec 2019, 9:09 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Duolingo для мобильников puzzle-english.com
18th Dec 2019, 9:27 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
+ 1
Или тебе надо узнать остаток, или отсечь кусок... Таким образом, в теории, к примеру, можно рассчитать места хранения массивов и списков... Такое в общем
19th Dec 2019, 8:39 PM
Alexander Paramonov
Alexander Paramonov - avatar
0
С трудом, но в общем понятно. Непонятно только зачем такие сложности при написании кода. Не проще ли использовать целые, понятные числа. Или "мы не ищем лёгких путей "?))
18th Dec 2019, 5:33 AM
Виктор
Виктор - avatar
0
Я туплю. Прости. Совсем не пойму с какого действия начать
18th Dec 2019, 6:01 AM
Виктор
Виктор - avatar
0
Ну их отличает наличие минуса
18th Dec 2019, 6:07 AM
Виктор
Виктор - avatar
0
Я еще не понял значение двух команд. float и double. Ведь они выполняют одну и ту же функцию. Что флат,что дабл это точка, десятичное определение. Правильно?
18th Dec 2019, 6:20 AM
Виктор
Виктор - avatar
0
При чём тут минус? Не положительных и отрицательных, а чётных и нечётных. Что такое чётное число?
18th Dec 2019, 6:40 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
0
Прости. То, что кратно двум.
18th Dec 2019, 6:41 AM
Виктор
Виктор - avatar
0
Верно. Напиши реализацию кода проверки числа на чётность.
18th Dec 2019, 6:44 AM
Yaroslav Vernigora
Yaroslav Vernigora - avatar
0
public static void main(String args[]) { int num; System.out.println("Введите число: "); Scanner input = new Scanner(System.in); num = input.nextInt(); if ( num % 2 == 0 ) System.out.println("Число четное"); else  System.out.println("Число нечетное");  } }
18th Dec 2019, 7:28 AM
Виктор
Виктор - avatar
0
Как то так наверное
18th Dec 2019, 7:28 AM
Виктор
Виктор - avatar
0
Признаюсь честно, я большую часть слизал с сети. Думаю что мне ещё предстоит поработать над собой в этом вопросе.
18th Dec 2019, 7:35 AM
Виктор
Виктор - avatar