Я пытаюсь написать функцию, которая добавляет два максимальных значения из трех параметров.
(define (sumhighest a b c) (cond<br>
((and (>= a b) (>= a c)) (if (>= b c) (+ a b) (+ a c)))
((and (>= b a) (>= b c)) (if (>= a c) (+ a b) (+ b c)))
((and (>= c a) (>= c b)) (if (>= a b) (+ a c) (+ b c))))
)
Всякий раз, когда я использую функцию, я получаю сообщение «неопределенное возвращаемое значение»». Я не знаю, что здесь не работает. Т.е.:
(sumhighest 1 2 3)
РЕДАКТИРОВАТЬ: некоторые люди указали, что этот код работает для них. Я использую MIT-схему реализации интерпретатора. В Ubuntu 18.04 он находится под пакетом, называемым mit-схема.