int[] numbers = { 10, 20, 30, 40, 50 };
- 이와 같이 주어진 숫자 배열에서 최대값과 최소값을 찾는 프로그램을 작성하세요.
- Console.WriteLine(); 을 사용해 최대값과 최소값을 각각 출력할 수 있습니다.
이 문제를 푸는 순서는 다음과 같다고 생각한다.
먼저 배열을 저장한다.
int[] numbers = { 10, 20, 30, 40, 50 };
다음으로 이 배열에서의 최대값과 최소값을 변수로 선언하고 초기값을 저장한다.
int max = numbers[0];
int min = numbers[0];
그 다음 max와 배열의 다른 수를 비교한다. 만약 max가 그 수보다 작다면, 그 다음 수와 비교한다. 그 수가 max보다 커질 때까지 반복한다.
for (int i = 0; i < numbers.Length; i++) // 배열의 범위를 벗어나지 않게 반복
{
if (numbers[i] > max)
{
max = numbers[i];
}
}
min도 마찬가지로 배열의 다른 수와 비교한다. 만약 min이 그 수보다 크다면, 그 다음 수와 비교한다. min이 그 수보다 커질 때까지 반복한다.
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] < min)
{
min = numbers[i];
}
}
최종 완성된 코드는 다음과 같다.
int[] numbers = [10, 20, 30, 40, 50];
int max = numbers[0];
int min = numbers[0];
for (int i = 0; i < numbers.Length; i++) // 배열의 범위를 벗어나지 않게 반복
{
if (numbers[i] > max)
{
max = numbers[i];
}
if (numbers[i] < min)
{
min = numbers[i];
}
}
Console.WriteLine("최대값" + max);
Console.WriteLine("최소값" + min);
출력결과는 다음과 같다.
