for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Лисоводы   всех   стран,  объединяйтесь !!!  

Список Форумов  :: Visual Foxpro, Foxpro for DOS
  

Как округлить до целого числа?
AndreRu
Дата: 28.03.05 06:19:44
Глупай вопрос, но как округлить до целого дробное число, если тербуется что в случае четногой целой части округлялось в меньшую сторону, а в случае нечетной в большую.
13.5 => 14 а 16.5 => 16
Есть ли для этого стандартная функция
ROUND () округляет в обоих вариантах в большую сторону
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
piva

Сообщений: 18600
Откуда: Курган
Дата: 28.03.05 06:22:48
CEILING




------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AndreRu
Дата: 28.03.05 06:49:05
Спасибо за совет, есть еще и FLOOR()
Но похоже что нет стандарной функции для разбора в какую сторону округлять если целая часть четная или нечетная
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
piva

Сообщений: 18600
Откуда: Курган
Дата: 28.03.05 06:54:25
Цитата:
целая часть четная или нечетная
может еще встроенную функцию округления для простых чисел ? А самому написать вломы ? Поиск по архиву - там таких фукнций было моного



------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AndreRu
Дата: 28.03.05 07:01:43
Была бы не спрашивал?
Просто возник такой вопрос,
И оказалось что есть разные правила округления
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AleksM
Автор

Сообщений: 17755
Дата: 28.03.05 07:04:46
Математические правила округления одни, а на все пользовательские правила функций не напасешься.




------------------
Лучше переесть, чем недоспать.
Не спеши, а то успеешь.
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
Vladimir_Knyr

Сообщений: 1711
Откуда: г. Енисейск
Дата: 28.03.05 07:52:36
добавлюсь к мнению об округлении.

m.var = 13.5 && 16.5
? IF(int(m.var)%2=0,round(m.var,0),int(m.var))




------------------
хороший код работать будет и обязан, а плохой не жалко.
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AndreRu
Дата: 28.03.05 08:51:31
Спасибо за краткий ответ, посмотрел и все понял
А с правилами округления, ....
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
dushes

Сообщений: 243
Откуда: Россия,Кострома
Дата: 28.03.05 09:26:33
Это - стандарт IEEE Standard 754, section 4 standard




------------------
пиво я не пью...я его ем...
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AleksM
Автор

Сообщений: 17755
Дата: 28.03.05 09:30:28
Интересно было бы почитать.




------------------
Лучше переесть, чем недоспать.
Не спеши, а то успеешь.
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
Igor Korolyov

Сообщений: 34067
Дата: 28.03.05 15:12:01
Hi AndreRu!

Ты проверь его на отрицательных числах сначала
Я не помню как оно там должно округляться, возможно придётся чуть
подправить...

P.S. А то что правил округления много - это печальный факт




------------------
WBR, Igor
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
dushes

Сообщений: 243
Откуда: Россия,Кострома
Дата: 29.03.05 07:06:08
на эту тему была переписка:
www.rsdn.ru




------------------
пиво я не пью...я его ем...
Ratings: 0 negative/0 positive

Re: Как округлить до целого числа?
AleksM
Автор

Сообщений: 17755
Дата: 29.03.05 07:24:08
Ну что ж, возможно в этом и есть какое то рациональное зерно. Будем иметь ввиду.
Хотя как ни округляй от ошибок округления не уйти , но на их минимизацию это может повлиять.




------------------
Лучше переесть, чем недоспать.
Не спеши, а то успеешь.
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 15 leonid Crispy of63 Komar CatYzi tmp_adr Guest (Гостей: 8)


© 2000-2021 Fox Club 
Яндекс.Метрика