mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
(math-bignum-digit-length): Change to optimal value.
(math-read-number-simple): Remove leading 0s.
This commit is contained in:
parent
cd42ec7d9b
commit
aefad52dcd
1 changed files with 4 additions and 1 deletions
|
|
@ -2283,7 +2283,8 @@ See calc-keypad for details."
|
|||
|
||||
|
||||
|
||||
(defconst math-bignum-digit-length 3
|
||||
(defconst math-bignum-digit-length
|
||||
(truncate (/ (log10 (/ most-positive-fixnum 2)) 2))
|
||||
"The length of a \"digit\" in Calc bignums.
|
||||
If a big integer is of the form (bigpos N0 N1 ...), this is the
|
||||
length of the allowable Emacs integers N0, N1,...
|
||||
|
|
@ -3466,6 +3467,8 @@ and all digits are kept, regardless of Calc's current precision."
|
|||
(cond
|
||||
;; Integer
|
||||
((string-match "^[0-9]+$" s)
|
||||
(if (string-match "^\\(0+\\)" s)
|
||||
(setq s (substring s (match-end 0))))
|
||||
(if (<= (length s) (* 2 math-bignum-digit-length))
|
||||
(string-to-number s)
|
||||
(cons 'bigpos (math-read-bignum s))))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue