반응형
안녕하세요?
코딩을 하다보면
int = 123456;
과 같이 할당하는 경우가 생기고
그중에서 1234만을 가져와야 하는 상황이 생기기도 합니다.
예를 들면
20201024 같이 날짜를 나타내는 숫자에서
년도만을 가져오고 싶은 상황인 거죠.
별도의 라이브러리를 include하지 않고도 하려면
% 를 잘 활용해주면 됩니다.
다음과 같이 코드를 짜보겠습니다.
int main() {
int date = 20201024;
cout << "%100 :" << date % 100 << endl;
cout << "%10000:" << date % 10000 << endl;
cout << "%1000000:" << date % 1000000 << endl;
return 0;
}
위 코드에서 값 % 숫자 는
값을 숫자로 나눴을 때 나머지 입니다.
10의 배수를 통해
1의 자리 10의 자리.... 쭉쭉 찾을 수 있는거죠.
위 코드에서 %10000일때는 숫자 천의 자리가 나머지로 나오니 1024가 나머지로 나오게 됩니다.
그러면 date에서 1024를 때면 20200000 일테고
소수점을 곱해 2020 으로 만들면 되겠습니다.
코드는 다음과 같습니다.
int main() {
int date = 20201024;
int date_after = date - date % 1000;
cout << date_after << endl << endl;
date_after = date_after * 0.0001;
cout << date_after << endl << endl;
return 0;
}
실행도 잘 되는 것을 확인할 수 있었습니다.
string의 경우 substr이 있어 쉽지만
int의 경우 별도의 라이브러리가 없으면 다소 복잡한 감이
없지 않아 있는것 같아요.
도움되셨으면 좋겠습니다.
감사합니다.
반응형
'[C++] > 공부, 정리' 카테고리의 다른 글
[C++]모호한 기호입니다. ~ 쓰기용으로 열 수 없습니다. (0) | 2023.08.31 |
---|---|
[C++언어]정리②:입력과 조건부 연산자 (0) | 2020.09.30 |
[C++언어]정리①:변수와 출력 (0) | 2020.09.15 |
[C++언어]정리 : 시작 (0) | 2020.09.14 |