난수 생성기
난수 생성기
난수를 생성하는 술어들을 설명해요.
본문
set_seed/1, randomize/0
Templates
set_seed(+integer)
randomize
Description
set_seed(Seed)— Seed로 난수 생성기 시드를 재초기화.randomize— 난수 생성기를 재초기화. 이 술어는 절대 시간에 의존하는 무작위 값으로set_seed/1을 호출.
Errors
- Seed가 변수 —
instantiation_error - Seed가 변수도 정수도 아님 —
type_error(integer, Seed) - Seed가 0보다 작은 정수 —
domain_error(not_less_than_zero, Seed)
Portability: GNU Prolog 술어.
get_seed/1
Templates
get_seed(?integer)
Description
get_seed(Seed)는 현재 난수 생성기 시드와 Seed를 통일해요.
Errors
- Seed가 변수도 정수도 아님 —
type_error(integer, Seed) - Seed가 0보다 작은 정수 —
domain_error(not_less_than_zero, Seed)
Portability: GNU Prolog 술어.
random/1
Templates
random(-float)
Description
random(Number)는 0.0 ≤ Number < 1.0인 무작위 부동소수점 수와 Number를 통일해요.
Errors
- Number가 변수가 아님 —
uninstantiation_error(Number)
Portability: GNU Prolog 술어.
random/3
Templates
random(+number, +number, -number)
Description
random(Base, Max, Number)는 Base ≤ Number < Max인 무작위 수와 Number를 통일해요. Base와 Max가 모두 정수이면 Number는 정수이고, 그 외에는 Number는 부동소수점 수예요.
Errors
- Base가 변수 —
instantiation_error - Base가 변수도 숫자도 아님 —
type_error(number, Base) - Max가 변수 —
instantiation_error - Max가 변수도 숫자도 아님 —
type_error(number, Max) - Number가 변수가 아님 —
uninstantiation_error(Number)
Portability: GNU Prolog 술어.