Деление c остатком, % оператор

Здесь все вопросы по языку программирования С
Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Деление c остатком, % оператор

Сообщение GhostX » 02 фев 2016, 16:03

Что то не придумал куда эту тему можно вписать, впишу тут.
Не могу понять как % оператор работает, когда делитель больше, чем делимое число...

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Деление c остатком, % оператор

Сообщение gurvinok » 02 фев 2016, 16:14

Это не деление с остатком, а остаток от деления. Например делим в столбик 5 на 3. 5/3 = 1 и 2 в остатке. Если написать так

Код: Выделить всё

unsigned int a = 5;
unsigned int b = 3;
unsigned int c = 0;

c = a%b; // В с будет лежать 2
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: Деление c остатком, % оператор

Сообщение GhostX » 02 фев 2016, 16:30

Остаток от деления, возвращает оператор. А вся арифметическая операция называется деление c остатком. Я не ошибся в названии.
когда делитель больше, чем делимое число...
3 делим на 5, а не наоборот.
когда 5/3 тут все просто.
Последний раз редактировалось GhostX 02 фев 2016, 16:39, всего редактировалось 1 раз.

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Деление c остатком, % оператор

Сообщение gurvinok » 02 фев 2016, 16:37

Ну приехали.
123.jpg
123.jpg (30.29 КБ) 9851 просмотр
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: Деление c остатком, % оператор

Сообщение GhostX » 02 фев 2016, 16:45

у меня целые не получаются...
0.6
а там фишка именно в целых.

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Деление c остатком, % оператор

Сообщение gurvinok » 02 фев 2016, 20:00

В С оператор % работает ТОЛЬКО с целочисленными значениями.
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: Деление c остатком, % оператор

Сообщение GhostX » 02 фев 2016, 20:12

Я уже это знаю. Так сколько будет 3/5?
В коде если 3%5 будет. Какой ответ?

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Деление c остатком, % оператор

Сообщение gurvinok » 02 фев 2016, 20:17

Это ошибка, так как при вычислении остатка нужно от 3 - 5, а это уже отрицательное число. Остаток отрицательным быть не может.

ПЫ.СЫ.
РНР посчитал что это будет 3.

ПЫ.СЫ.СЫ.
После умозаключенй. Если делимое меньше делителя, то априори значение целого равно нулю. Значит остаток будет равен делимому числу. :lol:
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: Деление c остатком, % оператор

Сообщение GhostX » 02 фев 2016, 20:38

справочник по ардуине вот как говорит
Пример

x = 7 % 5; // x имеет значение 2
x = 9 % 5; // x имеет значение 4
x = 5 % 5; // x имеет значение 0
x = 4 % 5; // x имеет значение 4
И вот в этом месте я завис.
Перечитал википедию, понял только самую суть, но там все как то сложнее.
С округлениями какими то, в меньшую сторону. я вообще не понял ни чего в этом месте...

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Деление c остатком, % оператор

Сообщение gurvinok » 02 фев 2016, 20:44

Я же написал.
После умозаключенй. Если делимое меньше делителя, то априори значение целого равно нулю. Значит остаток будет равен делимому числу. :lol:
Если долго мучиться, может быть получится.

Ответить