/********
问题描述
给出n个数,找出这n个数的最大值,最小值,和。
输入格式
第一行为整数n,表示数的个数。
第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。
输出格式
输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。
样例输入
5
1 3 -2 4 5
样例输出
5
-2
11
数据规模与约定
1 <= n <= 10000
********/
#include<iostream>
using namespace std;
int main(void)
{
int max,min ,n,he=0;
int num[100];
cin>>n;
for(int i=0;i<n;i++)
{
cin>>num[i];
}
max=num[0];
min=num[0];
for(int i=0;i<n;i++)
{
he+=num[i]; //和
if(max<num[i]){max=num[i];} //最大值
if(min>num[i]){min=num[i];} //最小值
}
cout<<max<<endl;
cout<<min<<endl;
cout<<he<<endl;
}
//将上面代码封装成类
//将上面代码封装成类
#include<iostream>
using namespace std;
class max_min
{
int max,min ,n,he=0;
int num[100];
public:
void scan_n(int shuliang){n=shuliang;}
void scan_num(void);
void print_min(void);
void print_max(void);
void print_he(void);
};
void max_min::scan_num()
{
for(int i=0;i<n;i++)
{
cin>>num[i];
}
}
void max_min::print_min()
{
min=num[0]; //最小值初始化
for(int i=0;i<n;i++)
{
if(min>num[i])
{
min=num[i];
}
}
cout<<min<<endl;
}
void max_min::print_max()
{
max=num[0]; //最小值初始化
for(int i=0;i<n;i++)
{
if(max<num[i])
{
max=num[i];
}
}
cout<<max<<endl;
}
void max_min::print_he()
{
for(int i=0;i<n;i++)
{
he+=num[i];
}
cout<<he<<endl;
}
int main(void)
{
int n1;
max_min a;
cin>>n1;
a.scan_n(n1);
a.scan_num();
a.print_max();
a.print_min();
a.print_he();
return 0;
}