כתבו פונקציה הקוראת שלושה מספרים ממשייים ומדפיסה אותם לפי הסדר מהגדול לקטן.
(ואסור לי להשתמש בפונקציות מובנות ב-C++)
וצריך לקחת בחשבון שגם יש אופציה ש-2 מספרים שווים..
בעיקרון אני הצלחתי אבל זה נראה לי ארוך מדי.. אולי מישהו יעשה את זה יותר קצר? 
#include<iostream> using namespace std; void main() { // decleration of variables double num1,num2,num3; //input from user double biggest,middle,smallest,temp; //program starts cout << "Please enter 3 real numbers \n"; cin >> num1 >> num2 >> num3; // find the biggest number if (num1>num2) temp=num1; else temp=num2; if (temp<num3) temp=num3; biggest=temp; // find the smallest number if (num1<num2) temp=num1; else temp=num2; if (temp>num3) temp=num3; smallest=temp; // find the middle number if ((num1<biggest) && (num1>smallest)) temp=num1; else if ((num2<biggest) && (num2>smallest)) temp=num2; else if ((num3<biggest) && (num3>smallest)) temp=num3; // there are 2 identitical numbers else if ((num1==num2) || (num2==num3)) temp=num2; else temp=num1; middle=temp; cout << biggest <<" " << middle <<" " << smallest << "\n"; }
|
