/*************************************************/ //moreSort3.cpp //R. A. Hillyard //October 15 2001 //Program to show function overloading of reference parameters /*************************************************/ #include<iostream> using namespace std; void sort3(int& a, int& b, int& c); void sort3(double& a, double& b, double& c); void swap(int& a, int& b); void swap(double& a, double& b); int main() { char choice; int a = 0, b = 0, c = 0; double x = 0.0, y = 0.0, z = 0.0; cout << "Double or Ints [D/I]: "; cin >> choice; if(choice == 'I') { cout << " enter three ints: "; cin >>a>>b>>c; sort3(a,b,c); cout << "\n sorted: " << a << " " << b << " " << c << endl; } if(choice == 'D') { cout << " enter three doubles: "; cin >>x>>y>>z; sort3(x,y,z); cout << "\n sorted: " << x << " " << y << " " << z << endl; } return 0; }//end main /*****************************************************************/ void sort3(int& a, int& b, int& c) { if(a > b) { swap(a,b); } if(a > c) { swap(a,c); } if(b > c) { swap(b,c); } }//end sort3 /*****************************************************************/ void swap(int& a, int& b) { int temp = a; a = b; b = temp; }//end swap /*****************************************************************/ /*****************************************************************/ void sort3(double& a, double& b, double& c) { if(a > b) { swap(a,b); } if(a > c) { swap(a,c); } if(b > c) { swap(b,c); } }//end sort3 /*****************************************************************/ void swap(double& a, double& b) { double temp = a; a = b; b = temp; }//end swap /**************************Program output*************************/ Double or Ints [D/I]: D enter three doubles: 6.6 4.3 8.2 sorted: 4.3 6.6 8.2 /*****************************************************************/ Double or Ints [D/I]: I enter three ints: 8 2 9 sorted: 2 8 9