问题在于在我的prolog脚本上使用随机数,我在prolog文件script.pl上有下一个代码:
main:-
get_time(TS),
set_random(TS),
random(-1000.0, 1000.0, X),
write('Random number: '),
write(X),
nl.
我在控制台上执行下一个命令行:
swipl -s script.pl -g 'main' -t 'halt(1)'
输出是:
% library(swi_hooks) compiled into pce_swi_hooks 0.00 sec, 2,224 bytes
% /home/script.pl compiled 0.01 sec, 704 bytes
Random number: -533.6139326519667
我可以多次运行相同的命令,每次都有相同的输出。我尝试工作而不改变随机种子,问题仍在继续。
我正在使用Ubuntu 12.04 32位。
请帮忙!
答案 0 :(得分:0)
运行代码时出错:
ERROR: set_random/1: Type error: `random_option' expected, found `1364628886.7626996'
即。 set_random / 1参数不正确。
我试图简化,并且有效:
main:-
random(-1000.0, 1000.0, X),
write('Random number: '),
write(X),
nl.
在不同的电话上产生不同的号码
答案 1 :(得分:0)
set_random(seed(888))not set_random(TS)