thaidy

Lab4 No.4

Sep 9th, 2011
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.17 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3. using namespace std;
  4. class table{
  5. public:
  6.     virtual void print_vertical(){};
  7.     virtual void print_horizontal(){};
  8.     int count;
  9. };
  10. class table_int : public table{
  11.     int side1[10];
  12.     int side2[10];
  13. public:
  14.     table_int(){
  15.         count=0;
  16.         for(int i=0;i<10;i++){
  17.             side1[i] = 0;
  18.             side2[i] = 0;
  19.         }
  20.     }
  21.     void print_vertical(){
  22.         cout << "vertical print has " << count << " data" << endl;
  23.         for(int i=0;i<10;i++){
  24.             cout << i << " : " << side1[i] << " : " << side2[i] << endl;
  25.         }
  26.     };
  27.     void print_horizontal(){
  28.         cout << "horizontal print has " << count << " data" << endl;
  29.         cout << "side 1" << endl;
  30.         for(int i=0;i<10;i++){
  31.             cout << i << ": " << side1[i] << " ";
  32.         }
  33.         cout << endl << "side 2" << endl;
  34.         for(int i=0;i<10;i++){
  35.             cout << i << ": " << side2[i] << " ";
  36.         }
  37.         cout << endl;
  38.     };
  39.     void set_side1(int a, int b){
  40.         side1[a] = b;
  41.         count++;
  42.     }
  43.     void set_side2(int a, int b){
  44.         side2[a] = b;
  45.         count++;
  46.     }
  47. };
  48. class table_string : public table{
  49.     string side1[10];
  50.     string side2[10];
  51. public:
  52.     table_string(){
  53.         count=0;
  54.         for(int i=0;i<10;i++){
  55.             side1[i] = "";
  56.             side2[i] = "";
  57.         }
  58.     }
  59.     void print_horizontal(){
  60.         cout << "horizontal print has " << count << " data" << endl;
  61.         cout << "side 1" << endl;
  62.         for(int i=0;i<10;i++){
  63.             cout << i << ":" << side1[i] << " ";
  64.         }
  65.         cout << endl << "side 2" << " " << endl;
  66.         for(int i=0;i<10;i++){
  67.             cout << i << ":" << side2[i] << " ";
  68.         }
  69.         cout << endl;
  70.     }
  71.     void print_vertical(){
  72.         cout << "vertical print has " << count << " data" << endl;
  73.         for(int i=0;i<10;i++){
  74.             cout << i << " : " << side1[i] << " : " << side2[i] << endl;
  75.         }
  76.     }
  77.     void set_side1(int a, string b){
  78.         side1[a] = b;
  79.         count++;
  80.     }
  81.     void set_side2(int a, string b){
  82.         side2[a] = b;
  83.         count++;
  84.     }
  85. };
  86. void main(){
  87.     table *t;
  88.     table_int t1;
  89.     t1.set_side1(2,7);
  90.     t1.set_side1(3,3);
  91.     t1.set_side2(1,6);
  92.     t=&t1;
  93.     t->print_vertical();
  94.     table_string t2;
  95.     t2.print_horizontal();
  96.     t2.set_side1(2,"boontee");
  97.     t2.set_side1(3,"viboon");
  98.     t2.set_side1(0,"supakit");
  99.     t2.set_side2(1,"kritawan");
  100.     t2.set_side2(0,"chutimet");
  101.     t=&t2;
  102.     t->print_vertical();
  103.     t->print_horizontal();
  104. }
Advertisement
Add Comment
Please, Sign In to add comment