배열의 최대값과 최소값 찾기
max_element, min_element
*max_element(시작주소,끝주소)
*min_element(시작주소,끝주소)
헤더
#include<algorithm>
벡터(1차원)
using namespace std;
const int sz = 10;
vector<int> v;
int main() {
for (int i = 0; i < sz; i++) {
v.push_back(i);
}
int max_n = *max_element(v.begin(), v.end());
int min_n = *min_element(v.begin(), v.end());
cout << max_n << '\n';
cout << min_n << '\n';
return 0;
}
//출력
9
0
벡터(2차원)
라인별로 최대값과 최소값을 저장한 후 마지막으로 저장한 값을 출력합니다.
using namespace std;
const int sz = 10;
vector<vector<int>> vv;
int main() {
vector<int>v1 = {10,11,12,13,14,15,16,17,18,19};
vector<int>v2={ 10,99,12,13,14,15,16,17,18,19 };
vector<int>v3={ 10,11,12,13,14,15,1,17,18,19 };
vv.push_back(v3);
vv.push_back(v2);
vv.push_back(v1);
vv.push_back(v3);
vv.push_back(v3);
vv.push_back(v2);
vv.push_back(v3);
vv.push_back(v1);
vv.push_back(v2);
vv.push_back(v3);
for (int i = 0; i < sz; i++) {
for (int j = 0; j < sz; j++) {
cout << vv(i)(j) << ' ';
}
cout << '\n';
}
cout << '\n';
int max_n = -1;
int min_n = 987654321;
for (int i = 0; i < sz; i++) {
if (max_n < *max_element(&vv(i)(0), &vv(i)(0) + sz)) {
max_n = *max_element(&vv(i)(0), &vv(i)(0) + sz);
}
if (min_n> *min_element(&vv(i)(0), &vv(i)(0) + sz)) {
min_n = *min_element(&vv(i)(0), &vv(i)(0) + sz);
}
}
cout << max_n << '\n';
cout << min_n << '\n';
return 0;
}
//출력
10 11 12 13 14 15 16 17 18 19
10 11 12 13 14 15 1 17 18 19
10 11 12 13 14 15 1 17 18 19
10 99 12 13 14 15 16 17 18 19
10 11 12 13 14 15 1 17 18 19
10 11 12 13 14 15 16 17 18 19
10 99 12 13 14 15 16 17 18 19
10 11 12 13 14 15 1 17 18 19
99
1
어레이(1D)
using namespace std;
const int sz = 10;
int a(10);
int main() {
for (int i = 0; i < sz; i++) {
a(i) = i;
}
int max_n = *max_element(a,a+sz);
int min_n = *min_element(a, a + sz);
cout << max_n << '\n';
cout << min_n << '\n';
return 0;
}
//출력
9
0
배열(2D)
using namespace std;
const int sz = 10;
int aa(sz)(sz);
int main() {
for (int i = 0; i < sz; i++) {
for (int j = 0; j < sz; j++) {
aa(i)(j) = i + j+10;
}
}
int max_n = *max_element(&aa(0)(0), &aa(0)(0)+sz*sz);
int min_n = *min_element(&aa(0)(0), &aa(0)(0) + sz * sz);
cout << max_n << '\n';
cout << min_n << '\n';
return 0;
}
//출력
28
10