respec7_m3
Registered
При изпълнението на следният програмен фрагмент ми се появява грешка:
http://store.picbg.net/pubpic/32/AF/aaf0bb47a9f732af.png
Не мога да разбера къде греша и защо препълвам double.
http://store.picbg.net/pubpic/32/AF/aaf0bb47a9f732af.png
Не мога да разбера къде греша и защо препълвам double.
Код:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
class TV
{
private:
string model;
int sizeOfScreen;
double price;
public :
TV()
{
this->model = "LG";
this->sizeOfScreen = 32;
this->price = 2500;
}
TV(string model, int sizeOfScreen, double price)
{
this->model = model;
this->sizeOfScreen = sizeOfScreen;
this->price = price;
}
~TV()
{
}
string getModel()
{
return model;
}
void setModel(string m)
{
model = m;
}
int getsizeOfScreen()
{
return sizeOfScreen;
}
void setsizeOfScreen(int size)
{
sizeOfScreen = size;
}
double getPrice()
{
return price;
}
void setPrice(double p)
{
price = p;
}
void show()
{
cout<<"\nMarka: "<<model;
cout<<"\nRazmer na ekrana "<<sizeOfScreen;
cout<<"\nCena "<<price;
}
void init(string m,int size,double p)
{
model = m;
sizeOfScreen = size;
price = p;
}
bool isBig()
{
if(sizeOfScreen >= 32)
{
return true;
}
else
{
return false;
}
}
void readKB()
{
cout<<endl;
cout<<"Size of screen"<<endl;
cin>>sizeOfScreen;
cout<<"Price"<<endl;
cin>>price;
cout<<"Model"<<endl;
cin>>model;
}
};
int main()
{
TV tvArray[5] = {TV(),
TV("Sony", 37, 1000),
TV("LG", 32, 2500),
TV("Samsung", 42, 4500),
TV("Philips", 60, 5000)};
TV helperTV;
TV tvNewArray[5];
double averagePrice = 0;
ofstream TVFile;
ifstream TVFileRead;
for(int i=0; i<5; i++)
{
tvArray[i].show();
}
helperTV=tvArray[0];
for(int i = 0; i < 5; i++)
{
if(tvArray[i].getsizeOfScreen() > helperTV.getsizeOfScreen())
{
helperTV=tvArray[i];
}
averagePrice += tvArray[i].getPrice();
}
helperTV.show();
averagePrice = averagePrice/5;
cout << "\nAverage Price: " << averagePrice;
TVFile.open("TVInfo.txt", ios::out);
for(int i=0; i<5; i++)
{
TVFile.write((char *)&tvArray[i], sizeof(tvArray[i]));
}
TVFile.close();
TVFileRead.open("TVInfo.txt", ios::in);
for(int i=0; i<5; i++)
{
cout << TVFileRead.read((char *)&tvNewArray[i], sizeof(tvNewArray[i]));
}
TVFileRead.close();
for(int i=0; i<5; i++)
{
tvNewArray[i].show();
}
return 1;
}