CS/C++

C++ 공부 섹션5 : 홍정모의 따배씨쁠쁠

샤아이인 2022. 1. 16.

내돈내고 내가 공부한것을 올리며, 시간을 들여 배운과정을 복습하기보다는 간결히 공부한 흔적은 남긴다 하고 생각하고 써갈 예정입니다. 모든 내용을 이곳에 올릴수는 없으며, 그중 기억남은 몇가지 내용 위주만 올리겠다.

1) 섹션5

​◆ 어찌보면 코딩의 핵심이라 할 수 있는 단원이다. 이러한 흐름은 C에서부터 줄곳 공부해왔기에 큰 어려움이 없었다.

​◆ do while문을 간만에 공부하게 되었다.

출처 - 홍정모의 따배씨쁠쁠 강의

사실 이전에 C를 공부하면서 이러한 것이 있다는 것은 알았지만 do_while문을 사용해본적은 아직 없다.

크게 아직 필요한 순간이 없었던것 같다. 기존의 while문과는 달리 우선 한번은 실행한후 while문을 도는 방식이다.

 

​◆ for문에서 맨앞칸을 비워도 된다는 사실에 충격을 먹었었다.

출처 - 홍정모의 따배씨쁠쁠 강의

아니 돌이켜 생각해 보면 이거 예전에 C언어를 공부할때도 본적은 있었던것 같다(아마?).

하지만 코딩하면서 이런식으로 코드를 짜본적이 아직은 없기에 생소한 개념이기에 캡쳐해 두었다.

for문의 조건식 안에서 첫 초기화 부분과, 두번째 조건부분을 둘다 비울수도 있다.

for(; ; ++count) 처럼 말이다. 이렇게 두면 무한 loop에 빠질 것 이다.

 

​◆ 조금은 독특했던 난수 생성방식

출처 - 홍정모의 따배씨쁠쁠 강의

이전까지 C에서는 seed로 시간은 주어서 난수를 생성하는 방식을 공부했었는대, C++ 에서는 아예 난수 라이브러리가 있어 이를 활용하는 법을 배웠다.

1) 우선 seed로 사용할 rd를 생성한다.

2) 생성한 rd를 이용하여 mersenne함수 식에 대입하여 숫자를 twist한다.

3) 이후 uniform_int_distribution<> 을 사용하여 각각 뽑힐 확률이 동일하게 하여 출력한다.

 

​◆ 또한 cin을 조금더 활용하는 법을 배우게 되었다.

출처 - 홍정모의 따배씨쁠쁠 강의

cin.fail : cin 오류시 1(TRUE)을 반환하고 아니면 0을 반환한다.

cin.clear : cin 객체의 상태flag 값을 초기화 하여 다시 cin이 정상작동 하도록 한다.

cin.ignore : 입력 버퍼에 있는 내용을 정한만큼 버린다.

 

2) 나의 현황

​◆ 오늘은 이론도 너무 쉬워서 훅훅 보고 금방 지나갔다. 알고리즘 관련으로 어떻게 입문해야 할지 고민이라 여러 글들을 읽어보고 있다. 대략적인 갈피의 방향은 잡은것 같으며 빠르게 C++문법을 익힌후 공부해 나가야 겠다.

이글의 모든 사진과 내용의 출처는 홍정모 교수님께 있습니다.

홍정모 교수님 블로그:

 

홍정모 연구소 : 네이버 블로그

안녕하세요! 홍정모 블로그에 오신 것을 환영합니다. 주로 프로그래밍 관련 메모 용도로 사용합니다. 강의 수강하시는 분들은 홍정모 연구소 카페로 오세요.

blog.naver.com

 

 

댓글