일지

JUNGOL...23

niamdank 2020. 11. 19. 21:26

Language_Code/함수1/자가진단1


문제                                            

문자열 "~!@#$^&*()_+|" 를 출력하는 함수를 작성하고 정수를 입력받아 입력받은 수만큼 함수를 호출하는 프로그램을 작성하시오.

                                  

* 주의 : 문자열을 잘 확인하세요. 

* 문자열을 복사해서 출력해도 됩니다.

 

입력 예                                        

3

 

출력 예                                        

~!@#$^&*()_+|

~!@#$^&*()_+|

~!@#$^&*()_+|

 

Hint!

함수 개념


BasicFunction101.h

#include <iostream>

class BasicFunction101 : public Base
{
private:
	void Function();
};

 

BasicFunction101.cpp

void BasicFunction101::Code()
{
	int var;

	std::cin >> var;

	for (int i = 0; i < var; i++)
	{
		Function();
	}
}

void BasicFunction101::Function()
{
	std::cout << "~!@#$^&*()_+|\n";
}

 

Language_Code/함수1/자가진단2


문제                                            

반지름의 길이를 전달받아 넓이를 출력하는 함수를 작성하고 반지름의 길이를 입력받아 함수를 호출하여 넓이를 출력하는 프로그램을 작성하시오.
단, 원주율(π)은 3.14로 하고 반올림하여 소수 둘째자리까지 출력한다. 

 

원의 넓이 = 반지름(r) * 반지름(r)​ * 원주율(π)​이다.

 

입력 예                                        

10

 

출력 예                                        

314.00


BasicFunction102.h

#include <iostream>

class BasicFunction102 : public Base
{
private:
	void Function(int radius);
};

 

BasicFunction102.cpp

void BasicFunction102::Code()
{
	int radius;

	std::cin >> radius;

	Function(radius);
}

void BasicFunction102::Function(int radius)
{
	const float PI{ 3.14f };

	float area{ radius * radius * PI };

	std::cout.precision(2);
	std::cout.setf(std::ios::fixed);

	std::cout << area;
}

 

Language_Code/함수1/자가진단3


문제                                            

100 미만의 정수만 입력된다. 정수 n을 입력받아 n x n 크기의 숫자사각형을 출력하는 프로그램을 작성하시오.

 

이때 정수 n을 전달받아 숫자 정사각형을 출력하는 함수를 작성하고, 입력받은 정수 n을 함수로 전달하여 출력한다.

 

입력 예                                        

4

 

출력 예                                        

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16


BasicFunction103.h

#include <iostream>

class BasicFunction103 : public Base
{
private:
	void Function(int n);
};

 

BasicFunction103.cpp

void BasicFunction103::Code()
{
	int n;

	std::cin >> n;

	Function(n);
}

void BasicFunction103::Function(int n)
{
	int num{ 1 };

	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < n; j++)
		{
			std::cout << num++ << ' ';
		}
		std::cout << '\n';
	}
}

 

Language_Code/함수1/자가진단4


문제                                            

세 개의 정수를 전달받아 최대값을 구하여 리턴하는 함수를 작성하고,

세 정수를 입력받아 최대값을 출력하는 프로그램을 작성하시오.

 

입력 예                                        

-10 115 33

 

출력 예                                        

115


BasicFunction104.h

#include <iostream>

class BasicFunction103 : public Base
{
private:
	void Function(int var1, int var2, int var3);
};

 

BasicFunction104.cpp

void BasicFunction104::Code()
{
	int var1, var2, var3;

	std::cin >> var1 >> var2 >> var3;

	Function(var1, var2, var3);
}

void BasicFunction104::Function(int var1, int var2, int var3)
{
	int maximum{ (var1 > var2 ? (var1 > var3 ? var1 : var3) : (var2 > var3 ? var2 : var3)) };

	std::cout << maximum;
}

 

Language_Code/함수1/자가진단5


문제                                            

10 이하의 두 정수가 주어진다.

이를 입력 받아서 첫 번째 수를 두 번째 수만큼 거듭제곱하여 나온 값을 리턴하는 함수를 작성하여 

다음과 같이 출력하는 프로그램을 작성하시오.

 

입력 예                                        

2 10

 

출력 예                                        

1024


BasicFunction105.h

#include <iostream>

class BasicFunction103 : public Base
{
private:
	void Function(int var1, int var2);
};

 

BasicFunction105.cpp

void BasicFunction105::Code()
{
	int var1, var2;

	std::cin >> var1 >> var2;

	Function(var1, var2);
}

