編集:私は質問を言い換えてきたパターン返す擬似乱数生成器
ため、私が求めていたもののないアイデアを持っていないので、多くの応答に。
extern unsigned short lfsr();
int foo[65536];
for (int i = 0; i < 65536; i++)
foo[lfsr()] = 1;
// every element of foo has been set to 1.
私はと呼ばれる65536回はそれが無いの繰り返しで、正確に一度0から65535までのすべての数を返してしまう場合は65535に擬似ランダム16ビット値、0を返すlfsr()
のソースコードをしたいです。もう一度やり直した場合、同じシーケンスが返されます。偉大な乱数発生器ではありませんが、それはその用途を持っています。
私はかつて1984年
周りコンピュータ体操や歯列矯正の博士ドブスジャーナルから、このためのコードを持っていたこれは、ノイズ発生器に非常に似ているようだが、例外は、サイクルが繰り返されることであり、それがために動作しないでしょうオーディオ。同じ64K 16ビットPCMサンプルをレンダリングすると、48 kHzで1.5秒未満で顕著な繰り返しが発生し、16ビットノイズジェネレータからは聞こえませんでした。
注:シャッフル方法は1984年には機能しませんでした。これは、アップル社の[または類似のコンピュータで使用可能なメモリの2倍を超える128Kを使用するためです。
回答:LFSR、線形フィードバックシフトレジスタとどこ元の記事を見つけるためにとして、それを識別するためのJesperユールとジムMischelに 感謝。
ご迷惑をおかけした元の質問とお時間をありがとうございます。
私はあなたの質問を数回読んだが、私はあなたが望むものを理解できませんでした。乱数を生成する方法をお望みですか?または、ピンクノイズ(1/fノイズ)を生成する方法が欲しいですか? –
コードを募集している質問は、すぐにオフトピックとして投票しました。あなたの質問を編集してそれらの部分を削除する必要があります。 – user694733
あなたの好きな検索エンジンに「急いでいるプディング」を打つ。 –