Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<cstring>
- using namespace std;
- class Car{
- public:
- class Person{
- private:
- char name[20];
- char surname[20];
- public:
- Person(){
- strncpy(name,"not specified",13);
- name[13]=0;
- strncpy(surname,"not specified", 13);
- surname[13]=0;
- }
- Person(const char* n="not specified",const char* sn="not specified")
- {
- strncpy(name,n,19);
- name[19]=0;
- strncpy(surname,sn,19);
- name[19]=0;
- }
- void print()
- {
- cout<<name<<" "<<surname<<endl;
- }
- };
- class Date{
- private:
- int year;
- int month;
- int day;
- public:
- Date(){}
- Date(int y, int m, int d)
- {
- year=y;
- month=m;
- day=d;
- }
- Date(const Date ©)
- {
- year=copy.year;
- month=copy.month;
- day=copy.day;
- }
- void print()
- {
- cout<<year<<"."<<month<<"."<<day<<endl;
- }
- };
- Car(){price=0;}
- Car(const Car::Person& p, const Car::Date &d, float pr=0):owner(p), date(d)
- {
- price=pr;
- }
- void print(){
- owner.print();
- date.print();
- cout<<"Price: "<<price<<endl;
- }
- int getPrice()
- {
- return price;
- }
- private:
- Person owner;
- Date date;
- float price;
- };
- void cheaperThan(Car* cars, int numCars, float price)
- {
- for(int i=0;i<numCars;i++)
- {
- if(cars[i].getPrice()<price)
- cars[i].print();
- }
- }
- int main() {
- char name[20];
- char lastName[20];
- int year;
- int month;
- int day;
- float price;
- int testCase;
- cin >> testCase;
- if (testCase == 1) {
- cin >> name;
- cin >> lastName;
- Car::Person lik(name, lastName);
- cin >> year;
- cin >> month;
- cin >> day;
- Car::Date date(year, month, day);
- cin >> price;
- Car car(lik, date, price);
- car.print();
- }
- else if (testCase == 2) {
- cin >> name;
- cin >> lastName;
- Car::Person lik(name, lastName);
- cin >> year;
- cin >> month;
- cin >> day;
- Car::Date date(Car::Date(year, month, day));
- cin >> price;
- Car car(lik, date, price);
- car.print();
- }
- else {
- int numCars;
- cin >> numCars;
- Car cars[10];
- for (int i = 0; i < numCars; i++) {
- cin >> name;
- cin >> lastName;
- Car::Person lik(name, lastName);
- cin >> year;
- cin >> month;
- cin >> day;
- Car::Date date(year, month, day);
- cin >> price;
- cars[i] = Car(lik, date, price);
- }
- float priceLimit;
- cin >> priceLimit;
- cheaperThan(cars, numCars, priceLimit);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement