Есть ли у Scheme функция знака? Я не мог найти никакой информации об этом.
Я определяю функцию знака как функцию, которая выдает -1 при x <0, 0 при x = 0 и 1 при x> 0.
Просто используйте встроенную sgn процедуру:
sgn
(sgn -10) => -1 (sgn 10) => 1 (sgn 0) => 0
На случай, если вам интересно, как это реализовать ...
(define (sign n) (cond ((negative? n) -1) ((positive? n) 1) (else 0)))