الحين أنا بواجه هاي المشكلة في كود ++C ومش عارفة ليش مش راضي يغير قيمة الاسم الافتراضية اللي بيدخلها المستخدم رغم انهم في class نفسه فياريت تشوفولي شو المشكلة وهي السؤال الرئيسي هل انا حالّة الكود صح وكيف اعمل اعادة التحميل لدالة بتستقبل ملف يا ريت المساعدة .
1- قم بإنشاء صنف (Customer) وفق التالي:
a.المتغيرات:
i. الاسم -:Name محمي من نوع نص.
b. الدوال:
i. بناء يقوم بوضع قيم ابتدائية للاسم.
ii. دالة عامة ترجع قيمة الاسم.
iii. دالة عامة تستقبل معامل وتغير من خلاله قيمة الاسم. القيمة الافتراضية للمعامل هي "Unknown".
2- قم بإنشاء صنف (TV) وفق التالي:
a. المتغيرات:
i. الرقم - :No خاص من نوع رقم صحيح.
ii. السعر - :price عام رقمي عشري.
b. الدوال:
i. بناء يقوم بقراءة قيم للمتغيرات من خلال لوحة المفاتيح.
ii. دالة عامة ترجع قيمة السعر.
iii. دالة عامة تستقبل معامل وتغير من خلاله قيمة السعر.
3- قم بإنشاء صنف (Invoice) يرث من الصنف (Customer) وراثة محمية وفق التالي:
a. المتغيرات:
i. :TVs عامة مصفوفة مكونة من 5 كائنات (TV).
ii. Total: خاص رقمي عشري.
b. الدوال:
ReadPrices(): عامة وتقوم بقراءة قيم عناصر المصفوفة (TVs) .
GetTotal(): عامة وتحسب مجموع الاسعار للمصفوفة وتخزينه داخل المتغير (Total) ثم تقوم بارجاعه.
بناء يقوم بحساب مجموع الاسعار للمصفوفة وتخزينه داخل المتغير (Total).
:Print() عامة وتطبع على الشاشة جميع المتغيرات المحلية والموروثة.
GetMin(): عامة ترجع اقل الأسعار في المصفوفة.
بين مفهوم إعادة التحميل مستخدما الدالة (Print) باستقبالها اسم ملف وكتابة جميع المتغيرات المحلية والموروثة داخل ملف.
4- الدالة الرئيسية:
a. انشاء مصفوفة كائنات من نوع (Invoice) تتكون من أي عدد من عندك.
b. استدعاء جميع الدوال الخاصة والموروثة بالكائن السابق.
وهاد هو الكود :
#include<iostream>#include<string.h>usingnamespace std;/*---------------------------------------------------*/class customer{protected:
string Name;public:
customer(){Name="Unknown";}void get_Name(){
cout<<Name<<endl;}void set_Name(){
cout<<"Enter The Car Name :"<<endl;
string N ;
cin>>N;Name=N;}};/*---------------------------------------------------*/class TV{private:intNo;public:floatPrice;
TV(){
cout<<"The Car Number is :"<<endl;
cin>>No;
cout<<"The Car Price is :"<<endl;
cin>>Price;}void get_Price(){
cout<<Price<<endl;}void set_Price(float P){
P =Price;}};/*---------------------------------------------------*/classInvoice:protected customer{private:floatTotal;public:
TV TVs[2];voidReadPrice(){
cout<<"The Numbers : "<<endl;for(int i=0;i<2;i++){
cout<<TVs[i].Price<<endl;}};intGetTotal(){returnTotal;}Invoice(){Total=0;for(int i=0;i<2;i++){Total+=TVs[i].Price;}}voidPrint(){
cout<<"The Car Name is :"<<Name<<endl;
cout<<"The Sumation is :"<<Total<<endl;}intGetMin(){float min;
min=TVs[0].Price;for(int i=0;i<2;i++){if(TVs[i].Price<min)
min=TVs[i].Price;}
cout<<"The minimam :"<<min<<endl;}};/*---------------------------------------------------*/int main(){Invoice x[3];
customer y;for(int i=0; i<3;i++){
x[i].ReadPrice();
y.set_Name();
x[i].Print();
x[i].GetMin();
cout<<"********************************"<<endl;}return0;}
السؤال
هبة حمدان
السلام عليكم
الحين أنا بواجه هاي المشكلة في كود ++C ومش عارفة ليش مش راضي يغير قيمة الاسم الافتراضية اللي بيدخلها المستخدم رغم انهم في class نفسه فياريت تشوفولي شو المشكلة وهي السؤال الرئيسي هل انا حالّة الكود صح وكيف اعمل اعادة التحميل لدالة بتستقبل ملف يا ريت المساعدة .
1- قم بإنشاء صنف (Customer) وفق التالي:
a.المتغيرات:
i. الاسم -:Name محمي من نوع نص.
b. الدوال:
i. بناء يقوم بوضع قيم ابتدائية للاسم.
ii. دالة عامة ترجع قيمة الاسم.
iii. دالة عامة تستقبل معامل وتغير من خلاله قيمة الاسم. القيمة الافتراضية للمعامل هي "Unknown".
2- قم بإنشاء صنف (TV) وفق التالي:
a. المتغيرات:
i. الرقم - :No خاص من نوع رقم صحيح.
ii. السعر - :price عام رقمي عشري.
b. الدوال:
i. بناء يقوم بقراءة قيم للمتغيرات من خلال لوحة المفاتيح.
ii. دالة عامة ترجع قيمة السعر.
iii. دالة عامة تستقبل معامل وتغير من خلاله قيمة السعر.
3- قم بإنشاء صنف (Invoice) يرث من الصنف (Customer) وراثة محمية وفق التالي:
a. المتغيرات:
i. :TVs عامة مصفوفة مكونة من 5 كائنات (TV).
ii. Total: خاص رقمي عشري.
b. الدوال:
ReadPrices(): عامة وتقوم بقراءة قيم عناصر المصفوفة (TVs) .
GetTotal(): عامة وتحسب مجموع الاسعار للمصفوفة وتخزينه داخل المتغير (Total) ثم تقوم بارجاعه.
بناء يقوم بحساب مجموع الاسعار للمصفوفة وتخزينه داخل المتغير (Total).
:Print() عامة وتطبع على الشاشة جميع المتغيرات المحلية والموروثة.
GetMin(): عامة ترجع اقل الأسعار في المصفوفة.
بين مفهوم إعادة التحميل مستخدما الدالة (Print) باستقبالها اسم ملف وكتابة جميع المتغيرات المحلية والموروثة داخل ملف.
4- الدالة الرئيسية:
a. انشاء مصفوفة كائنات من نوع (Invoice) تتكون من أي عدد من عندك.
b. استدعاء جميع الدوال الخاصة والموروثة بالكائن السابق.
وهاد هو الكود :
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.