실행으로 확인하기
LISPEX
(call-with-values (lambda () (exact-integer-sqrt 20)) list)관측 결과
OUTPUT
(4 4)이 순서로 생각하세요
+ - * /는 인자를 몇 개든 받도록 규정되어 있습니다. 비교는 인자가 최소 두 개 필요하고, 정수 도메인 연산은 정수가 아닌 값을 거부합니다.floor/와truncate/는 몫과 나머지를 두 값으로 돌려줍니다.expt는 정확 정수 지수를 받습니다.exact-integer-sqrt는 제곱근과 나머지를 돌려줍니다.
수치 시그니처
| 시그니처 | 결과 | 오류 경계 |
|---|---|---|
| (+ number ...) / (* number ...) | 수, 부정확 피연산자가 없으면 정확 | E312 타입, E314 비유한 |
| (/ number number ...) | 정확 유리수 또는 유한 실수 | E313 0 제수, E314 비유한 |
| (floor/ integer integer) | 몫과 나머지, 두 값 | E312 비정수, E313 0 제수 |
| (expt number exact-integer) | 밑의 정확성을 보존한 수 | E313 정확 0의 음수 거듭제곱, E314 표현 불가 |
| (exact-integer-sqrt 음이 아닌 정확 정수) | 제곱근과 나머지, 두 정확 값 | E312 도메인 |
흔한 오해
일반 초월함수와 비유한 값은 없습니다.
다음으로
이 시그니처 뒤에 있는 정확·부정확 규칙과 전염 규칙은 매뉴얼이 설명하고, 다른 계열과의 위치 관계는 색인이 보여 줍니다.