15 lines
462 B
Racket
15 lines
462 B
Racket
#lang racket
|
||
|
||
(require math/number-theory)
|
||
|
||
(define (sum-of-digits n (σ 0))
|
||
(if (zero? n) σ (let-values (((q r) (quotient/remainder n 10)))
|
||
(sum-of-digits q (+ σ r)))))
|
||
|
||
(define (additive-prime? n)
|
||
(and (prime? n) (prime? (sum-of-digits n))))
|
||
|
||
(define additive-primes<500 (filter additive-prime? (range 1 500)))
|
||
(printf "There are ~a additive primes < 500~%" (length additive-primes<500))
|
||
(printf "They are: ~a~%" additive-primes<500)
|