如果不喜歡所繼承的class的功能,可以重新改寫。
Input: 三個數字
Output: 從大到小排序、從小到大排序
#include <iostream>
using namespace std;
class mySort01
{
public:
int *a;
void getNumber(int *tmp)
{
a = tmp;
}
void mySwap(int &a,int &b)
{
int tmp;
tmp = a;
a = b;
b = tmp;
}
void calculate()
{
int i,j;
for(i=0;i<2;i++)
for(j=i+1;j<3;j++)
{
if(a[i]<a[j])
mySwap(a[i],a[j]);
}
}
void Print_sort()
{
calculate();
int i;
for(i=0;i<3;i++)
cout<<a[i]<<" ";
cout<<endl;
}
};
class mySort02:public mySort01
{
public:
void calculate()
{
int i,j;
for(i=0;i<2;i++)
for(j=i+1;j<3;j++)
{
if(a[i]>a[j])
mySwap(a[i],a[j]);
}
}
void Print_sort()
{
calculate();
int i;
for(i=0;i<3;i++)
cout<<a[i]<<" ";
cout<<endl;
}
};
int main()
{
mySort01 obj01;
mySort02 obj02;
int test[3];
cin>>test[0]>>test[1]>>test[2];
obj01.getNumber(test);
obj01.Print_sort();
obj02.getNumber(test);
obj02.Print_sort();
return 0;
}