일단 상황을 설명하자면 난 17학번 새내기야 ( 이정도도 못한다고 욕먹을까봐 )
비쥬얼 스튜디오에서 C++ 소스파일이름 .c로 바꿔서 프로그래밍하고
if - else 문 배우는 중인데
손님에게 받은 돈, 상품 가격, 잔돈
변수 세개 놨어 난 일단 ㅇㅇ
그래서 최대한 간단하게 식을 세우려고 하는데 if -else 등을 사용하여
이제 잔돈 줄 때 만원 오천원 천원 각각 몇 장 주는지 그걸 출력하면 되는 프로그램인데
여기서 if ( 조건식 ) 안에 이 조건식을 만족하면 else 나 else if 로 가지않고 바로 if 문을 빠져 나오잖아?
그래서 if 문을 세개나 써야하나 싶어서.. 더 간단하게 줄이는 방법 없나?
교수님은 무조건 if - else 문을 사용하라 했던거같은데.. 흠
그래서 내 생각에 지금은 if 문 안에 else 하나가 들어가야될거같아 if 만 세 개 쓰면 식이 뭔가 맞긴한데 쓸데 없이 if 문을 많이 쓰는느낌?
답만 나오면 되는게 아니라 교수님이 좀 까다로워서..
내가한거
exc = giv - price; //거스름돈 = 손님이 준돈 - 상품 가격
if ( exc >= 10000 )
printf("만 원권:%d매\n", exc / 10000);
if ( ( exc % 10000 ) >= 5000 )
printf("오천 원권:1매\n");
if ( ( exc % 10000 ) <= 5000 )
printf("천 원권:%d매\n", ( exc % 10000 ) / 1000 );
return 0;
가독성을 높이지 못해 미안해.. ㅠㅠ 캡쳐라도 하는 노력 보여야되는데
내생각엔 exc가 16000원이면 만원 1장 오천원 1장밖에 출력이안될거같은댕??? - dc App
이프 뭐뭐 이프 뭐뭐 이런 게 아니라
이프 뭐뭐 엘스이프 뭐뭐 엘스 뭐뭐 이렇게 해봐라
다시 읽어보니까 시나모롤님이 한 말이 맞네.. 그냥 식을 내가 못세우는것도 있는데 if-else 문 하나에 저 세개를 담는 방법은 없는걸까?
119.202 맞아 그거를 원했어 그렇게 하고싶은거야 나도..
119.202 근데 그렇게 하려면 맨 처음 if 에서 참이 나오면 그 값을 출력해버리고 if - else 문 밖으로 아예 빠져나가 버리니까 만원권 밖에 출력이 안되더라고
거스름돈 안 남을때까지 while문 돌려버려 그냥 - dc App
그냥 if-else 써야되는거면 else에 뭐가 들어가야될지 상상이 잘 안가는데
가능한 경우의수를 모두 만들라는거고 캐노니컬로 정리해야겠네 if else만사용하라는 의도면. 그게아니먼 switch case쓸텐데