Question
Write a definition for function COUNTPICS() in C++ to read each object of a binary file PHOTOS.DAT, find and display the total number of PHOTOS of type PORTRAIT. Assume that the file PHOTOS.DAT is created with the help of objects of class PHOTOS, which is defined below :
class PHOTOS
{
int PCODE ;
char PTYPE[20]; //Photo Type as "PORTRAIT" ,"NATURE"
public:
void ENTER()
{
cin>>PCODE;gets(PTYPE);
}
void SHOWCASE()
{
cout<<PCODE<<":" <<PTYPE<<endl;
}
char *GETPTYPE(){return PTYPE;}
};
Solution
void COUNTPICS()
{
PHOTOS P;
fstream fin;
fin.open("PHOTOS.DAT", ios::binary|ios::in);
char count = 0;
while(fin.read((char*)&P,sizeof(P)))
{
if (P.WhatType() == 'PORTRAIT')
count ++;
}
fin.close();
cout << "Total number of photos of type PORTRAIT is " << count;
}
Is there an error in this question or solution?
Solution Write a Definition for Function Countpics() in C++ to Read Each Object of a Binary File Photos.Dat, Find and Display the Total Number of Photos of Type Portrait. Assume that the File Photos.Dat is Created with the Help of Objects of Class Photos, Which is Defined Below Concept: Binary File in C++ :- Creation of File, Writing Data into File, Searching for Required Data from File, Appending Data to a File, Insertion of Data in Sorted File, Deletion of Data from File, Modification of Data in a File.