شيئية OOP
Open in Telegram
عمي رحمة لوالديك ولعشيرتك وللعزاز وللعراق وللشرق الأوسط، لا تكعد تحفظ الأكواد الكود فهم فهم فهم مو حفظ و السلام
Show more234
Subscribers
No data24 hours
-47 days
-930 days
Posts Archive
234
و اول سؤال حفظيات بله
عليه عشر درجات
أقروا الملف و فكروا بنفس نمط فراغات المد
كذلك ممكن يكرر بعض الفراغات لان الاغلبية ما مجاوبة
234
هذني هن الافكار الممكنة
عليك فهم الكود
لان ما راح يجي نصاً
ممكن يعدل عليه شي بسيط
و اضافات ما تأثر
مثلا يكلك المتغيرات نفس الاسم بالكونستركتر
هنا تستخدم
this->
و موجود مثال بالقناة ( سؤال رقم 12 )
او يكلك سوي سكوب ( : : )
وهيج سوالف
234
هذا السؤال
بس يكلك سويه بالابستراكشن
هيج يصير
#include <iostream>
using namespace std;
class Shape {
public:
virtual void area() = 0;
};
class Circle : public Shape {
private:
double radius;
public:
Circle(double r): radius(r){}
void area() {
cout << "Circle area: "<< 3.14 * radius * radius << endl;
}
};
class Rectangle : public Shape {
private:
double length;
double width;
public:
Rectangle(double l, double w): length(l), width(w) {}
void area() {
cout << "Rectangle area: " << length * width << endl;
}
};
int main() {
Circle circle(5);
Rectangle rectangle(4, 6);
circle.area();
rectangle.area();
return 0;
}
اول يكلك سويه بمفهوم توقع المشاكل ( catch , try , throw )
ايضا سهل
جربوه بطريقكم234
الشرحيات بتأشير الدكتور على الداتا شو
مع تأشيرات من عندي اتوقعها تجي كفراغات او صح وخطأ ليس إلا
234
بخصوص الاسئلة الي يدزها الدكتور قبل الامتحان
الدكتور هاي المرة ما راح يدز ( بحسب الي فهمته من الوضع وكلامه💀 )
لان الأوفرلودنك افكاره موجودة عدنا ( سؤال المختبر + سؤال المد + مثال الملزمة ) و الباقي فقط تغير العملية
و الـ polymorphism عدنه مثال وسؤال المختبر كلها بنفس المضمون مجرد تطبقه على الاسئلة ال18 او اي سؤال يخطر ببالك
و الـ exception handling ما يحتاج تعريف
استخدامه بسيط و معروف throw بالكلاس
و try , catch تصير بالmain
ممكن يحورها و يكلك خلي المفهوم كله بالكلاس ( try , catch , throw ) الفرق بسيط و هذا مثال لها https://t.me/Q_code_cpp/218
هيج خصلت مادتنا
الباقي كله مفاهيم نطلع عليها و يجيب منها فراغات او صح وخطأ
234
هنا صيغة طلب السؤال تكون التعامل مع المشاكل يكون في الكلاس نفسه
#include <iostream>
using namespace std;
class Bank {
public:
double balance;
void deposit(double amount) {
try {
if (amount > 0) {
balance += amount;
} else {
throw "can't deposit a negative value";
}
} catch (const char* msg) {
cerr << "deposit Error: " << msg << endl;
}
}
void withDrawing(double amount) {
try {
if (balance >= amount) {
balance -= amount;
} else {
throw "can't withdraw more money than your balance";
}
} catch (const char* msg) {
cerr << "withdrawal Error: " << msg << endl;
}
}
void display() {
cout << "your balance: " << balance << endl;
}
};
int main() {
Bank s1 = {350};
s1.deposit(-5);
s1.withDrawing(400);
s1.display();
return 0;
}234
مجموعة 4 اسئلة A(1)
نفس هذا
بس الفرق الدكتور يريد فقط withdrawal و تخليها بموضوع try , catch , throw
234
سؤال القسمة try , catch , throw :
#include <iostream>
using namespace std;
class calc{
private:
int x, y;
public:
calc(int m, int g): x(m), y(g) {}
double addition () {
return x+y;
}
double subtract () {
return x-y;
}
double multiply () {
return x*y;
}
double divide () {
if ( y == 0 ) {
throw "Division by zero condition!";
}
else {
return x/y;
}
}
};
int main() {
calc check(7, 0);
try {
cout << check.divide();
} catch ( const char* msg ) {
cerr << msg << endl;
}
return 0;
}234
اوفرلودنك =<
#include <iostream>
using namespace std;
class Box {
private:
double length;
double breadth;
double height;
public:
Box(double l, double b, double h): length(l), breadth(b), height(h) {}
double Volume() const {
return length * breadth * height;
}
bool operator>=(const Box& box) {
return Volume() >= box.Volume();
}
};
int main()
{
Box Box1(3, 9, 5);
Box Box2(8, 6, 2);
if (Box1 >= Box2) {
cout << "Box1 is equal to or bigger than Box2" << endl;
}
else {
cout << "Box1 is smaller than Box2" << endl;
}
return 0;
}234
بخصوص صياغات الاسئلة
كلها موجودة بالقناة
فقط تضع تعديلات بسيطة حسب مفهوم السؤال وهذا شيء بسيط
ف الي يروح فاهم الاكواد الي هنا يجاوب و يطلع مختم المادة ومن الله التوفيق والسداد
234
اسئلة فاينل المختبر
مجموعة 1 :
1- بوليمورفزم ( بالملزمة موجود ( شكل ، الريكتانكل ، تراينكل ) ص45-44
2- كاتش وثرو ( القسمة اخر صفحة بالملزمة ) ولكن كلاس
مجموعة 2 :
1- سؤال البنك ( فريند فنكشن ، سكوب ريزلوشن ( : : ) )
2- اوفرلودنك =<
مجموعة 3 :
1- اوفرلودنك جمع بين ابعاد ريكتانكل و كيوبيد
2- بوليمورفزم
مجموعة 4 :
1- كود Class Bank يتضمن موضوع exception handling ( الي هو try , catch , throw )
2-
