본문 바로가기
백준 알고리즘 단계별 풀이 (문제 수)/1차원 배열 (7)

[C++] 배열에서 최댓값 찾고 인덱스 구하기 : 2562번

by 17번 일개미 2022. 6. 18.
728x90

문제

9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.

예를 들어, 서로 다른 9개의 자연수

3, 29, 38, 12, 57, 74, 40, 85, 61

이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.


풀이

#include <iostream>
using namespace std;

int main()
{
	int max; int index;
	int numbers[10]; // 공간할당

	// 아홉개의 숫자 입력
	for (int i = 1; i < 10; i++)
	{
		cin >> numbers[i];
		cin.ignore();
	}
	max = numbers[1]; // 임의 대입
	// 최대 최소 판별
	for (int i = 1; i < 10; i++)
	{
		if (max <= numbers[i])
		{
			max = numbers[i];
			index = i;
		}
	}
	cout << max << "\n" << index;
}

1. 최댓값 저장할 max, 인덱스를 저장할 index 선언

2. 9개의 숫자를 저장할 배열 할당

3. 숫자 입력받기

4. max값 초기화

5. 1번 부터 9번까지 기존의 max보다 크면 값을 갱신, 그 때의 index도 저장

6. max와 index출력

728x90