Here's an idea for a project, should be reasonably straightforward, I think.
The task is to write a system that acts like a cash register and stock taking system. The system should know about some number of different items (e.g. milk, bread, cheese, beer, potatoes), how much of each item is in stock and how much these items cost. When the system starts up all the stock levels of these items should start at zero.
The system should offer 3 choices:
1) Sale. Someone wants to buy stuff from you. The user is presented with a menu of the items and the current stock level and they input what they want to buy. The program should not allow them to purchase something that is out of stock. Once they are done they input something indicating that they are finished purchasing items and the program displays how much their bill comes to.
2) Delivery. You receive a delivery of stock and you need to input what items you have taken delivery of and how many of each item. As you input these values the stock level is increased accordingly.
3) Stock levels and daily takings. At the end of the day you'll want a report on the remaining stock levels (so you know how much stuff to order from your supplier) and you'd also like to know how much money you made that day. Once the report is printed out then the daily takings total can be zeroed ready for the next day's shoppers.
Bonus points for making the system easily extensible (even if it requires a recompile), should you want to add more types of item in the future.
