Sum digits of an integer: Difference between revisions
Content added Content deleted
imported>Md1frejo |
imported>Md1frejo |
||
Line 1,540: | Line 1,540: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
{{out}} |
{{out}} |
||
<pre>1 15 15 29 29</pre> |
<pre>1 15 15 29 29</pre>{{Header}}<syntaxhighlight lang="scheme"> |
||
(define dsum (lambda (x base) |
|||
(let ((number (if (string? x) (string->number x base) x))) |
|||
(if (= (string-length (number->string number)) 1) number |
|||
(+ (mod number base) (dsum (div number base) base)))))) |
|||
> (dsum 123 10) |
|||
6 |
|||
> (dsum "fe" 16) |
|||
29 |
|||
> (dsum "f0e" 16) |
|||
29 |
|||
> (dsum 1234 10) |
|||
10 |
|||
</syntaxhighlight> |
|||
=={{header|Clojure}}== |
=={{header|Clojure}}== |