2

ユーザーからのテキスト入力(キーボードで入力できるもの)を取得して、それを数値に転送するにはどうすればよいですか?

そこから、おそらくその番号を取得して、シードされた乱数ジェネレーターにフィードします。

Minecraftのランダムシードオプションからアイデアを得ていますが、何も見つかりません。

4

1 に答える 1

4

おそらくもっと興味深いアルゴリズムがありますが、これは単に文字を int に変換し、位置を掛けて重み付けするだけです ('abc' は 'cba' とは異なります)。ある種のハッシュ関数を使用することもできますが、この目的にはやり過ぎかもしれないと思いました。</p>

var input = 'askljfhasjfh', num = 0;

for (var i = 0, len = input.length; i < len; ++i) {
  num += input.charCodeAt(i) * (i + 1);
}

console.log(num);

ただし、Javascript で関数をシードすることはできませんMath.random()。常に現在の日付をシードに使用するだけです。

于 2012-10-07T02:52:30.473 に答える