[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13031: large numbers
From: |
Jozef Chraplewski |
Subject: |
bug#13031: large numbers |
Date: |
Thu, 29 Nov 2012 09:42:09 +0100 |
Hi,
It looks that guile returns incorrect results when it works with really big
numbers.
I've found it during resolving problem 48 from Project Euler:
http://projecteuler.net/problem=48
The solution is trivial:
(define (problem-48 limit)
(define (F)
(let loop ((n 1)
(sum 0))
(if (<= n limit)
(loop (+ n 1) (+ sum (expt n n)))
sum)))
(let* ((str (number->string (F)))
(len (string-length str)))
(substring str (- len 10) len)))
(display (problem-48 1000))
(newline)
The proper answer is 9110846700 but guile returns 6457854188
I've tested solution under other scheme implementations (MIT scheme, petite and
mzscheme) and it works as it should.
Does such a big numbers in guile require any special treatment or just they are
not supported?
Best,
Jozef
- bug#13031: large numbers,
Jozef Chraplewski <=