나 개발자 진짜 되냐?

바킹독 0x02 문제6 - 시험성적 / 백준 - 9498번 본문

C++을 시작해봐요!/알고리즘을 공부해봐요!

바킹독 0x02 문제6 - 시험성적 / 백준 - 9498번

Snow Rabbit 2025. 6. 9. 21:26

 

시험성적..

내 학창 시절 때에 이런 시험성적이 숨이 턱턱 막혀왔는데

 

지금은 그거보다 더 한 것들이 기다리고 있다는 사실에

나는 참 그때가 좋았을지도 모른다는 생각이 들곤 한다.

 


 

 

 

 

사실 이 문제는

정말 뭐 기본 중에 기본이다.

 

switch문 쓰면 됐던 기억이 난다.

뭐 while문도 괜찮긴 한데

많아지면 많아질수록 조건이 더 많아져서

switch문이 더 좋다 했던 기억이 난다.

 

 

 

쉽다 했다던 사람 어디 감?????

이 switch문이 왜 틀렸는지 전혀 모르는 중.....

ㅋㅋㅋㅋㅋ

기본 중에 기본이라매!!!!!

 

결국 다시 switch문을 공부하기로 했다..ㅎㅎㅋ

 

 

 

 

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

지 선생은 말도 안 되는 문법이라고 날 혼냈다..

 

그리고 좋은 방향으로..

switch문이 아니라.. if else문을 쓰라고 알려주었다.....

 

아차차....

위에 썼던 내 글을 지우고 싶어 졌다.

 

굳이 switch문을 쓰고 싶다면.. 10을 나누어서 몫으로 쓰면 좋다고 알려주었다.

 

이렇게!

 

그리고 스위치 문 말고 if문으로 쓰는 것은 뭐 

아까 식 그대로 써서 if 어쩌고는

else if 어쩌고는 쓰고 else 이렇게 마무리 지으면 될 거 같다.

 

 

안 쓰고 싶었지만.. 그래도 쓴다.

 

혹시 몰라서 이거 테스트해 봤는데.. 안되더라..

왤까.. 하며 열심히 찾아보았다.

 

수학에서는 맞는 표현이지만.. 컴퓨터는 이걸 다르게 해석한다고 한다.

왼쪽부터 차례대로 계산을 해서 

90 <= socre로 계산하면

참 / 거짓으로 나오는데

 

그 값을 다시 100이랑 계산하면

0 or 1 <= 100 이여서

무조건 참이 된다는 뜻이 된다.

그래서 이건 score가 무슨 값이어도 무조건 참이 나와서 A만 나온다.... 고 한다.

 

그러면 어떻게 해야 하냐!

 

score >= 90 && score <= 100

이렇게 써주어야 한다.

 

더 쉽게 쓰는 방법은 그냥 앞에 거만 써도 된다고 한다.

왜냐면 이렇게 해 주면 89는 위의 식에 맞지 않으니 자동으로 밑 식으로 가기 때문!!

 

 

100점까지가 최대기 때문에!!!!!!

100 이상 나와도 A가 나오는 건 이상하기 때문에 이렇게 식을 썼다.

 

두 가지 방법 둘 다 가능하다고 한다.

 

잘 푼 줄 알았는데.. 절대로 이런 식은 안된다는 점을 알았다.

다음부터는 머리를 조금 더 굴려서 수학식을 계산해야겠다.