Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Операторы div и mod 
:(
    Опции темы
Dаedra
Дата 16.5.2009, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Помогите разобраться с этими операторами. Это не операторы Си, хотя в си есть аналог, но мне очень нужно разобраться с вычислинием таких выражений.
Уже месяц мучаюсь в попытках понять механизм вычисления результата. Как можно описать их МАТЕМАТИЧЕСКИ? То есть мне интересно, если a mod b = c, то как вычислить это С без помощи компилятора?
Вот как понять "остаток от деления"? Если 3/4=0.75, то 75 будет остатком от деления? Или остаток от деления - это число, которое остается в делимом (при делении столбиком) при невозможности делить дальше, когда делимое меньше делителя? В общем, вот так непонятно описал, но подскажите по этой теме, как находить все эти div и mod?
PM MAIL   Вверх
azesmcar
Дата 16.5.2009, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(Dаedra @  16.5.2009,  22:39 Найти цитируемый пост)
То есть мне интересно, если a mod b = c, то как вычислить это С без помощи компилятора?

c = a - (a / b) * b;

Это сообщение отредактировал(а) azesmcar - 16.5.2009, 22:45
PM   Вверх
Dаedra
Дата 16.5.2009, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Цитата

c = a - (a / b) * b;

Спасибо. А можно точно так же разложить div?
PM MAIL   Вверх
mes
Дата 16.5.2009, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Есть такое понятие, как целочисленное деление. То которое проходили в начальной школе (помойму 3й класс  smile ),  до того как начали изучать дроби.
Остаток числа, который нельзя поделить нацело, и есть нужный Вам остаток.

3 mod 4 = 3; // так как делимое меньше делителя, оно все является остатком.
3 div 4 =0;

29 mod 3 = 2; // 29 - (29 div 3)*3 = 29 -9*3 = 29-27 =2;
29 div 3   =9;  
 smile 




Это сообщение отредактировал(а) mes - 16.5.2009, 22:47


--------------------
PM MAIL WWW   Вверх
azesmcar
Дата 16.5.2009, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(Dаedra @  16.5.2009,  22:47 Найти цитируемый пост)
Спасибо. А можно точно так же разложить div? 

DIV если не ошибаюсь в Pascal называлось обычное целочисленное деление.

Вообще div - divide - деление. В C/C++ это делает оператор /

Это сообщение отредактировал(а) azesmcar - 16.5.2009, 22:52
PM   Вверх
Dаedra
Дата 16.5.2009, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 20.2.2009

Репутация: нет
Всего: нет



Вот спасибо! А то такие мелочи упустил когда-то в школе, а теперь приходится поднимать информацию и выискивать, где можно..

Добавлено через 3 минуты и 25 секунд
Цитата

c = a - (a / b) * b;

И последний вопрос.. Здесь ведь по идее a/b (в скобках) должно быть целым числом? Потому что в Си, например, при точности числовых типов это все-таки должно дать ноль.
PM MAIL   Вверх
Lazin
Дата 17.5.2009, 00:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



Цитата(mes @  16.5.2009,  22:47 Найти цитируемый пост)
Есть такое понятие, как целочисленное деление. То которое проходили в начальной школе (помойму 3й класс  smile ),  до того как начали изучать дроби.


ну вообще, все это - элементы теории чисел, вы в 3-м классе проходили теорему Ферма? smile 

остаток от деления

модульная арифметика

Это сообщение отредактировал(а) Lazin - 17.5.2009, 00:32
PM MAIL Skype GTalk   Вверх
mes
Дата 17.5.2009, 00:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Dаedra @  16.5.2009,  21:52 Найти цитируемый пост)
Здесь ведь по идее a/b (в скобках) должно быть целым числом? Потому что в Си, например, при точности числовых типов это все-таки должно дать ноль. 

нет, для целых чисел в Си применяется целочисленное деление, поэтому   24/5 =4, а  24/5*5 =20


Цитата(Lazin @  16.5.2009,  23:31 Найти цитируемый пост)
ну вообще, все это - элементы теории чисел, вы в 3-м классе проходили теорему Ферма? 

не понял на что Вы намекаете, но в третьем  (или даже пораньше) классе мы (также как и другие школьники) проходили деление с остатком - как раз то о котором сейчас идет речь.  smile 


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0748 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.