Mohamed Ahmed181 نشر 12 فبراير أرسل تقرير مشاركة نشر 12 فبراير #include <iostream> using namespace std; int calcspecial(int num1, int num2){ if(num1 == num2){ cout << "First = Second -> "; cout << num1 << " + " << num2 << " = " << num1 + num2 << endl; }else { if(num1 > num2){ cout << "First > Second -> "; cout << num1 << " - " << num2 << " = " << num1 - num2 << endl; }if(num1 < num2){ cout << "First < Second -> "; cout << num2 << " - " << num1 << " = " << num2 - num1 << endl; }} } int main() { cout << calcspecial(40, 40) << "\n"; // First = Second -> 40 + 40 = 80 cout << calcspecial(200, 50) << "\n"; // First > Second -> 200 - 50 = 150 cout << calcspecial(100, 300) << "\n"; // First < Second -> 300 - 100 = 200 return 0; } 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Mahmoud Hassan19 نشر 12 فبراير أرسل تقرير مشاركة نشر 12 فبراير حل اخر لهذه المشكلة انك ممكن ان تستخدم الدالة ترجع string مثل هذا وسوف تعمل معك #include <iostream> #include <string> using namespace std; string calcspecial(int num1, int num2) { string result; if (num1 == num2) { result = "First = Second -> " + to_string(num1) + " + " + to_string(num2) + " = " + to_string(num1 + num2); } else if (num1 > num2) { result = "First > Second -> " + to_string(num1) + " - " + to_string(num2) + " = " + to_string(num1 - num2); } else { result = "First < Second -> " + to_string(num2) + " - " + to_string(num1) + " = " + to_string(num2 - num1); } return result; } int main() { cout << calcspecial(40, 40) << "\n"; cout << calcspecial(200, 50) << "\n"; cout << calcspecial(100, 300) << "\n"; return 0; } 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Chihab Hedidi نشر 12 فبراير أرسل تقرير مشاركة نشر 12 فبراير المشكلة هي أن الدالة في تعريفها تقوم بإرجاع عدد، بينما داخلها لا توجد أي قيمة مرجعة، كما أنك تقوم بطباعة النتيجة داخلها لذا لا تحتاج على إعادة الطباعة في ال main، و الأفضل أن تقوم بتعديل الدالة لتصبح void بالشكل التالي: #include <iostream> using namespace std; void calcspecial(int num1, int num2){ if(num1 == num2){ cout << "First = Second -> "; cout << num1 << " + " << num2 << " = " << num1 + num2 << endl; } else { if(num1 > num2){ cout << "First > Second -> "; cout << num1 << " - " << num2 << " = " << num1 - num2 << endl; } if(num1 < num2){ cout << "First < Second -> "; cout << num2 << " - " << num1 << " = " << num2 - num1 << endl; } } } int main() { calcspecial(40, 40); // First = Second -> 40 + 40 = 80 calcspecial(200, 50); // First > Second -> 200 - 50 = 150 calcspecial(100, 300); // First < Second -> 300 - 100 = 200 return 0; } 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
Mohamed Ahmed181
رابط هذا التعليق
شارك على الشبكات الإجتماعية
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.