#include <iostream>
using namespace std;
struct DateType
{ int month;
  int day;
  int year; };
struct statisticType
{ float failRate;
  DateType lastservice;
  int DownDays;  };
struct MachineRec
{ int idNumber;
  char Description[20];
  statisticType history;
  DateType purchaseDate;
  float cost; };

void entry_rec(MachineRec &rec)
{ cout <<"idNumber ="; cin >>rec.idNumber;cin.ignore(10,'\n');
  cout <<"Description :"; cin.get(rec.Description,20);cin.ignore(1,'\n');
  cout <<"HISTORY OF THE MACHINE";
			cout<<"          failrate =";cin>>rec.history.failRate;
			cout<<"          LASTSERVICE ";
					cout<<"               month="; cin>>rec.history.lastservice.month;
					cout<<"               day  ="; cin>>rec.history.lastservice.day;
					cout<<"               year ="; cin>>rec.history.lastservice.year;
					cout<<"  downdays   ="; cin>>rec.history.DownDays;
  cout <<  "PURCHASE DATE";
	  cout <<"        month =";cin>>rec.purchaseDate.month;
      cout <<"        day   =";cin>>rec.purchaseDate.day;
	  cout <<"        year  =";cin>>rec.purchaseDate.year;
  cout <<"cost  ="; cin>>rec.cost;	  
}

void print_rec(MachineRec &rec)
{ cout <<"idNumber    ="<<rec.idNumber;
  cout <<"\nDescription :"<<rec.Description;
  cout <<"HISTORY OF THE MACHINE\n";
			cout<<"          failrate ="<<rec.history.failRate;
			cout<<"\n          LASTSERVICE ";
					cout<<"\n               month="<<rec.history.lastservice.month;
					cout<<"\n               day  ="<<rec.history.lastservice.year;
					cout<<"\n               year ="<<rec.history.lastservice.day;
					cout<<"  downdays   ="<<rec.history.DownDays;
  cout <<  "\nPURCHASE DATE";
	  cout <<"\n        month ="<<rec.purchaseDate.month;
      cout <<"\n        day   ="<<rec.purchaseDate.day;
	  cout <<"\n        year  ="<<rec.purchaseDate.year;
  cout <<"cost  ="<<rec.cost;	  
}

float get_cost(MachineRec &rec)
{  return rec.cost; }

int get_downdays(MachineRec &rec)
{ return rec.history.DownDays ;}

int get_purchase_year(MachineRec &rec)
{ return rec.purchaseDate.year;}

void main()
{
	MachineRec ma[10];
	int k,n=0;
	float sum_cost=0.0;
	float sum_down_days=0;
	int count_2007=0;
	char choice;
     do
      {
      cout << "Enter machine " << n << " data" << endl;
      entry_rec(ma[n]);  n++;              // get data
      cout << "Do another (y/n)? ";
      cin >> choice;
      } while ((choice != 'n') && (n<=10));

	for (k=0;k<n;k++) print_rec(ma[k]);

	for (k=0;k<n;k++)
			{
				sum_cost+=get_cost(ma[k]);
				sum_down_days+=get_downdays(ma[k]);
				if (get_purchase_year(ma[k])==2007) {count_2007++;}
			}

	cout << "MESH TIMH KOSTOUS MHXANWN ="<<sum_cost/n<<"\n";
	cout << "MESH TIMH HMERWN EKTOS LEITOYRGIAS ="<<sum_down_days/n<<"\n";
	cout << "MHXANES ME AGORA TO 2004 ="<<count_2007<<"\n";
}
