Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / Python Homework Help Skills assessment: Object-oriented programming tasks ICTPRG430 - Apply introductory object-oriented language skills (1) Instructions for this assessment This is a skill-based assessment and will be assessing you on your ability to demonstrate skills required in the unit

Python Homework Help Skills assessment: Object-oriented programming tasks ICTPRG430 - Apply introductory object-oriented language skills (1) Instructions for this assessment This is a skill-based assessment and will be assessing you on your ability to demonstrate skills required in the unit

Computer Science

Python Homework Help

Skills assessment: Object-oriented programming tasks

ICTPRG430 - Apply introductory object-oriented language skills (1)

Instructions for this assessment

This is a skill-based assessment and will be assessing you on your ability to demonstrate skills required in the unit.

This assessment is in one part:

1. Practical tasks.

The assessment also contains:

Assessment Feedback.

Submission instructions 

On completion of this assessment, you are required to submit it to your assessor for marking. 

Ensure you have written your name at the bottom of each page of this assessment.

Submit the following documents for each part:

Part 1: Practical tasks o A zipped folder including:

  • completed Python modules for Tasks 1-5
  • character-count.txt file for Task 4.

It is important that you keep a copy of all electronic and hardcopy assessments submitted to TAFE and complete the assessment declaration when submitting the assessment.

 

Assessment details          Instructions

What do I need to do to achieve a satisfactory result?

To successfully complete this assessment the student will be available at the arranged time to complete all the assessment criteria as outlined in the assessment instructions.

All parts of the observable task must be performed to a satisfactory level. 

All oral questions must be answered correctly to be deemed satisfactory in this assessment task: however, Assessors may ask questions to clarify understanding.

Assessment conditions

Assessment conditions will be safe and replicate the workplace. Noise levels, production flow, interruptions and time variances must be typical of those experienced in the programming and software development field of work. 

Assessment may be undertaken in normal classroom conditions, which is assumed to be noisy and similar to workplace conditions, or within the workplace. This may include phones ringing, people talking and other interruptions.

What do I need to provide?

USB drive or other storage method with enough free space to save work to.

What will the assessor provide?

  • An integrated development environment (IDE)
  • Applications for software development (PyCharm Community Edition)
  • Files provided in the resource folder

(Dip_Nwk_Programming_AE_Sk_3of3_SR1.zip)

Due date/time allowed

Time allowed is two hours.

Assessment location

This assessment will be completed in the classroom.

The student may access their referenced text, learning notes and other resources.

Supervision

This is a supervised assessment.

Assessment details

Instructions

Reasonable adjustment

If you have a permanent or temporary condition that may prevent you from successfully completing the assessment event(s) in the way described, you should talk to your assessor about ‘reasonable adjustment’. This is the adjustment of the way you are assessed to take into account your condition, which must be approved BEFORE you attempt the assessment.

Assessment feedback, review or appeals

In accordance with the TAFE NSW policy Manage Assessment Appeals, all students have the right to appeal an assessment decision in relation to how the assessment was conducted and the outcome of the assessment. Appeals must be lodged within 14 working days of the formal notification of the result of the assessment. 

If you would like to request a review of your results or if you have any concerns about your results, contact your Teacher or Head

Teacher. If they are unavailable, contact the Student Administration Officer.

Contact your Head Teacher for the assessment appeals procedures at your college/campus.

 

               

Specific task instructions

Download and unzip the resource folder (Dip_Nwk_Programming_AE_Sk_3of3_SR1.zip) for files referred to within the assessment.  This folder includes a folder with five Python modules.  Each module is related to an assessment task.  The assessment has five tasks in total. 

Before starting the assessment ensure you can open and successfully run each of the modules.  It is recommended you use PyCharm for this assessment, by opening the folder titled ictprg430-skills-test as a project.

 

Each task below provides example console output of what is expected.

               

Part 1: Practical tasks

Task 1

Add logic to the main function of the Task 1 module for processing a mathematical expression on two integer values with a single operator, as follows:

The order of operations is as follows:

  1. Prompt the end-user to enter an integer value.
  2. Prompt the end-user to select an operator – the available operators are minus, plus, multiplication and division [ - + * / ].
  3. Prompt the end-user to enter a second integer value.
  4. Display the result of the expression in words.

See Figures 1 – 4 for example expected console output.

 

 

 

Figure 1 - Subtraction Example: 10 – 5 = 5

 

 

 

Figure 2 - Addition Example: 5 + 5 = 10

 

 

 

Figure 3 - Multiplication Example: 5 * 5 = 25

 

 

 

Figure 4 - Division Example: 25 / 5 = 5

Task 2

Add logic to the main function of the Task 2 module for calculating the cost of booking a room.

  • Parallel lists must be used for storing the name and price of rooms. 
  • You must iterate through the lists and display the name and price of each room.
  • The end-user can select from the list of rooms and associated prices provided below:
    1. Single $45.50 per night
    2. Double $99.99 per night
    3. Luxury $165.25 per night
    4. Penthouse $1,095.50 per night

You are not required to validate values entered by the end-user and it is assumed only valid values will be entered i.e. the room type (1, 2, 3 or 4) and the number of nights (a positive integer value).

See Figures 5 – 8 for example expected console output.

 

 

 

Figure 5 - Single room for 5 nights - $45.50 * 5 = $227.50

 

 

 

