إعلان
تعلم الآن

لماذا يقبل المترجم تغيير القيمة الثابتة التي نرسلها للدالة في سي بلس بلس؟

في درس الثوابت (برمجة كائنية) في لغة السي بلس بلس، لماذا يقبل المترجم تغيير القيمة الثابتة التي نرسلها للدالة في حال الإرجاع return؟

#include <iostream>
using namespace std;

// أيضاً double و عند استدعاءها يجب أن نمرر لها إسم متغير ثابت نوعه double ترجع قيمة نوعها finalPrice هنا قمنا بتعريف دالة إسمها
double finalPrice(const double n)
{
  // هنا كتبنا معادلة القيمة التي سترجعها الدالة و التي ستعطي في النهاية قيمة العدد الذي نمرره لها - 20% منها
  return n - (n * 0.2);
}

// main() هنا قمنا بتعريف الدالة
int main()
{
  // يمثل سعر منتج و قيمته تساوي 50 price هنا قمنا بتعريف متغير إسمه
  const double price = 50;
  // و طباعة النتيجة النهائية التي سيتم إرجاعها على أنها السعر النهائي بعد الحسم finalPrice() للدالة price هنا قمنا بتمرير قيمة المتغير 
  cout << "Price after 20% sold = " << finalPrice(price) << "$";
  return 0;
}


أقصد لم لا يمكن كتابتها بهذه الطريقة؟

n = n - (n * 0.2);
return n;

إجابات 1

أضف إجابة

يجب تسجيل الدخول حتى تتمكن من إضافة إجابة أو رد.

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة