Thank you!

--- [EMAIL PROTECTED] wrote:
[nice proof snipped]

> Thus the correct algorithm reads
> 
> > scaleSequence :: Int -> Int -> [Int] -> [Int]
> > scaleSequence s t
> >   = map scale
> >     where
> >       scale n = (n*range) `div` maxn + s
> >       range   = t - s
> >       maxn    = modulus - 1
> >       modulus = 65536
> 
> Given your example,
> Main> any (==966) (scaleSequence 1 966 ([65231] ++ [1..965]
> ++[65565]))
> True
> Main> any (>966) (scaleSequence 1 966 ([65231] ++ [1..965]
> ++[65565]))
> False 

In your examples you added one more element to the end of the list. Its
value is greater than maxn -- maybe I'm missing something?

Cheers,
Dimitre Novatchev.


__________________________________________________
Do You Yahoo!?
Yahoo! Health - your guide to health and wellness
http://health.yahoo.com
_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to