Numbers with prime digits whose sum is 13: Difference between revisions
Content added Content deleted
(Prolog version) |
|||
Line 1,471: | Line 1,471: | ||
I've archived a slightly more OTT version: [[Numbers_with_prime_digits_whose_sum_is_13/Phix]]. |
I've archived a slightly more OTT version: [[Numbers_with_prime_digits_whose_sum_is_13/Phix]]. |
||
=={{header|Prolog}}== |
|||
<lang Prolog> |
|||
digit_sum(N, M) :- digit_sum(N, 0, M). |
|||
digit_sum(0, A, B) :- !, A = B. |
|||
digit_sum(N, A0, M) :- |
|||
divmod(N, 10, Q, R), |
|||
plus(A0, R, A1), !, |
|||
digit_sum(Q, A1, M). |
|||
prime_digits(0). |
|||
prime_digits(N) :- |
|||
prime_digits(M), |
|||
member(D, [2, 3, 5, 7]), |
|||
N is 10 * M + D. |
|||
prime13(N) :- |
|||
prime_digits(N), |
|||
(N > 777_777 -> !, false ; true), |
|||
digit_sum(N, 13). |
|||
main :- |
|||
findall(N, prime13(N), S), |
|||
format("Those numbers whose digits are all prime and sum to 13 are: ~n~w~n", [S]), |
|||
halt. |
|||
?- main. |
|||
</lang> |
|||
{{Out}} |
|||
<pre> |
|||
Those numbers whose digits are all prime and sum to 13 are: |
|||
[337,355,373,535,553,733,2227,2272,2335,2353,2533,2722,3235,3253,3325,3352,3523,3532,5233,5323,5332,7222,22225,22252,22333,22522,23233,23323,23332,25222,32233,32323,32332,33223,33232,33322,52222,222223,222232,222322,223222,232222,322222] |
|||
</pre> |
|||
=={{header|Raku}}== |
=={{header|Raku}}== |