ОКРУГЛЕНИЕ
Из предыдущего примера вытекает другой вопрос: как производить округление? Решим такую задачу: сколько бананов нужно завезти в школьный буфет, если он рассчитан на 225 человек, и 32% из них обычно покупают бананы? Естественно, нас интересуют только целые бананы, так что в случае получения нецелого результата его нужно округлить. Сейчс слово % определено так, что все цифры справа от десятичной точки просто отбрасываются. Иными словами, результат «усекается»: 32% ОТ РЕЗУЛЬТАТ 225 = 72.00 72 - абсолютно правильный 226 = 72.32 72 - правильный, округлен в меньшую сторону (усечен) 227 = 72.64 72 - усечен, но не округлен
Существует, однако, способ, при котором любое десятичное значение от 0,5 и выше, полученное в остатке, округляется до следующего целого. Для того чтобы найти «округленные проценты», мы должны определить слово R%: : R% ( n % -- результат ) 10 */ 5 + 10 / ;
так что теперь выражение 227 32 R% .
даст в результате 73, т. е. правильно округленное до следующего целого числа.
Заметьте, что сначала мы делим на 10, а не на 100. При этом у нас появляется возможность добавить цифру 5 в позицию единиц числа, полученного в результате выполнения операции */. ОПЕРАЦИЯ СОДЕРЖИМОЕ СТЕКА
227 32 10 */ 726 5 + 731 10 / 73
Окончательное деление на 10 приводит число к надлежащему виду, в чем вы можете убедиться самостоятельно1.
Как недостаток такого способа округления необходимо отметить, что вы теряете одну значащую цифру в конечном результате, а именно вместо 32,767 мы можем получить только 3,276 Но если для вас это важно, вы всегда можете воспользоваться числами двойной длины (они будут рассмотрены позднее), которые также можно округлять.