Вниз
Скачать: CL | DM;

аналог div и mod для не integer   Найти похожие ветки 

← →
ghg ©   (2004-10-13 11:26) [0]

есть переменная типа single
нужно знать остаток ее от деления на целое и тоже самое относительно div

никак не могу придумать чтобы все случаи учесть (отрицательные числа и т.д.)
может у кого есть готовое?


← →
Anatoly Podgoretsky ©   (2004-10-13 11:29) [1]

Функция mod не имеет смысла для чисел с плавающей запятой, нет там ни каких остатков, всегда делится.


← →
ghg ©   (2004-10-13 11:32) [2]

почему?
134.25/45=2 плюс остаток 44.25


← →
cvg   (2004-10-13 11:33) [3]

Умножай дробную часть частного на делитель. Для отрицательных думай сам.


← →
ghg ©   (2004-10-13 11:42) [4]

и как мне найти эту дробную часть?
пользоваться Round() и после этого из переменной вычитать то что получилось после округления учитывая в какую сторону мы округлили так что ли?

может есть правильнее способ?


← →
Amoeba ©   (2004-10-13 12:12) [5]


> ghg ©   (13.10.04 11:42) [4]

Посмотри, какие ф-ии есть в модуле Math. Полагаю, тогда решение само придет в голову.


← →
VMcL ©   (2004-10-13 12:14) [6]

>>ghg ©  (13.10.04 11:42) [4]

function FloatDiv(const A, B: Double): Double;
begin
 Result := Int(A / B);
end;

function FloatMod(const A, B: Double): Double;
begin
 Result := A - Int(A / B) * B;
end;


← →
cvg   (2004-10-13 12:17) [7]

Чем тебе floor для положительных и ceiling для отрицательных не нравится? А еще лучше -- int.


← →
Anatoly Podgoretsky ©   (2004-10-13 12:46) [8]

ghg ©   (13.10.04 11:32) [2]
Не 2, а 2.98...
Остаток 0, число поделилось без остатка


← →
ghg ©   (2004-10-13 12:50) [9]

2 VMcL ©   (13.10.04 12:14) [6]
сенкс, именно Int и искал



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
8-1090659273
crizis
2004-07-24 12:54
2004.10.31
как убрать мерцание с помощью двойной буферизции


9-1086552884
xman
2004-06-07 00:14
2004.10.31
Алгоритмы


4-1096207357
Comp
2004-09-26 18:02
2004.10.31
Все-таки как включить поддержку Visual Styles ????


1-1097733633
Некто
2004-10-14 10:00
2004.10.31
Куча компонентов на форма


14-1097253935
Leaner
2004-10-08 20:45
2004.10.31
Количество секторов в кластере




   Наверх