パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

タレコミ記「カルドセプトサーガ店頭回収へ」」記事へのコメント

    • 下リンク
      > やがてそのような書き込みの中に、Cコードを示して「サイコロなんかたったこれだけで作れるのに」と発言する物が複数現れた。そしてこれが最も重要な点だが、そのようにして示されたコードは、私が見た限りでは一つ残らず全てカルドセプトサーガのプログラマが犯したのと同じミスをしていた。

      自力で疑似乱数作ったとでも思ってたんだろうか・・・
      そっちのほうが、その関数の性質よく分かってるだろうから、ミスしないと思うんだが・・・

      # それより、2chって意外かなぁ?
      • ようは、rand() % 6 + 1 (だっけ?)みたいなコードを書いてしまった人達が多かったんでしょ。本来ならば、rand() / (RAND_MAX / 6 + 1) + 1 とか書かないと、カルドセプト乱数と同じように、奇数・偶数の法則性が出ちゃうよって事でしょ。
        • by Anonymous Coward on 2006年12月18日 0時29分 (#1077397)
          いまどきのVC++やglibcのrand()は、下位bitのランダム性に問題はないんですがねえ。XBoxだったらMSのlibcでしょう?% 6 しても問題なさそう。
          このゲームの作者は線形合同法のコードを自分で書いた上で % 6 したのでは?

          参考: Linuxのrand(3)のman

          The versions of rand() and srand() in the Linux C Library use the same random number generator as random() and srandom(), so the lower-order bits should be as random as the higher-order bits. However, on older rand() implementations, and on current implementations on different systems, the lower-order bits are much less random than the higher-order bits. Do not use this function in applications intended to be portable when good randomness is needed.
          推測ですがね。
          親コメント

弘法筆を選ばず、アレゲはキーボードを選ぶ -- アレゲ研究家

処理中...