void BasicFunction105::Function(int var1, int var2)
{
	int result{ 1 };

	for (int i = 0; i < var2; i++)
	{
		result *= var1;
	}

	std::cout << result;
}

 

Language_Code/함수1/자가진단6


문제                                            

정수의 연산식을 입력받아 연산을 위한 함수를 호출하여

4칙연산(+ - * /)의 연산결과를 출력하는 프로그램을 작성하시오.

('/'의 경우는 정수 부분만 출력하고 4칙연산 이외의 연산 결과는 0으로 한다.)
( if_else 문으로 작성하세요.)

 

입력 예                                        

10 + 20

 

출력 예                                        

10 + 20 = 30


BasicFunction106.h

#include <iostream>

class BasicFunction103 : public Base
{
private:
	void Function(int var1, char ch, int var2);
};

 

BasicFunction106.cpp

void BasicFunction106::Code()
{
	int var1, var2;
	char ch;

	std::cin >> var1 >> ch >> var2;

	Function(var1, ch, var2);
}

void BasicFunction106::Function(int var1, char ch, int var2)
{
	std::cout << var1 << ' ' << ch << ' ' << var2 << " = ";

	if (ch == '+')
	{
		std::cout << var1 + var2;
	}
	else if (ch == '-')
	{
		std::cout << var1 - var2;
	}
	else if (ch == '*')
	{
		std::cout << var1 * var2;
	}
	else if (ch == '/')
	{
		std::cout << static_cast<int>(var1 / var2);
	}
	else
	{
		std::cout << 0;
	}
}

 

Language_Code/함수1/자가진단7


문제                                            

서로 다른 두 개의 정수가 주어진다.

두 정수를 입력받아 큰 수는 2로 나눈 몫을 저장하고 작은 수는 2를 곱하여 저장한 후 출력하는 프로그램을 작성하시오.

(참조에 의한 호출을 이용한 함수를 작성하여 값을 수정하고 출력은 메인함수에서 한다.)

 

입력 예                                        

100 500

 

출력 예                                        

200 250


BasicFunction107.h

#include <iostream>

class BasicFunction103 : public Base
{
private:
	void Function(int& var1, int& var2);
};

 

BasicFunction107.cpp

void BasicFunction107::Code()
{
	int var1, var2;

	std::cin >> var1 >> var2;

	Function(var1, var2);

	std::cout << var1 << ' ' << var2;
}

void BasicFunction107::Function(int& var1, int& var2)
{
	if (var1 < var2)
	{
		var1 *= 2;
		var2 /= 2;
	}
	else
	{
		var1 /= 2;
		var2 *= 2;
	}
}

 

Language_Code/함수1/자가진단8


문제                                            

10 이하의 두 개의 양의 정수를 입력받아서 작은 수부터 큰 수까지의 구구단을 차례대로 출력하는 프로그램을 구조화하여 작성하시오.

 

입력 예                                        

3 5

 

출력 예                                        

== 3dan ==

3 * 1 = 3

3 * 2 = 6

3 * 3 = 9

3 * 4 = 12

3 * 5 = 15

3 * 6 = 18

3 * 7 = 21

3 * 8 = 24

3 * 9 = 27

== 4dan ==

4 * 1 = 4

4 * 2 = 8

4 * 3 = 12

5 * 8 = 40

5 * 9 = 45


BasicFunction108.h

#include <iostream>
#include <iomanip>

class BasicFunction103 : public Base
{
private:
	void Function(int var1, int var2);
};

 

BasicFunction108.cpp

void BasicFunction108::Code()
{
	int var1, var2;

	std::cin >> var1 >> var2;

	Function(var1, var2);
}

void BasicFunction108::Function(int var1, int var2)
{
	int small{ var1 < var2 ? var1 : var2 };
	int big{ var1 < var2 ? var2 : var1 };

	for (int i = small; i <= big; i++)
	{
		std::cout << "== " << i << "dan ==\n";

		for (int j = 1; j <= 9; j++)
		{
			std::cout << i << " * " << j << " = " << std::setw(2) << i * j << '\n';
		}
		std::cout << '\n';
	}
}

 

NadanKim/CodingTest_JUNGOL: JUNGOL 코딩 테스트를 위한 저장소 (github.com)

 

NadanKim/CodingTest_JUNGOL

JUNGOL 코딩 테스트를 위한 저장소. Contribute to NadanKim/CodingTest_JUNGOL development by creating an account on GitHub.

github.com