ITC106 Programming Principles Assignment

Assignment Help Other Engineering
Reference no: EM132523852

ITC106 Programming Principles - Charles Sturt University

Learning outcome 1: be able to explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding;

Learning outcome 2: be able to demonstrate and explain elements of good programming style;

Learning outcome 3: be able to identify, isolate and correct errors in all phases of the programming process;

Learning outcome 4: be able to interpret algorithms and program code;

Learning outcome 5: be able to appreciate and understand the concept of object orientation as an approach to data abstraction;

Learning outcome 6: be able to apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems;

Learning outcome 7: be able to write code in an appropriate coding language;

Learning outcome 8: be able to examine, recognise and be aware of alternate programming approaches to include a broad discussion of procedural and object oriented approaches.

Assessment - Working with Files and Strings

TASK

After your successful development of the reward points and discount calculator, R4S has decided to further employ you to develop an additional system for storing and retrieving customer details. This system has two main programs and a module that contains the common functions used in the two programs.

Program 1: Write Customers
The first program will allow the user to enter the details for each customer, and save these details into a file specified by the user. The entered details are the customer's last name, first name, join date, and the reward points. The program must use a loop that allows the user to enter the details for additional customers. The program should also check the input for validity according to the following rules:
• Last and first names can only contain alphabetic letters.
• Join date must be in the format day/month/year and can take values from 1/1/1990 to 31/12/2020.
• The months 1, 3, 5, 7, 8, 10 and 12 must have days in the range 1 to 31.
• The months 4, 6, 9 and 11 must have days in the range 1 to 30.
• The month 2 must have days in the range 1 to 28 (ignore leap years).
• The reward points must be a valid integer number.

Program 2: Read Customers

The second program will open a file specified by the user for reading. The program will read each record from the file, split it into its component fields and check each field for validity. The rules for validity are similar to those of Program 1, with the additional rule that each record must contain exactly four fields separated by commas. Your program should print out each valid record it reads. Your program should terminate when it reads an invalid record, printing out on which line number the error occurred, and what the error/s were.
A typical example of the display of your program should be similar to the following:

Common Module
The common module should contain the common functions that are used in both Program 1 and Program 2, such as error validation functions. This module should be imported in each of Program 1 and Program 2.

You need to develop your programs by completing the following tasks:

Task 1
For each program, draw a flowchart that presents the steps of the algorithm required to perform the task specified. Note: You are only required to draw the flowchart for the main program (exactly two flowcharts are expected). Any functions used in the programs can be represented with the appropriate flowchart symbol, but are not required to have detailed flowchart representations.

Task 2
For each program, select at least three sets of test data that will demonstrate the normal operation of your program; that is, test data that will demonstrate what happens when a valid input is entered. Select two sets of test data that will demonstrate the abnormal operation of your program; that is, test data that will demonstrate what happens when an invalid input is entered or when an error is encountered.
Set it out in a tabular form as follows: test data type, test data, the reason it was selected, the output expected due to using the test data, and finally a screenshot of the output actually observed when the test data is used. It is important that the output listings (i.e., screenshots) are not edited in any way.

Task 3
Implement your programs in Python. Comment on your code as necessary to explain it clearly. Run your programs using the test data you have selected and complete the last column of test data tables above.

Note: Need to do assignment 2

Attachment:- Programming Principles.rar

Reference no: EM132523852

Questions Cloud

Difference between accrual accounting and cash accounting : Describe the difference between accrual accounting and cash accounting, and identify one benefit and one drawback of accrual accounting compared to cash
What are the dangers of the advances : What are some of the technological advances that should help the police solve more crimes? What are the dangers of these advances?
How much is the interest expense for the month of July : The estate equity at July 31, 2016 is P97,600. Assets to be realized 406,500. How much is the interest expense for the month of July
Relationship between a bond price and its yield : Please explain the relationship between a bond's price and its yield
ITC106 Programming Principles Assignment : ITC106 Programming Principles Assignment Help and Solution, Charles Sturt University - Assessment Writing Service - explain the steps involved in a disciplined
Criminal punishments : Compare and contrast defenses of diplomatic, legislative, and witness immunity. Analyze the overall role that the defenses play within criminal justice system
Prepare production report for department using fifo methods : Prepare production report for the department using the weighted-average and FIFO methods.
Financial analysis and improving business perfomance : For each document, identify how it can be useful in financial analysis and improving business perfomance.
What evidence-based argument would you use with strategy : An overwhelming majority of criminal cases are settled by plea bargaining rather than by trial. If an individual has been charged with a crime, the prosecutor.

Reviews

Write a Review

Other Engineering Questions & Answers

  Characterization technology for nanomaterials

Calculate the reciprocal lattice of the body-centred cubic and Show that the reciprocal of the face-centred cubic (fcc) structure is itself a bcc structure.

  Calculate the gasoline savings

How much gasoline do vehicles with the following fuel efficiencies consume in one year? Calculate the gasoline savings, in gallons per year, created by the following two options. Show all your work, and draw boxes around your answers.

  Design and modelling of adsorption chromatography

Design and modelling of adsorption chromatography based on isotherm data

  Application of mechatronics engineering

Write an essay on Application of Mechatronics Engineering

  Growth chracteristics of the organism

To examine the relationship between fermenter design and operating conditions, oxygen transfer capability and microbial growth.

  Block diagram, system performance and responses

Questions based on Block Diagram, System Performance and Responses.

  Explain the difference in a technical performance measure

good understanding of Mil-Std-499 and Mil-Std-499A

  Electrode impedances

How did this procedure affect the signal observed from the electrode and the electrode impedances?

  Write a report on environmental companies

Write a report on environmental companies

  Scanning electron microscopy

Prepare a schematic diagram below of the major parts of the SEM

  Design a pumping and piping system

creating the pumping and piping system to supply cool water to the condenser

  A repulsive potential energy should be a positive one

Using the data provided on the webvista site in the file marked vdw.txt, try to develop a mathematical equation for the vdW potential we discussed in class, U(x), that best fits the data

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd