Примерни въпроси за теста на Държавния изпит
Въпрос 7
В дефиницията на класа CIRCLE, описващ един кръг, са декларирани следните лични данни:
class CIRCLE
{
float r; // радиуса
float P; //обиколката
float S; //лицето
static float Pi;
};
float CIRCLE::Pi=3.14;
Добавете следните конструктори:
- без параметри, в който се нулират всички лични данни (без Pi);
- с 1 параметър, в който се подава радиуса и се нулират всички
останали лични данни (без Pi).
Решение
class CIRCLE
{
float r; // радиуса
float P; //обиколката
float S; //лицето
static float Pi;
public:
CIRCLE()
{
r=0;
P=0;
S=0;
}
CIRCLE(float aR)
{
r=aR;
P=0;
S=0;
}
};
float CIRCLE::Pi=3.14;
Към класа CIRCLE добавете следните методи:
- метод, който изчислява дължината на окръжността (P=2.п.r);
- метод, който изчислява лицето на кръга (S= п.r2).
Решение
class CIRCLE
{
float r; // радиуса
float P; //обиколката
float S; //лицето
static float Pi;
public:
. . .
void Perimeter()
{
P=2*Pi*r;
}
void Square()
{
S=2*r*r;
}
};
float CIRCLE::Pi=3.14;
Дефинирайте обект A с радиус 5 см и указател pX към обект от тип CIRCLE с радиус 10 см. Напишете код, чрез който извиквате методите за изчисляване на обиколката и лицето чрез A и чрез указателя pX.
Решение
CIRCLE A(5);
CIRCLE pX=new CIRCLE(10);
A.Perimeter();
A.Square();
pX->Perimeter();
pX->Square();
Даден е базовият клас Color, който описва цветове. Декларирайте клас Shape, който наследява с публичен достъп класа CIRCLE и класа Color.
Решение
class Shape:public CIRCLE, public Color
{ . . . }