方案语言:合并两个数字

May*_*hem 4 merge scheme numbers list

如何将列表中的两个整数合并为一个?(在方案中)例子:
'(11 223) - > 11223

Ósc*_*pez 5

假设列表中只有两个元素,并且两个元素都是数字:

(define (merge-numbers lst)
  (let ((1st (number->string (first  lst)))
        (2nd (number->string (second lst))))
    (string->number (string-append 1st 2nd))))
Run Code Online (Sandbox Code Playgroud)

它按预期工作:

(merge-numbers '(11 223))
> 11223
Run Code Online (Sandbox Code Playgroud)

或者,不使用let:

(define (merge-numbers lst)
  (string->number
   (string-append
    (number->string (first  lst))
    (number->string (second lst)))))
Run Code Online (Sandbox Code Playgroud)