Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ valarray::max() 함수 완벽 가이드: 문법과 예제

이 글에서는 C++ STL에서 제공하는 valarray::max() 함수의 동작 방식, 문법 그리고 실제 활용 예제까지 자세히 살펴보겠습니다.

valarray란 무엇인가?

std::valarray는 값들의 배열을 표현하고 조작하기 위해 사용되는 클래스입니다. 요소 단위(element-wise)의 수학적 연산을 지원하며, 수치 계산에 최적화되어 있어 벡터나 배열 기반의 연산을 간결하게 처리할 수 있습니다.

valarray::max()란 무엇인가?

std::valarray::max() 함수는 C++ STL에 내장된 함수로, <valarray> 헤더 파일에 정의되어 있습니다. 이 함수는 valarray 컨테이너에 저장된 값들 중 최댓값을 반환합니다.

주의할 점은, 만약 valarray가 비어 있는 경우 반환되는 결과는 정의되지 않습니다(unspecified). 따라서 빈 컨테이너에 대해 이 함수를 호출하지 않도록 주의해야 합니다.

문법

V_array_name.max();

매개변수

이 함수는 어떠한 매개변수도 받지 않습니다.

반환값

이 함수는 valarray에 저장된 값들 중 최댓값을 반환합니다.

예제

입력

valarray<int> arr = { 1, 2, 4, 5, 8, 9 };
arr.max();

출력

9

예제 1: 최댓값 출력하기

#include <bits/stdc++.h>
using namespace std;
int main(){
    valarray<int> arr = {2, 4, 6, 8, 10};
    cout<<"Largest element is = "; cout<<arr.max() << endl;
    return 0;
}

출력

Largest element is = 10

위 예제에서는 2부터 10까지의 값을 가진 valarray를 생성한 뒤, max() 함수를 호출하여 가장 큰 값인 10을 출력합니다.

예제 2: 최댓값을 활용한 연산

#include <bits/stdc++.h>
using namespace std;
int main(){
    valarray<int> arr = {2, 4, 6, 10, 10};
    //최댓값의 제곱 구하기
    int product = arr.max() * arr.max();
    cout<<"Square of greatest number is: "<<product;
    return 0;
}

출력

Square of greatest number is: 100

이 예제에서는 max() 함수로 얻은 최댓값(10)을 제곱하여 결과값 100을 출력합니다. 이처럼 max() 함수는 단순히 최댓값을 확인하는 것뿐만 아니라, 다른 연산과 조합하여 다양하게 활용할 수 있습니다.