|
이미 입력받은 수들에서 단지 최소, 최대값만 구한다면 아래와 같이 합니다.
float min,max;
min = a[0];
max = a[0];
for(int i=1 ;i<n ;i++)
{
if(a[i]<min) min=a[i];
if(a[i]>max) max=a[i];
}
그리고 오름차순정렬을 하고 아울러 최소,최대값을 구한다면 아래와 같이 합니다.
float min,max,ex;
int i,j;
for(i=0 ;i<n-1 ;i++)
{
for(j=i+1 ;j<n ;j++)
{
if(a[i]>a[j])
{
ex=a[i];
a[i]=a[j];
a[j]=ex;
}
}
}
min=a[0];
max=a[n-1]; // n이 1이상이어야 겠죠
모치 님이 쓰신 글 :
: 우선 100이상 일때 다시 입력을 취소하고 다시 입력값을 넣게하라
: 이거는 빼고 나머지 최대 최소 구하는 거 해봣는데요 답이 안나오네여??
: c++로 풀어야 되여
:
: #include<iostream.h>
: #include<process.h>
:
: void main()
: {
: const int N=100;
: int i,j,m,n;
: float a[N],w;
:
: cout << "n=";
: cin >> n;
:
: if (n>N) {
: cerr << " memory over ";
: exit(1);
: }
: for (i=0; i<n; ++i){
: cout << "a[" << i << "]=";
: cin >> a[i];
: }
:
: for (m=n-1; i>0; --i){
: for (j=0; j<m; ++j){
: if (a[j]>a[j+1]){
: w=a[j];
: a[j]=a[j+1];
: a[j+1]=w;
: }
: }
: }
:
: if(i=0,i=n)
: cout << " 최소값은?? " << a[i] << '\n';
: cout << " 최대값은?? " << a[i] << '\n';
: }
|