Anne Dawson: CSCI120A_LAB3_FA04.htm   

 

Last updated: Wednesday 29th September 2004, 7:11 PT

 

This document is subject to change without notice.

 

Please report any errors or omissions in this document:

adawson@coquitlamcollege.com

 

Special instructions:  For this assignment you may work in teams of 2, or alone.  This lab is due at the end of the lab session.

 

 

CSCI120A

 

Introduction to Computer Science and Programming

Fall 2004

Lab Assignment 3

 

 

Step 1

 

Study the following:

 

Note: you do not type in the code of your program until Step 4.

Employee Salary Calculations.

An employee is paid at a rate of $20.75 per hour for regular hours worked in a week. Regular hours are up to and including 40 hours per week.  Any hours in a week worked over regular hours are paid at the overtime rate of time and a half (i.e. $20.75 x 1.5 per hour). The gross pay is calculated according to the number of hours worked in a week. Added to the gross pay for each employee each month is the sum of $54 which each single employee pays for their Medical Services Plan (MSP). If the employee is married, $36 is added to the gross pay for MSP instead of $54.

 

From the gross pay there are a number of deductions per month:

 

20% of gross pay is deducted for federal income tax (FIT).

5% of gross pay is deducted for Canada Pension Plan (CPP).

A lump sum of $75 is deducted for Extended Medical Insurance (EMI).

 

Your program should allow the user to enter the employee's name, their marital status (single or married) and the number of hours worked in each of the four weeks of the month. The number of hours can include a fractional part, e.g. 36.9. Your program calculates and displays the gross pay based on the total hours worked each week (rounded to the nearest integer, e.g. 36.9 is rounded to integer 37) and includes the MSP payment. The program calculates and displays the value of each of the deductions. Finally, the program displays the net salary (the take-home pay) for the employee which is calculated from gross pay minus deductions. For bonus points, print out your numerical currency values to 2 decimal places.

 

Step 2

 

Design an algorithm (the steps to solve the problem). You should have the algorithm approved by your instructor before going on to the next step.

The following web page will help you design your algorithm and pseudocode:

http://www.coquitlamcollege.com/adawson/Pseudocode.htm

 

Step 3

 

Development the pseudocode from your algorithm.

The following web page will help you design your algorithm and pseudocode:

http://www.coquitlamcollege.com/adawson/Pseudocode.htm

 

Step 4

 

Using your pseudocode as a guide, implement your program in the Python language. Use the IDLE GUI to edit and run your program:

http://www.coquitlamcollege.com/adawson/Python_Editor_IDLE.htm

 

Your program should start with a comment block that contains the following information:

 

#  File:       lab3.py

#  Purpose:    Employee Salary Calculations

#  Programmer: [your name]   

#  Partner:    [your partner's name]

#  Course:     CSCI120A

#  Date:       Wednesday 29th September 2004

#  Test data:

 

Please note: any lines in a Python program that start with the # symbol are known as comments. Comments are ignored when the program runs, but are useful when we read a program, because they supply information about the program.  They are always used at the top of a program to supply information about the purpose of a program, its file name, the programmer etc, as shown above. They are also used in the body of a program to explain parts of the program which may be hard to understand. Example programs in this course will demonstrate the correct use of comments. You are expected to supply the above set of comments (updated appropriately) for all of your lab and homework programming assignments.

 

Step 5

 

Test your program by running supplying your own test data. You should test your program with at least 3 sets of test data. Show your test data and results in comments at the top of your program.

 

Step 6

 

At the end of the class, save your program file (lab3.py) to your folder on the network in:

 

CSCI120A\Week04\Lab03

 

 

Program points will be based on the following marking scheme:

 

Marking Scheme: CSCI120A   -   Lab 3  -   Employee Salary Calculations

Student name(s):

Category

Points

Description

Algorithm

15

An informal description of the steps that must be taken to solve the problem.

ref: http://www.coquitlamcollege.com/adawson/Pseudocode.htm

Pseudocode

15

A formal description of the steps that must be taken to solve the problem.

http://www.coquitlamcollege.com/adawson/Pseudocode.htm

Comments

10

The program is commented appropriately.

Style

15

The source code should use meaningful variable names (identifiers).

Output

15

Screen prompts and results should be user-friendly.

Correctness

10

The program should output correct results.

Completeness

10

The program should be complete.

Test

10

Comments in the code explain how the code was tested.

 

 

Assignment Presentations :  In the next class, a random selection of lab assignment programs will be presented to the CSCI120A group.