불리언 자료형과 기본적인 and, or operator 에 대해서 알아보자.
#include <iostream>
int main()
{
using namespace std;
bool b1 = true; // copy initialization
bool b2(false); // direct initialization
bool b3{ true }; // uniform initialization
b3 = false;
cout << boolalpha;
cout << b1 << endl;
cout << b3 << endl;
return 0;
}
output : true
false
원래 output은 1 0 으로 나와야 하는데, 현재 console에 출력된 값을 보면 true
, false
가 출력된 것을 볼 수 있다. 이는 cout << boolalpha;
를 사용하여 보여줘서 이런식으로 나온 것이다. 사람에게는 1과 0으로 출력되는 것보단 문자로 출력되는 것이 더 빨리 인지할 수 있으므로 이런 방법이 있다는 것을 알면 된다.
#include <iostream>
int main()
{
using namespace std;
bool b1 = true; // copy initialization
bool b2(false); // direct initialization
bool b3{ true }; // uniform initialization
b3 = false;
cout << noboolalpha;
cout << (true && true) << endl;
cout << (true && false) << endl;
cout << (false && true) << endl;
cout << (false && false) << endl;
cout << endl;
cout << (true || true) << endl;
cout << (true || false) << endl;
cout << (false || true) << endl;
cout << (false || false) << endl;
return 0;
}
output : 1
0
0
0
1
1
1
0
and, or operator는 조금만 생각하면 쉽게 이해할 것이므로 자세한 설명은 하지 않겠다.
if를 사용하는 방법을 코드로 살펴보자.
int main()
{
using namespace std;
bool b1 = true; // copy initialization
bool b2(false); // direct initialization
bool b3{ true }; // uniform initialization
b3 = false;
if (false)
{
cout << "This is true" << endl;
cout << "next" << endl;
}
else
cout << "This is false" << endl;
return 0;
}
if도 그렇게 어려운 내용은 아닌데 조건을 사용하고 싶을때 사용한다. 한 조건에 여러개를 실행하고 싶으면 반드시 중괄호를 사용하여 묶어주는 것이 중요하다. 하나만 실행한다면 굳이 안써도 상관은 없지만, 무거운 프로그램을 돌린다면 거의 사용하게 된다.
Q. 정수 하나를 입력받고 그 숫자가 홀수인지 짝수인지 출력하는 프로그램을 만들어봅시다.
#include <iostream>
int main()
{
using namespace std;
int user_input(0);
cout << "정수를 입력해 주세요 " << endl;
cin >> user_input;
if (user_input % 2 == 0)
cout << "짝수 입니다." << endl;
else
cout << "홀수 입니다." << endl;
return 0;
}