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
'백준 알고리즘 단계별 풀이 (문제 수) > 1차원 배열 (7)' 카테고리의 다른 글
[C++] OX퀴즈 : 8958번 (0) | 2022.06.20 |
---|---|
[C++] 특정 공식으로 새로운 평균 구하기 : 1546번 (0) | 2022.06.18 |
[C++] 나머지 배열에서 서로 다른 값 찾기 : 3052번 (0) | 2022.06.18 |
[C++] 각 자릿수의 숫자 갯수 세기 : 2577번 (0) | 2022.06.18 |
[C++] 배열에서 최솟값, 최댓값 구하기 : 10818번 (0) | 2022.06.18 |