話の発端は、StackOverflowの、この質問にあった。 StackOverflow 日本語版 - c言語での乱数生成 質問に対する回答は、きわめて単純で、rand()関数を、取得したい乱数の個数分、呼んでやりましょうというもの。 いちおう、XcodeのCommand Line Toolで、サンプルコードを作って、それを実行してみて、ちゃんと意図したとおりの結果になることを確認する。が、ここで奇妙なことに気づく。 何度実行しても、初項が4になる。 試しに、こんなC言語のコードを書いて、Xcodeで実行してみる。 #include <stdio.h> #include <stdlib.h> #include <time.h> int main(int argc, const char * argv[]) { unsigned int i; unsigned int seed = (uns
![Mac、iOSで、rand()関数の疑似乱数アルゴリズムがヘン! - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/d6ed95417584e136e4d0d22b86c15e32f6592029/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9TWFjJUUzJTgwJTgxaU9TJUUzJTgxJUE3JUUzJTgwJTgxcmFuZCUyOCUyOSVFOSU5NiVBMiVFNiU5NSVCMCVFMyU4MSVBRSVFNyU5NiU5MSVFNCVCQyVCQyVFNCVCOSVCMSVFNiU5NSVCMCVFMyU4MiVBMiVFMyU4MyVBQiVFMyU4MiVCNCVFMyU4MyVBQSVFMyU4MiVCQSVFMyU4MyVBMCVFMyU4MSU4QyVFMyU4MyU5OCVFMyU4MyVCMyVFRiVCQyU4MSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9Y2NiOWMzYjVhOGI4YjY4MGMzYzQ0NmY2MjBiZDIwM2M%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwc3VzYW51d28mdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWU1NzhiMGZkMmVlMGYxOTUyYjFkZDI3ODU1OGIyZWNk%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D8b229b87eb85ee13ed85f54f4b142b61)