Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2011, 13:48   #1
нона
Пользователь
 
Регистрация: 16.10.2011
Сообщений: 14
По умолчанию наследование классов, не могу найти ошибку С++

вот код:
#include <math.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>

enum TShape {SHAPE_PRISM=0, SHAPE_PARALLELEPIPED, SHAPE_CUBE, SHAPE_PYRAMID, SHAPE_CON, SHAPE_CYLINDER};
enum TColor {COLOR_RED=0, COLOR_YELLOW, COLOR_GREEN, COLOR_BLUE, COLOR_WHITE};
enum TMaterial {MATERIAL_METAL=0, MATERIAL_WOOD, MATERIAL_PLASTIC, MATERIAL_CARDBOARD};

class TBody
{
protected:
char* fName;
TShape fShape;
TColor fColor;
TMaterial fMaterial;
double fH;
double fV;
double fP;
double fBaseSqr;
double fSideSqr;
double fFullSqr;
double fVolumeKoef;


public:
TBody (char* Name, TShape Shape, double VolumeKoef,TColor Color,TMaterial Material);
~TBody ();
}; // .class TBody

class Prism_Inscribed_Rectilineal_Triangl ublic TBody
{
protected:
double fA;
public:
Prism_Inscribed_Rectilineal_Triangl (char* Name, double A, double H,TColor Color,TMaterial Material);

void Init (double A, double H);
void Print ();
}; // .class Prism_Inscribed_Rectilineal_Triangl

TBody::TBody (char* Name, TShape Shape, double VolumeKoef,TColor Color,TMaterial Material)
{
this->fName = new char[strlen(Name)];
strcpy(this->fName, Name);
this->fShape = Shape;
this->fVolumeKoef = VolumeKoef;
this->fColor =Color;
this->fMaterial =Material;
}
TBody::~TBody ()
{
delete[] this->fName;
}

Prism_Inscribed_Rectilineal_Triangl ::Prism_Inscribed_Rectilineal_Trian gl(char* Name, double A, double H,TColor Color,TMaterial Material): TBody(Name,TShape Shape,TColor Color,TMaterial Material)
{
this->Init(A, H);
}


void Prism_Inscribed_Rectilineal_Triangl ::Init (double A, double H)
{
this->fA = A;
this->fH = H;
this->fBaseSqr = sqrt(3/4.0) * this->fA * this->fA;
this->fSideSqr = 2 * this->fA * this->fH;
this->fFullSqr = this->fBaseSqr + this->fSideSqr;
this->fV = this->fVolumeKoef * this->fBaseSqr * this->fH;
this->fP = this->fMaterial * this->fH;
}

void Prism_Inscribed_Rectilineal_Triangl ::Print ()
{
printf
(
"Name: %s;\nStorona: %lf;\nHeight: %lf;\nBaseSqr: %lf;\nSideSqr: %lf;\nFullSqr: %lf;\nVolume: %lf;\weight : %lf;\n\n",
this->fName,
this->fA,
this->fH,
this->fBaseSqr,
this->fSideSqr,
this->fFullSqr,
this->fV
this->fP );
}

int main ()
{
Prism_Inscribed_Rectilineal_Triangl *prisma1 = new Prism_Inscribed_Rectilineal_Triangl ("C1", 3.0, 10.0);
Prism_Inscribed_Rectilineal_Triangl *prisma2 = new Prism_Inscribed_Rectilineal_Triangl ("C2", 5.0, 1.0);

prisma1->Print();
prisma2->Print();

delete prisma1;
delete prisma2;

getch();
return 0;
}
нона вне форума Ответить с цитированием
Старый 29.11.2011, 14:07   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,833
По умолчанию

ни условия
ни оформления кода
ни описания (текста) ошибок
ни суммы за то, что кто-то не смотря на вышеперечисленное будет копаться за вас
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу найти ошибку 3K@BH Общие вопросы C/C++ 1 22.11.2011 10:20
Не могу найти ошибку 18541 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 16.12.2010 15:53
не могу найти ошибку Асик Помощь студентам 9 30.11.2010 23:10
Задача на наследование...не могу отловить ошибку assasin Общие вопросы C/C++ 13 06.06.2009 17:34
Не могу найти ошибку! Эдуард Общие вопросы C/C++ 7 27.02.2008 16:34