Write a procedure void sort2(int& a, int& b) that swaps the values of a and b if a is greater than b and otherwise leaves a and b unchanged. For example,
int u = 2;
int v = 3;
int w = 4;
int x = 1;
sort2(u, v); // u is still 2, v is still 3
sort2(w, x); // w is now 1, x is now 4
#include < iostream >
using namespace std;
void sort2(int& a, int& b)
{
if(a>b)
{
int tmp = a;
a = b;
b = tmp;
}
}
int main()
{
int u = 2;
int v = 3;
int w = 4;
int x = 1;
sort2(u,v);
sort2(w,x);
cout << "u : " << u << endl;
cout << "v : " << v << endl;
cout << "w : " << w << endl;
cout << "x : " << x << endl;
}
Write a procedure sort3(int& a, int& b, int& c) that swaps its three inputs to arrange them in sorted order.
For example,
int v = 3;
int w = 4;
int x = 1;
sort3(v, w, x); // v is now 1, w is now 3, x is now 4
Hint: Use sort2 of Exercise P4.2.
#include < iostream >
using namespace std;
void sort2(int& a, int& b)
{
if(a>b)
{
int tmp = a;
a = b;
b = tmp;
}
}
void sort3(int& a, int& b, int& c)
{
sort2(b,c);
sort2(a,c);
sort2(a,b);
}
int main()
{
int v = 3;
int w = 4;
int x = 1;
sort3(v, w, x);
cout << "v : " << v << endl;
cout << "w : " << w << endl;
cout << "x : " << x << endl;
}