CS 1400 Fundamentals of Programming

Programming Project 5: Sales Invoice Application


At the completion of this project, you will have created an application that

Project Description:


In this project you will create a class that models a simple Sales Invoice. All of the data for a sale and all of the business logic required for your program will be contained in your SalesInvoice class. At a minimum, you class should contain

  • A variable to hold the number of items sold, and
  • a variable to hold the unit price for these items.

    Your class should also contain the methods required to calculate the values needed by the Form class when it displays the invoice. Design your user interface so that it offers the functionality shown on the left. Your interface should be intuitive and easy to use.


    Your program should work as follows:

    You can find some hints for doing this program here

    Format and document your code in accordance with the course style guidelines.  Include a file prologue identifying you as the author.  Be sure that you have complete method prologues for every method that you write. Submit your project using the instructions outlined in the Course Syllabus, Programming Projects section.

    File(s) to Submit:

    Place your complete project folder into a zip file and name the zip file
    proj_05_your-initials_V1.0.zip. For example, I would name my file proj_05_RKD_V1.0.zip. Submit this assignment as Project #5 on Canvas.

    Grading Criteria

    Description Points possible Your points

    Project meets the following guidelines:
    o Source code files contain a declaration that you did not copy any code
    o Project has been submitted to Canvas
    o Code meets style guidelines
    o Code is properly documented


    Your project contains a SalesInvoice class that encapsulates all of the data and the methods required to model a sales invoice, as outlined in the specifications above. Your program correctly uses an object of the SalesInvoice class to store the sales data and calculate needed values. There is a clear separation of Form operation and business logic in your program.


    Your user interface works as instructed and your program calculates and displays the required information correctly.


    Early Bonus (+3 pts) or late penalty (-20% per day)




    Sample Program

    You can get an executable that runs correctly here!