|
//////////////////////////////////////////////////////////////////
//Вот тока придецца изменить маленько!специально для тя не буду напрягатсо!
//Ты хте учишсо, и на каком курсе?
//////////////////////////////////////////////////////////////////
#include <iostream>
#include <string.h>
using namespace std;
class Car
{
double volume;// объем
char*color;
int count;//Dveri
char*model;
int cilinder;
char*number;
double rashod;
double cena;
public:
Car();
~Car();
Car(const Car&);
Car(double Volume,char*Color);
Car(int Count,char*Model);
Car(char*Number,int Cilinder);
Car(double volume,char*color,int count,char*model,int cilinder,char*number,double rashod,double cena);
void ShowCar();
void RashodT(){
rashod=volume*cilinder;
}
void CenaA(){
cena=rashod*100;//Reaktivnoe toplivo=)
}
};
Car::Car(double Volume,char*Color,int Count,char*Model,int Cilinder,char*Number,double Rashod,double Cena)
{
volume=Volume;
color=new char[strlen(Color)+1];
strcpy(color,Color);
count=Count;
model=new char[strlen(Model)+1];
strcpy(model,Model);
cilinder=Cilinder;
number=new char[strlen(Number)+1];
RashodT();
CenaA();
}
void Car:: ShowCar()
{
cout<<"Volume: "<<volume<<'\n';
cout<<"Color: "<<color<<'\n';
cout<<"Dveri: "<<count<<'\n';
cout<<"Model: "<<model<<'\n';
cout<<"Cilindri: "<<cilinder<<'\n';
cout<<"Number: "<<number<<'\n';
cout<<"Rachod na 100 km/ch: "<<rashod<<'\n';
cout<<"Cena benzina: "<<cena<<'\n';
}
Car::Car(const Car&obj)
{
volume=obj.volume;
color=new char[strlen(obj.color)+1];
strcpy(color,obj.color);
count=obj.count;
model=new char[strlen(obj.model)+1];
strcpy(model,obj.model);
cilinder=obj.cilinder;
number=new char[strlen(obj.number)+1];
rashod = obj.rashod;
cena = obj.cena;
}
Car::Car()
{
volume=1.5;
color=new char[255];
strcpy(color,"Black");
count=2;
model=new char[255];
strcpy(model,"Sipulka");
cilinder=24;
number=new char[255];
strcpy(number,"qwerty");
RashodT();
CenaA();
}
Car::~Car()
{
volume=0;
delete[]color;
color=0;
count=0;
delete[]model;
model=0;
cilinder=0;
delete[]number;
number=0;
rashod=0;
cena=0;
}
Car::Car(double Volume,char*Color):volume(Volume)
{
count=2;
model=new char[255];
strcpy(model,"Teleha");
cilinder=24;
color=new char[255];
strcpy(color,Color);
number=new char[255];
strcpy(number,"Ya_krivedko!");
RashodT();
CenaA();
}
Car::Car(int Count,char*Model):count(Count)
{
volume=1.5;
color=new char[255];
strcpy(color,"Black");
cilinder=24;
number=new char[255];
strcpy(number,"qwerty");
model=new char[255];
strcpy(model,Model);
RashodT();
CenaA();
}
Car::Car(char*Number,int Cilinder):cilinder(Cilinder)
{
number=new char[255];
strcpy(number,Number);
volume=1.5;
color=new char[255];
strcpy(color,"Black");
count=2;
model=new char[255];
strcpy(model,"Teleha");
RashodT();
CenaA();
}
/////////////////////////////////////////////////////////////////////////////////////////
class Cars
{
char* group_name;
int size;
Car* Group;
public:
Cars():size(5)
{
group_name=new char[15];
strcpy(group_name,"qwerty");
Group=new Car[size];
}
Cars(int SIZE,char*NAME):size(SIZE)
{
group_name=new char[strlen(NAME)+1];
strcpy(group_name,NAME);
Group=new Car[size];
for(int i=0;i<size;i++)
Group[i]=Car();
}
~Cars()
{
group_name=0;
Group=0;
cout<<"destructor\n";
}
void ShowCars()
{
cout<<group_name<<"\n";
cout<<size<<"\n\n\n";
for(int i=0;i<size;i++)
{
cout<<"#"<<i<<"\n";
Group[i].ShowCar();
cout<<"\n\n\n";
}
}
Cars(const Cars& obj);
};
Cars::Cars(const Cars & obj)
{
size=obj.size;
Group=new Car[size];
for(int i=0;i<size;i++)
{
Group[i]=obj.Group[i];
}
group_name=new char[strlen(obj.group_name)+1];
}
/////////////////////////////////////////////////////////////////////////////////////////
int main()
{
Cars sipulka;
Cars sipulka2=sipulka;
sipulka2.ShowCars();
return 0;
}
Последний раз редактировалось Chev'yuk; 29.11.2007 в 19:51.
Социальные закладки