|
-
May 21st, 2002, 09:28 AM
#1
help finishing program
//please help finish this program with the functions that have nothing in them......
// MENU.CPP
//
// This program illustrates the use of simple one-character
// commands. The program displays a menu, accepts a command
// and executes it. The application is an embryonic
// "Inventory Control System" which, at this stage of development,
// only maintains a list of "inventory items" (integers).
// Items are stored in an integer array. The "quantity" is
// not supported -- it is set to 1 for all inventory items.
//
// Author: Bill Wares
//
#include <iostream.h>
#include <iomanip.h>
#include <ctype.h> // Declares toupper(ch)
#include "apvector.h"
const int QUANTITY = 1; // Quantity for each item is set
// to 1 in this preliminary version.
// Function prototypes:
int Find (const apvector<int> &inventory, int partNum);
void Show (const apvector<int> &inventory, int partNum);
void Add (apvector<int> &inventory, int partNum);
void Remove (apvector<int> &inventory, int partNum);
void List (const apvector<int> &inventory);
//****************************************************************
//**************** main *******************
//****************************************************************
int main()
{
apvector<int> inventory; // Array of items (initially empty)
char cmd;
int partNum;
cout << "\n One Of Each, Inc.\n";
cout << " Inventory Control System\n";
for(; { // Repeat (until break)
// Show the menu and prompt:
cout << "\n"; // Output a blank line
cout << "\t (S)how inventory item\n"; // '\t' is tab
cout << "\t (A)dd item\n";
cout << "\t (R)emove item\n";
cout << "\t (L)ist inventory\n";
cout << "\t (Q)uit\n";
cout << endl;
cout << "Next command ==> ";
// Accept command:
cin >> cmd; // Read one char.
cin.ignore(80, '\n'); // Skip remaining input (up to 80
// chars) to the end of the line.
cmd = toupper(cmd); // Convert letter to upper case
// to allow lower case input
// for commands (for convenience).
// Quit if 'Q'
if (cmd == 'Q')
break; // Quit processing commands
cout << "\n\n****************************************\n";
// Process command:
switch (cmd) {
case 'S': // Show inventory item information
cout << "Part number: ";
cin >> partNum;
Show(inventory, partNum);
break;
///case ...
// ...
// ...
}
cout << "****************************************\n";
}
return 0;
}
//****************************************************************
//**************** Functions *******************
//****************************************************************
int Find (const apvector<int> &inventory, int partNum)
// Finds the part number, partNum, in the inventory array.
// Returns its index if found, -1 otherwise.
{
int i, nItems = inventory.length();
for (i = 0; i < nItems; i++)
if (inventory[i] == partNum)
return i;
return -1;
}
//****************************************************************
void Show (const apvector<int> &inventory, int partNum)
// Displays inventory information for the given part number.
{
}
//****************************************************************
void Add (apvector<int> &inventory, int partNum)
// Adds the new inventory item with the specified part number,
// partNum, to the inventory list.
// Checks whether partNum is already in the list.
{
int nItems;
if (Find(inventory, partNum) >= 0)
cout << "already registered in the inventory list.\n";
else {
nItems = inventory.length();
inventory.resize(nItems+1);
inventory[nItems] = partNum;
cout << "added to the inventory list.\n";
}
}
//****************************************************************
void Remove (apvector<int> &inventory, int partNum)
// Removes the item partNum from the inventory list, if it
// is there. Displays an appropriate message if partNum is not
// in the list.
{
int i, j, nItems;
i = Find(inventory, partNum);
if (i < 0)
cout << "not found.\n";
else {
nItems = inventory.length();
for (j = i+1; j < nItems; j++) // Shift items
inventory[j-1] = inventory[j]; // to fill the gap.
inventory.resize(nItems - 1);
cout << "removed from the inventory list.\n";
}
}
//****************************************************************
void List (const apvector<int> &inventory)
// Displays the inventory list.
{
}
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|