Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
ВнизДеление Найти похожие ветки
← →
M-Alex (2004-09-22 15:41) [0]Можноли делить числа в Delphi без div чтобы с остатком и без использования mod
← →
Reindeer Moss Eater © (2004-09-22 15:42) [1]Конечно можно.
← →
Суслик © (2004-09-22 15:42) [2]сам понял, что спросил?
← →
Sha © (2004-09-22 15:43) [3]на 2^n
← →
Anatoly Podgoretsky © (2004-09-22 15:43) [4]Можно, это математика второго класса.
← →
Суслик © (2004-09-22 15:44) [5]Все правда поняли, что он спросил?
← →
Reindeer Moss Eater © (2004-09-22 15:46) [6]А что здесь непонятного?
← →
Reindeer Moss Eater © (2004-09-22 15:48) [7]Чел хочет:
- делить
- не использовать div
- знать остаток
- не использовать mod
Это возможно. Разве не очевидно?
← →
Sha © (2004-09-22 15:48) [8]> Суслик © (22.09.04 15:44) [5]
> Все правда поняли, что он спросил?
Ответ зависит от того, понял ли ты :)
← →
Суслик © (2004-09-22 15:50) [9]
> [7] Reindeer Moss Eater © (22.09.04 15:48)
да, наверное это он и спрашивал
← →
Суслик © (2004-09-22 15:51) [10]
> [8] Sha © (22.09.04 15:48)
> > Суслик © (22.09.04 15:44) [5]
> > Все правда поняли, что он спросил?
>
> Ответ зависит от того, понял ли ты :)
не понял, к чему это
Я про то и говорю, что вопрос не понял и удивляюсь, что вы все поняли.
← →
Sha © (2004-09-22 15:54) [11]Суслик © (22.09.04 15:51) [10]
Возможно при помощи 2-х умножений или комбинаций shr/and в простейшем случае.
← →
Sandman25 © (2004-09-22 15:55) [12]X - Trunc(X/Y)*Y
← →
Sha © (2004-09-22 15:56) [13]Sandman25 © (22.09.04 15:55) [12]
Это можно провернуть и в целочисленной арифметике
← →
Суслик © (2004-09-22 15:58) [14]
> [11] Sha © (22.09.04 15:54)
> Возможно при помощи 2-х умножений или комбинаций shr/and
> в простейшем случае.
да не спорю я ни с чем :)))
вопрос бы понять :))
> Можноли делить числа в Delphi без div чтобы с остатком
> и без использования mod
Вот эту комбинацию слов фик поймешь - если человек хочет делить без использования mod, то он значит умеет делить с использованием mod. Я так например не умею :((
← →
Sha © (2004-09-22 16:01) [15]Суслик © (22.09.04 15:58) [14]
Перестановкой слов получаем:
Можноли делить с остатком числа в Delphi без использования div и mod
Все понятно :)
← →
Sandman25 © (2004-09-22 16:06) [16][13] Sha © (22.09.04 15:56)
На Паскале?
← →
Суслик © (2004-09-22 16:07) [17]
> [15] Sha © (22.09.04 16:01)
О великий комбинатор :))) Опыт...
Тогда правда все понятно :))
← →
Sha © (2004-09-22 16:09) [18]Sandman25 © (22.09.04 16:06) [16]
Да, если Y известен в момент компиляции.
В противном случае все несколько усложняется.
← →
Sandman25 © (2004-09-22 16:11) [19][18] Sha © (22.09.04 16:09)
Можно примеры для обоих случаев? Или хотя бы идею.
← →
TUser © (2004-09-22 16:12) [20]Для усложенения жизни можно порекомендовать вот такой алгоритм. Тут все только плюс и минус.
A:=делимое
B:=делитель
C:=B; C1:=0;
while A >= B do begin
A:=A+C1-C;
C1:=C
C:=C+C;
end;
if A < 0 then
A:=A+C1;
while A >= B do
A:=A-B;
A = остаток
← →
Sandman25 © (2004-09-22 16:16) [21][20] TUser © (22.09.04 16:12)
Такое нахождение остатка очевидно. Но очевидно и то, что оно неэффективно.
← →
Sha © (2004-09-22 16:19) [22]> Sandman25 © (22.09.04 16:11) [19]
> Можно примеры для обоих случаев? Или хотя бы идею.
Идей всего 3: умножение на "обратное", сдвиги, деление столбиком.
Первое хорошо описано у Agner Fog http://www.agner.org/assem
← →
Sandman25 © (2004-09-22 16:21) [23][22] Sha © (22.09.04 16:19)
Спасибо. Примерно понятно.
← →
Anatoly Podgoretsky © (2004-09-22 16:29) [24]Что то вас понесло, вспомните школу
← →
DiamondShark © (2004-09-22 17:10) [25]Ну и наконец, мой любимый вопрос: А зачем?
← →
Anatoly Podgoretsky © (2004-09-22 17:13) [26]DiamondShark © (22.09.04 17:10) [25]
В России учеба началась
← →
Sha © (2004-09-22 23:10) [27]> DiamondShark © (22.09.04 17:10) [25]
Умножение быстрее деления.
← →
Zhekson (2004-09-22 23:25) [28]
var
a,b,c: real;
begin
c := a / b;
end;
это мой вариант 100% рабочего ответа, но опять же - если я правильно вопрос понял.
← →
Zhekson (2004-09-22 23:32) [29]Всё M-Alex, говори спасибо. Делим без div, c остатком и не используем mod.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.037 c