大学ではVC++6.0使ってるけど、自分は家じゃマック使ってるから、Xcode 2.3でCommand Line UtilityのStandard Tool扱いで、いざプログラムを動かしてみるが、正常に動かない。
デバッグトレースしてみて、ひどいことをしているのが露見。

rand()が返す値は、(0 - 32767)ではありません。(0 - RAND_MAX)の値なんです。

た ま た ま、VC++シリーズのstdlib.hが、#define RAND_MAX 32767 と書いてるだけの話

VC++で組んでたら、この間違いに気づかず、後で移植した時に大わらわになりやがりますw
stdlib.hの定数なんて、プラットフォームによって、まちまちな事が多いし、こういう事をするのは大変危険で恐ろしい大誤りです。

以下自分なりに考えた正答

上の例文の、最後の行を以下の様に直す
x=(double)a/((double)RAND_MAX+1);

これで正常に動作が確認できました。

一応理系の情報通信の教授から出された課題なんですが、その道のプロである人でも、こういうことやっちゃうんですね...
ちょっとこりゃないぜと思いました

皆さんどう思います?