Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

аналог 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 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.033 c
14-1097588892
Алхимик
2004-10-12 17:48
2004.10.31
Что бы это могло быть?


4-1096000894
snake1977
2004-09-24 08:41
2004.10.31
Контекстное меню для каталога


1-1098182137
Scraber
2004-10-19 14:35
2004.10.31
Обычная кпока - контрол


14-1097482918
ORMADA
2004-10-11 12:21
2004.10.31
Зацените прогу


4-1096390666
hgd
2004-09-28 20:57
2004.10.31
Скажите как нажать кнопку в другой открытой программе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский