السؤال الأول : -
أكتب برنامجا بلغة C++ يحسب ويطبع مساحة مستطيل ارتفاعه h وطول w باستخدام أسلوب البرمجة الكينونية.
عرف صنف x بحيث يحتوي على المتغيرات المنتمية h و w من النوع العددي الصحيح ويحتوي على الدوال التالية:
1. دالة بناء تقوم بإدخال قيم كل من h و w.
2. دالة تحسب المساحة area.
3. دالة طباعة المساحة.
4. البرنامج الرئيسي الذي يستدعي الدوال السابقة.
Class poly{
Private:
Int hight;
Int width;
Public:
Poly(int h,int w);
};
Poly::Poly(int h,int w){
Hight=h;
Width=w;
}
Class rec: public poly{
Private :
float Area;
Public:
rec(int h,int w);
float area();
};
rec::rec(int h,int w):poly(h,w){
}
Float Rec::Area(){
Return (hight*width);
}
Class tri: public poly{
Private :
float Area;
Public:
Tri::tri(int h,int w);
float tri::area();
};
tri::tri(int hight,int width):poly(hight,width){
}
Float tri::Area(){
Return (0.5*h*w);
}
#includ<iostream.h>
Void mian(){
rec rectangle=rec(10,5);
Cout<<rectangle.Area;
Tri tri1=tri(7,6);
Cout<<tri1.Area;أكتب برنامجا بلغة C++ يحسب ويطبع مساحة مستطيل ومساحة مثلث باستخدام أسلوب البرمجة الكينونية.
عرف الأصناف المشتقة التالية:
1. صنف المستطيل rec . 2. صنف المثلث tri .
المشتقة من الصنف متعدد الأضلاع poly وأن نوع الوراثة عامة وكل منهما يرث المتغيرات والدوال المنتمية للصنف poly وهي:
العرض w والارتفاع h ودالة البناء initialize؟
#include<stdio.h>
#include<conio.h>
class x
{
private :
int h;
int w;
int x;
public :
x(int hight,int width );
int area ();
void printarea ();
};
x::x(int hight,int width){
h=hight;
w=width;
}
int x::area (){
return(h*w);
}
void x::printarea(){
printf("the rectangle area is :%d",a);
}
void main(){
int a;
x rectangle=x(4,6);
a = rectangle.area ();
cout rectangle:;"printarea" ();
getch();
}تابع للمشاركة السابقة