#include <iostream.h> 
// Define classes:
class railroad_car {
  public: railroad_car ( ) { }
};
class box_car : public railroad_car {
  public: box_car ( ) { }
};
class tank_car : public railroad_car {
  public: tank_car ( ) { }
};
class engine : public railroad_car {
  public: engine ( ) { }
};
class caboose : public railroad_car {
  public: caboose ( ) { }
};
// Define railroad car array:
railroad_car *train[100];
main ( ) {
  // Declare various integer variables:
  int car_count, type_code;
  // Read type number and create corresponding objects:
  for (car_count = 0; cin >> type_code; ++car_count)
    if (type_code == 0)        train[car_count] = new engine;
    else if (type_code == 1)   train[car_count] = new box_car;
    else if (type_code == 2)   train[car_count] = new tank_car;
    else if (type_code == 3)   train[car_count] = new caboose;
  // Display car count:
  cout << "There are " << car_count << " cars in the array." << endl;
}
