보관함

JUNGOL 기초다지기 09 배열1

niamdank 2019. 11. 28. 21:03

프로그래밍에서 가장 기초적인 내용을 다루는 기초 다지기입니다.

이번 포스팅은 기초 다지기 중 아홉 번째인 배열1 문제를 풀어보도록 하겠습니다.

 

기초 내용인 만큼 다른 설명없이 문제와 코드만 간단하게 작성하도록 하겠습니다.


555 : 배열1 - 자가진단1

#include <iostream>

using namespace std;

int main(void)
{
	char arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}
	
	for (int i = 0; i < 10; ++i)
	{
		cout << arr[i];
	}
	cout << endl;
}

 

556 : 배열1 - 자가진단2

#include <iostream>

using namespace std;

int main(void)
{
	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

	for (int i = 0; i < 10; ++i)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

 

557 : 배열1 - 자가진단3

#include <iostream>

using namespace std;

int main(void)
{
	char arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	for (int i = 0, cnt = 0; cnt < 3; i += 3, ++cnt)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

 

558 : 배열1 - 자가진단4

#include <iostream>

using namespace std;

int main(void)
{
	int arr[100];

	int cnt = 0;
	for (int temp, i = 0; i < 100; ++i, ++cnt)
	{
		cin >> temp;
		if (temp == 0)
			break;

		arr[i] = temp;
	}

	for (int i = cnt - 1; i >= 0; --i)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

 

559 : 배열1 - 자가진단5

#include <iostream>

using namespace std;

int main(void)
{
	float arr[7]{ 0, 85.6, 79.5, 83.1, 80.0, 78.2, 75.0 };

	int var1, var2;

	cin >> var1 >> var2;

	float sum = arr[var1] + arr[var2];
	
	cout.setf(ios::fixed);
	cout.precision(1);

	cout << sum << endl;
}

 

560 : 배열1 - 자가진단6

#include <iostream>

using namespace std;

int main(void)
{
	int arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	int min = 1000;
	for (int i = 0; i < 10; ++i)
	{
		if (min > arr[i])
			min = arr[i];
	}

	cout << min << endl;
}

 

561 : 배열1 - 자가진단7

#include <iostream>

using namespace std;

bool IsInRange(int min, int max, int num);

int main(void)
{
	int arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	int min = 10000, max = 0;
	for (int i = 0; i < 10; ++i)
	{
		if (min > arr[i] && IsInRange(100, 9999, arr[i]))
			min = arr[i];

		if (max < arr[i] && IsInRange(1, 99, arr[i]))
			max = arr[i];
	}

	if (min == 10000)
		min = 100;

	if (max == 0)
		max = 100;

	cout << max << ' ' << min << endl;
}

bool IsInRange(int min, int max, int num)
{
	if (num < min) return false;
	if (num > max) return false;
	return true;
}

 

562 : 배열1 - 자가진단8

#include <iostream>

using namespace std;

int main(void)
{
	int arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	int evenSum = 0, oddSum = 0;
	for (int i = 0; i < 10; ++i)
	{
		if (i % 2 == 0)
			oddSum += arr[i];
		else
			evenSum += arr[i];
	}

	float oddAvg = oddSum / 5.f;

	cout.setf(ios::fixed);
	cout.precision(1);

	cout << "sum : " << evenSum << endl;
	cout << "avg : " << oddAvg << endl;
}

 

563 : 배열1 - 자가진단9

#include <iostream>

using namespace std;

void Swap(int& num1, int& num2);

int main(void)
{
	int arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	for (int i = 0; i < 10; ++i)
	{
		for (int j = i + 1; j < 10; ++j)
		{
			if (arr[i] < arr[j])
				Swap(arr[i], arr[j]);
		}
	}

	for (int i = 0; i < 10; ++i)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

void Swap(int& num1, int& num2)
{
	int temp = num1;
	num1 = num2;
	num2 = temp;
}

 

150 : 배열1 - 형성평가1

#include <iostream>

using namespace std;

int main(void)
{
	char arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	for (int i = 9; i >= 0; --i)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

 

151 : 배열1 - 형성평가2

#include <iostream>

using namespace std;

int main(void)
{
	int arr[5];

	for (int i = 0; i < 5; ++i)
	{
		cin >> arr[i];
	}

	int sum = 0;
	for (int i = 0; i < 5; i += 2)
	{
		sum += arr[i];
	}

	cout << sum << endl;
}

 

152 : 배열1 - 형성평가3

#include <iostream>

using namespace std;

int main(void)
{
	int arr[10];

	for (int i = 0; i < 10; ++i)
	{
		cin >> arr[i];
	}

	int oddSum = 0;
	for (int i = 0; i < 10; i += 2)
	{
		oddSum += arr[i];
	}
	cout << "odd : " << oddSum << endl;

	int evenSum = 0;
	for (int i = 1; i < 10; i += 2)
	{
		evenSum += arr[i];
	}
	cout << "even : " << evenSum << endl;
}

 

153 : 배열1 - 형성평가4

#include <iostream>

using namespace std;

int GetCollectNum(int num);

int main(void)
{
	int arr[100];

	int count = 0;
	for (int i = 0; i < 100; ++i, ++count)
	{
		cin >> arr[i];
		if (arr[i] == -1)
			break;
	}

	for (int i = GetCollectNum(count - 3); i < count; ++i)
	{
		cout << arr[i] << ' ';
	}
	cout << endl;
}

int GetCollectNum(int num)
{
	if (num <= 0) return 0;
	return num;
}

 

154 : 배열1 - 형성평가5

#include <iostream>

using namespace std;

int main(void)
{
	float arr[6];

	for (int i = 0; i < 6; ++i)
	{
		cin >> arr[i];
	}

	float sum = 0;
	for(int i=0; i<6; ++i)
	{
		sum += arr[i];
	}

	float avg = sum / 6.f;

	cout.setf(ios::fixed);
	cout.precision(1);

	cout << avg << endl;
}

 

155 : 배열1 - 형성평가6

#include <iostream>

using namespace std;

int main(void)
{
	char arr[6] = { 'J', 'U', 'N', 'G', 'O', 'L' };

	char var;
	cin >> var;

	int idx = -1;
	for (int i = 0; i < 6; ++i)
	{
		if (var == arr[i])
		{
			idx = i;
			break;
		}
	}

	if (idx != -1)
		cout << idx << endl;
	else
		cout << "none" << endl;
}

 

156 : 배열1 - 형성평가7

#include <iostream>

using namespace std;

int main(void)
{
	int arr[100];

	int count = 0;
	for (int i = 0; i < 100; ++i, ++count)
	{
		cin >> arr[i];
		if (arr[i] == 999)
			break;
	}

	int min = 1000, max = -1000;
	for (int i = 0; i < count; ++i)
	{
		if (min > arr[i])
			min = arr[i];
		if (max < arr[i])
			max = arr[i];
	}

	cout << "max : " << max << endl;
	cout << "min : " << min << endl;
}

 

157 : 배열1 - 형성평가8

#include <iostream>

using namespace std;

int main(void)
{
	int arr[100];

	int count = 0;
	for (int i = 0; i < 100; ++i, ++count)
	{
		cin >> arr[i];
		if (arr[i] == 0)
			break;
	}

	int countMul5 = 0;
	int sum = 0;
	for (int i = 0; i < count; ++i)
	{
		if (arr[i] % 5 == 0)
		{
			countMul5++;
			sum += arr[i];
		}
	}

	float avg = static_cast<float>(sum) / countMul5;

	cout.setf(ios::fixed);
	cout.precision(1);

	cout << "Multiples of 5 : " << countMul5 << endl;
	cout << "sum : " << sum << endl;
	cout << "avg : " << avg << endl;
}

 

158 : 배열1 - 형성평가9

#include <iostream>

using namespace std;

int main(void)
{
	int arr[100];

	int count = 0;
	for (int i = 0; i < 100; ++i, ++count)
	{
		cin >> arr[i];
		if (arr[i] == 0)
			break;
	}

	cout << count << endl;
	for (int i = 0; i < count; ++i)
	{
		if (arr[i] % 2 == 0)
			cout << arr[i] / 2 << ' ';
		else
			cout << arr[i] * 2 << ' ';
	}
	cout << endl;
}

 

159 : 배열1 - 형성평가A

#include <iostream>

using namespace std;

void Swap(int& a, int& b);

int main(void)
{
	int arr[20];

	int n;
	cin >> n;

	for (int i = 0; i < n; ++i)
	{
		cin >> arr[i];
	}

	for (int i = 0; i < n; ++i)
	{
		int max = i;
		for (int j = i + 1; j < n; ++j)
		{
			if (arr[max] < arr[j])
				max = j;
		}
		Swap(arr[i], arr[max]);
		cout << arr[i] << endl;
	}
}

void Swap(int& a, int& b)
{
	int temp = a;
	a = b;
	b = temp;
}

 

http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&sca=1090

 

JUNGOL | 문제은행 1 페이지

 

www.jungol.co.kr