Update of /project/movitz/cvsroot/movitz/losp/muerte In directory clnet:/tmp/cvs-serv3438
Modified Files: format.lisp Log Message: When printing the last digit in format-float, use (floor (+ 1/2 x)) rather than (round x), because round rounds towards the nearest _even_ integer. See (bottom of CLHS entry for round et al).
--- /project/movitz/cvsroot/movitz/losp/muerte/format.lisp 2006/04/05 23:02:22 1.13 +++ /project/movitz/cvsroot/movitz/losp/muerte/format.lisp 2006/11/07 12:16:59 1.14 @@ -10,7 +10,7 @@ ;;;; Author: Frode Vatvedt Fjeld frodef@acm.org ;;;; Created at: Sat Mar 23 01:18:36 2002 ;;;; -;;;; $Id: format.lisp,v 1.13 2006/04/05 23:02:22 ffjeld Exp $ +;;;; $Id: format.lisp,v 1.14 2006/11/07 12:16:59 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -82,7 +82,7 @@ (declare (index i)) (multiple-value-bind (next-digit next-remainder) (if (= i last-i) - (round (* 10 remainder)) + (floor (+ 1/2 (* 10 remainder))) (truncate (* 10 remainder))) (setf remainder next-remainder) (write-digit next-digit *standard-output*)))))))