Advertisement
boyan16-z

Parking+

Apr 19th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.27 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include "string.h"
  3.  
  4.  
  5. class parking {
  6. private:
  7.     char* name = new char[50];
  8.     char* place = new char[50];
  9.     int sum, current;
  10. public:
  11.     parking operator+(parking b) {
  12.         return (sum < b.sum) ? parking(name, place, sum) : parking(b.name, b.place, b.sum);
  13.     }
  14.     parking(const char name1[50], const char location[50], int number) {
  15.         strcpy(name, name1);
  16.         strcpy(place, location);
  17.         sum = number;
  18.         current = sum;
  19.         printf("%s\n%s\n%d\n\n", name, place, sum);
  20.     }
  21.  
  22.     void get_place() {
  23.         printf("Number of seats available: %d\n\n", current);
  24.     }
  25.  
  26.     void get_sum() {
  27.         printf("The least number of common places: %d\n\n", sum);
  28.     }
  29.  
  30.     void Left(int n) {
  31.         printf("Left.\n");
  32.         if (current + n > sum) printf("So many cars were not.\n");
  33.          else current += n;
  34.     }
  35.  
  36.     void Arrived(int n) {
  37.         printf("Arrived.\n");
  38.         if (current - n < 0) printf("No place.\n");
  39.         else current -= n;
  40.     }
  41.  
  42.     /*~parking() {
  43.         delete[] name;
  44.         delete[] place;
  45.         printf("Destructor work.\n");
  46.     }*/
  47. };
  48.  
  49. int main()
  50. {
  51.     parking park1("Bit", "ACB", 120);
  52.     park1.Left(20);
  53.     park1.Arrived(150);
  54.     park1.get_place();
  55.  
  56.     parking park2("Lololo", "SPb", 200);
  57.     park2.Arrived(150);
  58.     park2.Left(50);
  59.     park2.get_place();
  60.  
  61.     parking c = park1 + park2;
  62.     c.get_sum();
  63.     return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement