중첩 조건문_220702
들여쓰기(indent)를 이용하여, 내부 if문 블록이 바깥 if문 블록 안에 있음을 나타낼 수 있다. 들여쓰기는 보통 공백 4칸(tab)으로 한다.
- a가 홀수라면 숫자 a가 10 이상이면 A,
그렇지 않다면 B를 출력합니다.
- a가 짝수라면 숫자 a가 15 이상이면 C,
그렇지 않다면 D를 출력합니다.
if (a % 2 == 1) {
if (a >= 10) {
cout << "A" << endl;
}
else {
cout << "B" << endl;
}
}
else {
if (a >= 15) {
cout << "C" << endl;
}
else {
cout << "D" << endl;
}
}
남녀노소 구분짓기
성별에 대해 남자는 숫자 0, 여자는 숫자 1로 나타내기로 하고, 19세 이상을 성인이라고 합시다.
성별(숫자 0 또는 1)과 나이를 입력받아 MAN
(성인남자), WOMAN
(성인여자), BOY
(미성년남자), GIRL
(미성년여자)을 구분하여 출력하는 프로그램을 작성해주세요.
#include<iostream>
using namespace std;
int main(){
int jen, old;
cin >> jen >> old;
if(jen == 0){
if(old > 18) cout << "MAN";
else cout << "BOY";
}
else{
if(old > 18) cout << "WOMAN";
else cout << "GIRL";
}
return 0;
}
오타조심
조건을 최대한 잘 묶기
if (a % 2 == 1) {
if (a >= 10) {
cout << "A" << endl;
}
else {
cout << "B" << endl;
}
}
else {
if (a >= 15) {
cout << "A" << endl;
}
else {
cout << "B" << endl;
}
}
A가 출력되어야 하는 조건을 하나로 묶으면, 코드를 간결하게 작성할 수 있다.
if ((a % 2 == 1 && a >= 10) || (a % 2 == 0 && a >= 15)) {
cout << "A" << endl;
}
else {
cout << "B" << endl;
}
윤년인가
자연수 y를 입력받아 y년이 윤년인지를 판단하는 프로그램을 작성해보세요. 윤년일 조건은 다음과 같습니다.
4의 배수라면 윤년입니다.
4의 배수이면서 100의 배수라면 윤년이 아닙니다.
4의 배수이면서 100의 배수지만 또한 400의 배수라면 윤년입니다.
나머지 경우에는 윤년이 아닙니다.
#include<iostream>
using namespace std;
int main(){
int y;
cin >> y;
if(y%4==0 && (y%100!=0 || y%400==0)) cout<<"true";
else cout<<"false";
return 0;
}
일 수 구하기
윤년이 아닌 해에 n월에는 몇 일이 있는지를 출력하는 프로그램을 작성하세요. 윤년이 아닌 해의 2월은 28일까지 있습니다.
#include<iostream>
using namespace std;
int main(){
int y;
cin >> y;
if(y==2) cout << 28;
else if(y < 8 && y % 2 == 1 || y >= 8 && y % 2 ==0) cout<< 31;
else cout<<30;
return 0;
}
최댓값 구하기
3개의 정수 a, b, c를 입력받았을 때, 최댓값을 출력하는 프로그램을 작성해보세요.
#include<iostream>
using namespace std;
int main(){
int a, b, c, tmp;
cin >> a >> b >> c;
tmp = a > b ? a : b;
cout << (tmp > c ? tmp : c);
return 0;
}
코로나 메뉴얼
감기 증상이 있으면 Y
, 감기 증상이 없으면 N
으로 나타내기로 하고, 체온을 쟀을 때 수치에 따라 진료소를 다르게 구분하려고 합니다.
증상도 있고 37℃ 이상일 때 A
증상은 없지만 37℃ 이상일 때 B
증상은 있지만 체온은 정상일 때 C
둘 다 괜찮은 경우엔 D
한 번에 3명씩 검사하는데 A
로 가는 사람이 2명 이상 나올때는 위급상황으로 분류합니다. 위급상황인지를 판단하는 프로그램을 작성해보세요.
#include<iostream>
using namespace std;
int main(){
int t1,t2,t3;
char e1,e2,e3;
cin >> e1 >> t1 >> e2 >> t2 >> e3 >> t3;
if(e1 == 'Y' && t1 >= 37){
if(e2 == 'Y'&& t2 >= 37 || e3 == 'Y' && t3 >= 37) cout<<'E';
else cout << 'N';
}
else{
if(e2 == 'Y'&& t2 >= 37 && e3 == 'Y' && t3 >= 37) cout<<'E';
else cout << 'N';
}
return 0;
}
중앙값 구하기
3개의 정수 a, b, c를 입력받았을 때, 중앙값을 구하는 프로그램을 작성해보세요.
중앙값이란, 오름차순으로 나열했을 때 중앙에 오는 값입니다.
#include<iostream>
using namespace std;
int main(){
int a, b, c;
cin >> a >> b >> c;
if(a>b){
if(b>c) cout << b;
else if(a>c) cout << c;
else cout << a;
}
else{//b>a
if(a>c) cout << a;
else if(b>c) cout << c;//c>a
else cout << b;
}
return 0;
}