DShelf002
Home ] Up ]

 

// file     DShelf002.cpp
// authors  AOU
// date     2006.02.08

/*
function             |  int a[MAX_SHELF_WIDTH] vs CBook books[MAX_SHELF_WIDTH]
------------------------------------------------------------------------------
constructorDefault   |                         |
isValid              |                         |
constructorRandom    |                         |
constructorWidth     |                         |
constructorFragmented|                         |
insertAtLeft         |                         |
displayDetailed      |                         |
displaySimple        |                         |
displayBrief         |                         |
isEmpty              |                         |
randomBook           |                         |
randomBookPointer    |                         |
search               |                         |
remove_byID          |                         |
remove_byPointer     |                         |
reclaimSpace         |                         |
reclaimableSpace     |                         |
------------------------------------------------------------------------------
*/


#include <iostream>
using namespace std;


// Constants
int const UNDEFINED       = -9;

int const MIN_SHELF_WIDTH =  5;
int const MAX_SHELF_WIDTH =  40;//100;

int const MIN_BOOK_ID     =  1;
int const MAX_BOOK_ID     =  9;//100;

int const TEST_COUNT      =  10;


class CBook
  {
  private:
    int id;
    int width;
  public:
    CBook(void);
  };

class CDShelf
  {
  private:
    int width;          //  width of the bookshelf          
    int count;          //  number of books on shelf    
    int widthOccupied;  //  total width of book on shelf
                        //  should it include empty holes?
                        //  should not include empty holes
                        //  instead use spaceAvailable
    int a[MAX_SHELF_WIDTH];
    //vs 
    CBook books[MAX_SHELF_WIDTH];

  public:
  };


void main(void)
  {
  cout << "Hello\n";
  }
/*
 //  book id, 0 for book removed
 //  book width
 //  pointer to book on right 
 //  pointer to book on left 

 //  points to the leftmost book 
 //  points to the rightmost 
 //  width of the bookshelf      
 //  number of books on shelf    
 //  total widt of book on shelf

 //  test_constructorDefault     
 //  test_isValid
 //  test_constructorRandom
 //  test_constructorWidth       
 //  test_constructorFragmented

 //  test_insertAtLeft
 //  test_displayDetailed
 //  test_displaySimple
 //  test_displayBrief
 //  test_isEmpty
 //  test_randomBook
 //  test_randomBookPointer
 //  test_search
 //  test_remove_byID
 //  test_remove_byPointer
 //  test_reclaimSpace
 //  test_reclaimableSpace

*/