질문입니당.!
돌심장
#include stdio.h
#include stdlib.h
#include time.h
void main()
{
srand(time(NULL));
int card1, card2, card3, card4;
int csum1, csum2;
while(card2==card1 || card3==card1 || card4==card1 || card3==card2 ||
card4==card2 || card4==card3)
{
card1 = rand() % 20+1;
card2 = rand() % 20+1;
card3 = rand() % 20+1;
card4 = rand() % 20+1;
csum1 = card1 + card2;
csum2 = card3 + card4;
if (csum1=10)
csum1=csum1-10;
if (csum1=20)
csum1=csum1-20;
if (csum1=30)
csum1=csum1-30;
else csum1;
if (csum2=10)
csum2=csum2-10;
if (csum2=20)
csum2=csum2-20;
if (csum2=30)
csum2=csum2-30;
else csum2;}
printf(user%3d %3d \ncomputr%3d %3d \nuser:%3d computer:%3d\n, card1, card2, card3, card4, csum1, csum2);
}요기서 20이상일경우만 20이 빠져서 안나오는데..
그 이유좀 가르쳐주세요~~
-
캔서
위의 if 문을 보면 10 이상일때는 20이상과 30이상을 포함합니다.
그래서 20이상이때 미리 10이상에서 10을 빼버리죠 그럼 20이상은 안될수도 있죠.
원래 의도가 설명이 안돼있어서 자세하게 답변은 못하겠네요. 결과가 어떤게 나와야 하는지 모르니
소스가 어디가 잘못됐다고 말하수 없죠.... 그냥 대충 성의없이 적어봅니다.
if else문을 써보세요