Figure 6 - Double room for 3 nights - $99.99 * 3 = $299.97

 

 

 

Figure 7 - Luxury room for 2 nights - $165.25 * 2 = $330.50

 

 Figure 8 - Penthouse room for 1 night - $1,095.50 * 1 = $1,095.50

 

Task 3

Complete the logic for the classes Teacher, PartTimeTeacher and FullTimeTeacher (shown in Figure 9 - Teacher, PartTimeTeacher and FullTimeTeacher Inheritance) as follows:

  • The Subject, Teacher, PartTimeTeacher and FullTimeTeacher classes have already been added to the Task 3 module.  Ensure they have all necessary initializers, attributes, and methods, as per Figure 9
  • Implement inheritance, initializer delegation and polymorphism so the calculate_pay method for PartTimeTeacher and FullTimeTeacher behave differently as shown in Figure 10 - Console Output, Inheritance and polymorphism.
  • A full time teacher has a standard teaching load of 40 hours per week. Some teachers might choose to teach less than the standard load.  Hence, the amount to be paid to a full time teacher is calculated according to the formula: amount = (salary/52) * (teach_load/40)
  • A part-time teacher is paid for each subject they teach; the list of subjects is stored as a list.  The amount to be paid to a part-time teacher is calculated according to the formula: amount = hours * rate, for each subject taught.

Complete the following tasks:

  1. Initialise the _name field in the Teacher class initializer – this requires assigning the name parameter passed in as an initializer argument to the _name attribute.
  2. Add an initializer to the PartTimeTeacher class; the initializer must have two parameters, str name and List[Subject]. Because the PartTimeTeacher class inherits from Teacher, the name parameter needs to be passed to the base class initializer.

The subjects parameter needs to be assigned to the _subjects attribute.

  1. Complete the logic in the PartTimeTeacher calculate_pay method so the part-time teacher’s pay is calculated correctly, based on the formula provided above, and returned from the method.
  2. Add an initializer to the FullTimeTeacher class; the initializer must have three parameters, str name, float teach_load, and float salary. Because the

FullTimeTeacher class inherits from Teacher, the name parameter needs to be passed to the base class initializer. The teach_load parameter needs to be assigned to the _teach_load attribute, and the salary parameter needs to be assigned to the _salary attribute.

  1. Complete the logic in the FullTimeTeacher calculate_pay method so the full-time teacher’s pay is calculated correctly, based on the formula provided, and returned from the method.
  2. Add logic to the main function for instantiating and adding a new PartTimeTeacher object to the existing list of Teacher objects – teachers. The part-time teacher name and list of subjects have been provided.
  3. Add logic to the main function for instantiating and adding a new FullTimeTeacher object to the existing list of Teacher objects – teachers. The teacher name, teaching load, and salary have been provided.
  4. Iterate through the teachers collection and print the value returned by the get_details method for each element in the collection. The output must match that provided in Figure 10 - Console Output, Inheritance and polymorphism

  

 

Figure 9 - Teacher, PartTimeTeacher and FullTimeTeacher Inheritance  

 

Figure 10 - Console Output, Inheritance and polymorphism

               

Task 4

Add logic to the main function of the Task 4 module for calculating sales volume and sales revenue, per product, using a list of sold products in a provided text file.  Write the results to another text file. The two text files have already been provided in the module as seen in Figure 11 - Task 4, line-items and sales-report text files. All product names in in the lineitems.txt file are lower case, so there is no need to consider casing.

  • Read in the text from the provided line-items.txt file.
  • Iterate through each line in the text file.  The first line contains headers, so should be skipped.
  • Separate the three values found in each line.  Each line contains the product name, quantity sold, and unit price (the price of a single product), separated by a tab character.
  • Keep a running total for the quantity sold of each product; for example, the total quantity sold for ‘product b’ is 12.
  • Keep a record of the unit price of each product.
  • Write the result to the sales-report.txt text file; the summary should include the name of each product, the sales volume (total quantity sold), and the sales revenue (total quantity sold * by the product price).  See Figure 12 - sales-report.txt for a sample of the expected output.

 

 

 

Figure 11 - Task 4, line-items and sales-report text files

 

 

 

Figure 12 - sales-report.txt

Task 5

Add logic to the main function of the Task 5 module to display the numbers 50 down to 25 with the following conditions:

  • If the number is a multiple of 3, display [3] on the right-side of the number.
  • If the number is a multiple of 5, display [5] on the right-side of the number.
  • If the number is a multiple of 3 and 5, display [3 - 5] on the right-side of the number.

Note: A number is a multiple when it can be evenly divided without a remainder. 

Your logic must use a loop and only use the print function a maximum of four times.

For example:

  • 9 is a multiple of 3, as it can be divided evenly by 3: 9 / 3 = 3.
  • 10 is a multiple of 5 as it can be divided evenly by 5: 10 / 5 = 2.
  • 15 is a multiple of 3 and 5 as it can be evenly divided by both numbers: 15 / 3 = 5 and 15 / 5 = 3.

Figure 13 – Task 5, Example Console Output           

Option 1

Low Cost Option
Download this past answer in few clicks

22.99 USD

PURCHASE SOLUTION

Already member?


Option 2

Custom new solution created by our subject matter experts

GET A QUOTE