JUNGOL...11
Language_Code/선택제어문/자가진단1
문제
정수를 입력받아 첫 줄에 입력 받은 숫자를 출력하고 둘째 줄에 음수이면 “minus” 라고 출력하는 프로그램을 작성하시오.
입력 예
-5 │ 5
출력 예
-5 │ 5
minus │
BasicConditional01.h
#include <iostream>
BasicConditional01.cpp
void BasicConditional01::Code()
{
int var;
std::cin >> var;
std::cout << var << '\n';
if (var < 0)
{
std::cout << "minus";
}
}
Language_Code/선택제어문/자가진단2
문제
“몸무게+100-키”를 비만수치 공식이라고 하자.
키와 몸무게를 자연수로 입력받아 첫 번째 줄에 비만수치를 출력하고, 비만수치가 0보다 크면 다음줄에 비만("Obesity")이라는 메시지를 출력하는 프로그램을 작성하시오. (출력형식은 아래 출력 예를 참고하세요.)
입력 예
155 60
출력 예
5
Obesity
BasicConditional02.h
#include <iostream>
BasicConditional02.cpp
void BasicConditional02::Code()
{
int height, weight;
std::cin >> height >> weight;
int obesityScore{ weight + 100 - height };
std::cout << obesityScore << '\n';
if (obesityScore > 0)
{
std::cout << "Obesity";
}
}
Language_Code/선택제어문/자가진단3
문제
나이를 입력받아 20살 이상이면 "adult"라고 출력하고 그렇지 않으면 몇 년후에 성인이 되는지를 "○ years later"라는 메시지를 출력하는 프로그램을 작성하시오.
입력 예
18
출력 예
2 years later
BasicConditional03.h
#include <iostream>
BasicConditional03.cpp
void BasicConditional03::Code()
{
int age;
std::cin >> age;
if (age >= 20)
{
std::cout << "adult";
}
else
{
int leftYears{ 20 - age };
std::cout << leftYears << " years later";
}
}
Language_Code/선택제어문/자가진단4
문제
복싱체급은 몸무게가
50.80kg 이하를 Flyweight,
61.23kg 이하를 Lightweight,
72.57kg 이하를 Middleweight,
88.45kg 이하를 Cruiserweight,
88.45kg 초과를 Heavyweight
라고 하자.
몸무게를 입력받아 체급을 출력하는 프로그램을 작성하시오.
입력 예
87.3
출력 예
Cruiserweight
BasicConditional04.h
#include <iostream>
BasicConditional04.cpp
void BasicConditional04::Code()
{
float weight;
std::cin >> weight;
if (weight <= 50.80f)
{
std::cout << "Flyweight";
}
else if (weight <= 61.23f)
{
std::cout << "Lightweight";
}
else if (weight <= 72.57f)
{
std::cout << "Middleweight";
}
else if (weight <= 88.45f)
{
std::cout << "Cruiserweight";
}
else
{
std::cout << "Heavyweight";
}
}
Language_Code/선택제어문/자가진단5
문제
두 개의 실수를 입력받아 모두 4.0 이상이면 "A", 모두 3.0 이상이면 "B", 아니면 "C" 라고 출력하는 프로그램을 작성하시오.
입력 예
4.3 3.5 │ 4.0 2.9
출력 예
B │ C
BasicConditional05.h
#include <iostream>
BasicConditional05.cpp
void BasicConditional05::Code()
{
float var1, var2;
std::cin >> var1 >> var2;
if (var1 >= 4.0f && var2 >= 4.0f)
{
std::cout << 'A';
}
else if (var1 >= 3.0f && var2 >= 3.0f)
{
std::cout << 'B';
}
else
{
std::cout << 'C';
}
}
Language_Code/선택제어문/자가진단6
문제
남자는 'M' 여자는 'F'로 나타내기로 하고 18세 이상을 성인이라고 하자.
성별('M', 'F')과 나이를 입력받아 "MAN"(성인남자), "WOMAN"(성인여자), "BOY"(미성년남자), "GIRL"(미성년여자)을 구분하여 출력하는 프로그램을 작성하시오.
입력 예
F 15
출력 예
GIRL
BasicConditional06.h
#include <iostream>
BasicConditional06.cpp
void BasicConditional06::Code()
{
char sex;
int age;
std::cin >> sex >> age;
bool isAdult{ (age >= 18) };
if (sex == 'M')
{
if (isAdult)
{
std::cout << "MAN";
}
else
{
std::cout << "BOY";
}
}
else
{
if (isAdult)
{
std::cout << "WOMAN";
}
else
{
std::cout << "GIRL";
}
}
}
Language_Code/선택제어문/자가진단7
문제
영문 대문자를 입력받아
'A'이면 “Excellent”,
'B'이면 “Good”,
'C'이면 “Usually”,
'D'이면 “Effort”,
'F'이면 “Failure”,
그 외 문자이면 “error” 라고 출력하는 프로그램을 작성하시오.
입력 예
B
출력 예
Good
Hint!
Python의 경우 문자열 입력시 앞뒤에 공백이 포함될 경우가 있는데 strip() 함수를 사용하여 문제를 해결할 수 있다.
예) str = input().strip()
BasicConditional07.h
#include <iostream>
BasicConditional07.cpp
void BasicConditional07::Code()
{
char ch;
std::cin >> ch;
switch (ch)
{
case 'A':
std::cout << "Excellent";
break;
case 'B':
std::cout << "Good";
break;
case 'C':
std::cout << "Usually";
break;
case 'D':
std::cout << "Effort";
break;
case 'F':
std::cout << "Failure";
break;
default:
std::cout << "error";
break;
}
}
Language_Code/선택제어문/자가진단8
문제
4.5 이하의 평점을 입력받아 그 값에 따라 다음과 같이 출력하는 프로그램을 작성하시오.
(C, C++, Java는 switch ~ case문 사용) (Python은 if ~ else사용)
단 입력는 0이상 4.5 이하이다.
4.0 이상 : "scholarship"
3.0 이상 : "next semester"
2.0 이상 : "seasonal semester"
2.0 미만 : "retake"
>> 실수를 정수형(int)으로 변환하여 분기한다. (예 - switch( (int)score ))
입력 예
3.5
출력 예
next semester
BasicConditional08.h
#include <iostream>
BasicConditional08.cpp
void BasicConditional08::Code()
{
int score;
std::cin >> score;
switch (score)
{
case 4:
std::cout << "scholarship";
break;
case 3:
std::cout << "next semester";
break;
case 2:
std::cout << "seasonal semester";
break;
default:
std::cout << "retake";
break;
}
}
Language_Code/선택제어문/자가진단9
문제
3개의 정수를 입력받아 조건연산자를 이용하여 입력받은 수들 중 최소값을 출력하는 프로그램을 작성하시오.
입력 예
18 -5 10
출력 예
-5
Hint!
두 수중 먼저 작은 값을 구한 후 나머지 수와 비교하여 구하면 된다.
예)
min = (a < b) ? a : b;
min = (min < c) ? min : c;
또는 아래 예와 같이 조건 연산자를 중첩하여 한 번에 구하는 방법도 있지만 식이 너무 복잡해지므로 참고는 하되 프로그램 작성할 때에는 가능한 쉬운 방법으로 작성할 것을 권장한다.
예)
(a < b) ? ((a < c) ? a : c) : ((b < c) ? b : c);
또는
(a < b && a < c) ? a : (b < c) ? b : c;
BasicConditional09.h
#include <iostream>
BasicConditional09.cpp
void BasicConditional09::Code()
{
int var1, var2, var3;
std::cin >> var1 >> var2 >> var3;
int minimum{ (var1 < var2 ? (var1 < var3 ? var1 : var3) : (var2 < var3 ? var2 : var3)) };
std::cout << minimum;
}
NadanKim/CodingTest_JUNGOL: JUNGOL 코딩 테스트를 위한 저장소 (github.com)
NadanKim/CodingTest_JUNGOL
JUNGOL 코딩 테스트를 위한 저장소. Contribute to NadanKim/CodingTest_JUNGOL development by creating an account on GitHub.
github.com