乱数を返す関数を定義したい:
gnuplot> rnd() = int(rand(0)*2**24)
^
invalid command
x
エラーメッセージを停止するためのパラメータを追加する必要があります。
gnuplot> rnd(x) = int(rand(0)*2**24)
パラメータなしで関数を定義することは可能ですか?
乱数を返す関数を定義したい:
gnuplot> rnd() = int(rand(0)*2**24)
^
invalid command
x
エラーメッセージを停止するためのパラメータを追加する必要があります。
gnuplot> rnd(x) = int(rand(0)*2**24)
パラメータなしで関数を定義することは可能ですか?
私はそれが可能だとは思いません ( の関数の構文を見てくださいhelp user-defined
)。私が知る限りrand
、これが役立つのは使用時だけです。他のすべての場合、「関数」は定数に評価されます。gnuplot の開発者は、この (興味深い) コーナー ケースを考えていなかったか、実装するのに十分有用だとは考えていなかったと思います。
これについて私が間違っていて、他の誰かが現れてそれを証明してくれることを願っていますが、私はそうではないと思います. すでに述べたように、パラメーターを渡すだけの最も簡単な回避策だと思います。本当に気に入らない場合は、マクロを使用できます。
set macro
rnd="(int(rand(0)*2**24))"
print 5+@rnd