728x90
반응형
문제
내가 작성한 코드 (C++ 성공)
#include <iostream>
using namespace std;
int main(){
char btn;
int mon = 5000;
while(true){
cin.get(btn);
if(btn=='\n') break;
if(btn=='1'){
mon -= 500;
} else if(btn=='2') {
mon -= 800;
} else if(btn=='3') {
mon -= 1000;
}
}
cout << mon;
return 0;
}
정리
이 문제를 출제한 이유는 아마 입력을 어떻게 제어할 것인지? 일 것 같다.
입력에 대한 제한이 없기 때문에 엔터를 치게되면 입력이 종료되고 출력이 되어야 한다.
문제는 조건문만 잘 사용할 줄 알면 풀 수 있는 문제였기 때문에 문제 없이 해결할 수 있었고
입력하는 부분에 있어서는 엔터가 입력되면 입력이 끝나도록 짰다.
입력하는 부분에 있어서 문자형 char형을 이용해서 줄바꿈이라는 '\n' 를 입력하게 되면 입력이 끝나게 된다.
그리고 입력하는 데 있어 보통 이렇게 사용한다.
cin >> 변수명;
하지만 그냥 cin 만 사용하게 되면 공백이나 개행문자를 구분할 수 없기 때문에 다음과 같이 사용해줘야 한다.
cin.get(변수명);
cin.get() 을 사용하게되면 공백이나 개행문자를 포함해서 입력받게 된다.
따라서 줄바꿈 문자를 포함해서 입력하기 때문에 줄바꿈 문자가 들어오는 것을 확인할 수 있다.
728x90
반응형
'알고리즘 > BaekJoon' 카테고리의 다른 글
[백준 알고리즘] 17288번 : 3개만! (0) | 2019.08.15 |
---|---|
[백준 알고리즘] 17285번 : XORChic (0) | 2019.08.15 |
[백준 알고리즘] 17283번 : I am Groot (0) | 2019.08.15 |
[백준 알고리즘] 8595번 : 히든 넘버 (0) | 2019.08.15 |
[백준 알고리즘] 1193번 : 분수찾기 (0) | 2019.08.15 |