Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
57
Task/Eban-numbers/PicoLisp/eban-numbers.l
Normal file
57
Task/Eban-numbers/PicoLisp/eban-numbers.l
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
(de _eban? (N)
|
||||
(let
|
||||
(B (/ N 1000000000)
|
||||
R (% N 1000000000)
|
||||
M (/ R 1000000)
|
||||
R (% N 1000000)
|
||||
Z (/ R 1000)
|
||||
R (% R 1000) )
|
||||
(and
|
||||
(>= M 30)
|
||||
(<= M 66)
|
||||
(setq M (% M 10)) )
|
||||
(and
|
||||
(>= Z 30)
|
||||
(<= Z 66)
|
||||
(setq Z (% Z 10)) )
|
||||
(and
|
||||
(>= R 30)
|
||||
(<= R 66)
|
||||
(setq R (% R 10)) )
|
||||
(fully
|
||||
'((S)
|
||||
(unless (bit? 1 (val S))
|
||||
(>= 6 (val S)) ) )
|
||||
'(B M Z R) ) ) )
|
||||
(de eban (B A)
|
||||
(default A 2)
|
||||
(let R (cons 0 (cons))
|
||||
(for (N A (>= B N) (+ N 2))
|
||||
(and
|
||||
(_eban? N)
|
||||
(inc R)
|
||||
(push (cdr R) N) ) )
|
||||
(con R (flip (cadr R)))
|
||||
R ) )
|
||||
(off R)
|
||||
(prinl "eban numbers up to an including 1000:")
|
||||
(setq R (eban 1000))
|
||||
(println (cdr R))
|
||||
(prinl "count: " (car R))
|
||||
(prinl)
|
||||
(prinl "eban numbers between 1000 and 4000")
|
||||
(setq R (eban 4000 1000))
|
||||
(println (cdr R))
|
||||
(prinl "count: " (car R))
|
||||
(prinl)
|
||||
(prinl "eban numbers up to an including 10000:")
|
||||
(prinl "count: " (car (eban 10000)))
|
||||
(prinl)
|
||||
(prinl "eban numbers up to an including 100000:")
|
||||
(prinl "count: " (car (eban 100000)))
|
||||
(prinl)
|
||||
(prinl "eban numbers up to an including 1000000:")
|
||||
(prinl "count: " (car (eban 1000000)))
|
||||
(prinl)
|
||||
(prinl "eban numbers up to an including 10000000:")
|
||||
(prinl "count: " (car (eban 10000000)))
|
||||
Loading…
Add table
Add a link
Reference in a new issue