|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Evgenij Masherov 2:5020/175.2 31 Aug 2001 11:26:48 To : Serhiy Savychenko Subject : Округление по правилам -------------------------------------------------------------------------------- Fri Aug 31 2001 10:44, Serhiy Savychenko wrote to All: SS> Hужен алгоритм для правильного округления числа. Это когда не просто SS> отбрасывается лишние цифры, а: SS> При округлении до n - той цифры происходит следующее: SS> 1. Если значение после n больше 5 n=n+1 SS> 2. Если значение после n меньше 5 n=n SS> 3. Если значение после n равно 5 n округляется до четности. SS> Первое что приходит в голову это вывести число в строку с лишними двумя SS> цифрами, потом логическими операторами, а затем обратно в число. Hо SS> как-то SS> уж слишком не эффективно выглядит. Хотелось что нибудь на уровне SS> ассемблера, но идей толковых нет. Проблема осложняется еще тем, что на SS> входе может быть SS> не толко вещественное, но и 8-байтное целое. Вот Ексель делает такое SS> округление, SS> но я сомневаюсь в подобном алгоритме. SS> Какие будут идеи? Лично я прибавляю 0.5 и отбрасываю дробную часть... Правда, требование округлять до четного при этом игнорируется... Евгений Машеров АКА СанитарЖеня --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300e3cf0e3d.html, оценка из 5, голосов 10
|