#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int me;
int com;
int win, draw, lose;
srand((int)time(NULL));
for(win=0, draw=0, lose=0;lose==1; )
{
printf("바위는 1, 가위는 2, 보는 3 : ");
scanf("%d", &me);
com=rand()%3+1;
if(me==1 && com==1) //비길때
{
printf("당신은 바위 선택, 컴퓨터는 바위 선택, 비겼습니다.");
draw++;
}
else if(me==2 && com==2)
{
printf("당신은 가위 선택, 컴퓨터는 가위 선택, 비겼습니다.");
draw++;
}
else if(me==3 && com==3)
{
printf("당신은 보 선택, 컴퓨터는 보 선택, 비겼습니다.");
draw++;
}
else if(me==1 && com==3)//졌을때
{
printf("당신은 바위 선택, 컴퓨터는 보 선택, 당신이 졌습니다.");
lose++;
}
else if(me==2 && com==1)
{
printf("당신은 가위 선택, 컴퓨터는 바위 선택, 당신이 졌습니다.");
lose++;
}
else if(me==3 && com==2)
{
printf("당신은 보 선택, 컴퓨터는 가위 선택, 당신이 졌습니다.");
lose++;
}
else if(me==1 && com==2)//이길때
{
printf("당신은 바위 선택, 컴퓨터는 가위 선택, 당신이 이겼습니다.");
win++;
}
else if(me==2 && com==3)
{
printf("당신은 가위 선택, 컴퓨터는 보 선택, 당신이 이겼습니다.");
win++;
}
else if(me==3 && com==1)
{
printf("당신은 보 선택, 컴퓨터는 바위 선택, 당신이 이겼습니다.");
win++;
}
else
printf("다시 선택하세요.");
}
printf("게임의 결과 : %d승, %d무n", win, draw);
return 0;
}
시발 포문 어디가 잘못된겨... 랜드 함수를 저렇게 쓰는게 아님???
음.. 불량인듯..
어디가?
아;
어 lose=1 하니까 져도 돌아감;;
왜이런거져 ㅜㅜ
시작부터 지고들어가는거죠
losw!=0 이렇게 해야되낭
헐뭐징
한번 lose ==0 넣어봐 ㅋ
for (승리는 0, 비김은 0, 패배는 0; 패배가 1이 아닐동안;) { if (지면) 패배를 1로; }
영어가 어려우실 것 같아 한글로 써드렸습니다
문제 특성상 lose < 1 이라고 하는게 제일 좋을듯
lose=1 이게 왜 안되는거에여? 중간에 조건넣는거 아니에여? 그럼 루즈가 1일때 탈출 이게 성립안되는거임? 조건문에도 = 넣어버리면 lose에 1을 넣어버리는거임??? 헐 혼란
아 맞다
반복할조건 도랐따;
아ㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏ 내가벼신이지
조건없이 무한루프를 돌다가 if (lose == 1) break; 를 하는게 제일 명시적일 것 같지만
어 그럼 lose=1 이면 lose=1될때까지 반복한다 이소리 아닌가여?
주석달기도 좋고
헐 갑자기 왤케 헷갈리지 ㅡㅡ
많은 사람들이 착각하는 조건문의 뜻: \'~일때까지\' 아닌가요?
~인 동안
아ㅏㅏㅏㅏㅏ!! 근데 왜 애초부터 돌아가지가 않는거에요? lose를 일단 0으로 초기화시켰는데
아 조건문엔 걍 =을 안쓰는게 낫겟네
무조건 크기비교로 봐야겟다
맛저하구 ㅅㄱ하십셔