ページ 11

ジャンケン

Posted: 2008年12月26日(金) 11:29
by ざこ
MFCでジャンケンプログラムを作ってます。
そこで相手がランダムにグーチョキパーのいずれかを出すというのができません。
私の考えではrandで1~3の間の数をランダムに出しif文で1だったらグーのiconを2だったらチョキ、3だったらパー
という具合がよろしいかと考えましたがうまくいきません。
CStatic *p;
p=(CStatic *)GetDlgItem(IDC_STATIC1);
int n;
n=rand();
if(n<1||3<n)return;

if(n==1){
  HICON a;
  a=AfxGetApp()->LoadIcon(IDI_ICON1);
  p->SetIcon(a);
}
という風になってます。教えて下さい。

Re:ジャンケン

Posted: 2008年12月26日(金) 11:38
by 御津凪
> n=rand();
> if(n<1||3<n)return;
rand 関数は 0から65535までのランダムな値を返しますので、
if 文のところでほぼ return が呼ばれてしまいます。
この場合、
n=rand()%3; // 0~2の三つの値のどれかを格納
とすると良いでしょう。

Re:ジャンケン

Posted: 2008年12月26日(金) 13:08
by ざこ
できましたありがとうございました。