티스토리 안에 코드블럭이라는 기능을 오늘이 돼서야 알게 됐다.... 좀 더 일찍 알았더라면;;
처음 블로그를 해보는 거라 많이 미숙한 것 같다...ㅠㅠ
반복분 While
while(조건문)
{
}
반복문 중 하나인 while에 대해서 알아보자. 영어 그대로는 ~하는 동안의 뜻으로, 조건이 참인 동안 계속 반복한다.
하지만 조건이 거짓이 될 때 while을 빠져나와 반복이 종료가 된다.
만약 조건이 계속 참(true) 일 경우에는 무한루프가 되어버리니 주의하도록 하자.
번외로 비교연산자를 사용할 때, while( input != answer ) 과 while( !(input == answer) )는 'input과 answer 변수가
같지 않을 때'라는 같은 뜻이니 헷갈리지 않도록 하자.
논리연산자
저번에 배웠듯이 논리연산자 중, &&과 ||에 대해 알아보자.
&& (and) : 우리말로 그리고라는 뜻으로 and로도 표기하여 사용할 수 있다.
우선 논리연산자가 나타내는 결괏값은 bool과 같아 1(true), 0(false)밖에 없다.
그렇다면 어떻게 논리연산자가 결괏값을 나타낼까?
위 사진의 if문 안의 조건을 한번 보면 (5 > 3)은 참이므로 1이 되고, (3 > 7)은 거짓으로 0이 된다.
그러면 if( 1 && 0 )이 된다고 할 수 있다. 그런데 여기서 &&연산자는 양쪽 모두 참이어야 1의 값을 내보내는데,
하나가 0(false)이므로 최종 결과는 0(false)이 된다.
&&의 연산 방식은 이렇다.
true and true -> 1
true and flase -> 0
false and true -> 0
false and false -> 0
|| (or) : 우리말로 또는 이라는 뜻으로 or로도 표기하여 사용할 수 있다.
위의 사진을 보면 (5 > 3)은 1(true), (3 > 7)은 0(false)이므로, (1 || 0)이라 볼 수 있다.
하지만 여기서 &&(and)와 다르게 ||(or)은 둘 중 하나만 참이면 결괏값도 1(true)을 나타낸다.
||의 연산 방식은 이렇다.
true and true -> 1
true and flase -> 1
false and true -> 1
false and false -> 0
이렇게 증감연산자를 사용하면 더 세분화된 조건문을 만들 수 있게 된다.
증감연산자
증감연산자에는 전위증감연산자, 후위증감연산자가 있다. ++ 혹은 --를 사용하여 1씩 더하거나 빼는 역할을 한다.
그런데 여기서 중요한 것은 전위와 후위에 따라 연산되는 방식이 다른 것이다.
전위증감연산자( ++count / --count)
앞에 부호가 붙어있는 것을 말하는데, 이는 값이 먼저 변환되고 출력이 되는 순서이다.
int count = 5;
cout << --count << endl;
cout << count << endl;
위와 같이 사용하면 결괏값은 4 4가 나오게 된다.
후위증감연산자(count++ / count --)
뒤에 부호가 붙어있는 것을 말하며, 출력이 먼저 되고 그 뒤에 값이 변환되는 순서이다.
int count = 5;
cout << count++ << endl;
cout << count << endl;
따라서 결괏값은 5 6이 나오게 된다.
증감연산자는 반복문에서 좀 더 편리하게 사용할 수 있다.
'C++' 카테고리의 다른 글
C++ 배우기 6(이중for문, 스왑, 셔플) (0) | 2022.10.18 |
---|---|
C++ 배우기 5(랜덤함수, 배열, for문) (2) | 2022.10.18 |
C++ 배우기 3(비교 연산자, if문) (0) | 2022.10.12 |
C++ 배우기 2(자료형과 연산자) (0) | 2022.10.11 |
C++ 배우기 1(단축키와 Hello World!) (2) | 2022.10.08 |