백준 2587 c++

magicdrill·2024년 3월 11일
0

백준 문제풀이

목록 보기
131/654

백준 2587 c++

#include <iostream>

using namespace std;

int input(int lower, int upper);
void int_array_input(int* array, int size);
void insertion_sort(int* array, int size);
int array_average(int *array, int size);
int array_middle_value(int* array, int size);

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

	int_array_input(arr, 5);
	insertion_sort(arr, 5);
	cout << array_average(arr, 5) << endl;
	cout << array_middle_value(arr, 5) << endl;

	return 0;
}

int input(int lower, int upper)
{
	int A;

	while (1)
	{
		cin >> A;
		if (A >= lower && A <= upper)
		{
			break;
		}
		else
		{
			;
		}
	}

	return A;
}

void int_array_input(int* array, int size)
{
	int i;

	for (i = 0; i < size; i++)
	{
		array[i] = input(0, 100);
		//조건 추가
		if (array[i] % 10 != 0)
		{
			i--;
		}
		else
		{
			;
		}
	}

	return;
}

void insertion_sort(int *array, int size)
{
	int i, j;
	int key, temp;

	for (i = 1; i < size; i++)
	{
		key = array[i];
		for (j = i - 1; j >= 0; j--)
		{
			if (key < array[j])
			{
				temp = array[j];
				array[j] = key;
				array[j + 1] = temp;
			}
			else
			{
				;
			}
		}
	}

	return;
}

int array_average(int* array, int size)
{
	int i, sum = 0;
	for (i = 0; i < size; i++)
	{
		sum = sum + array[i];
	}

	return sum / size;
}

int array_middle_value(int* array, int size)
{
	int mid = size/2;

	return array[mid];
}

0개의 댓글