Create a program for a pizza shop

Assignment Help Web Project
Reference no: EM13944870 , Length: 750 Words

Assignment- Parallel Implementations

This assignment will test your skills in programming applications to specification in a number of different programming languages.

Assignment Overview

You are tasked with creating a program for a pizza shop- however, as this is a comparative languages course, you will be creating the same application in the following programming languages:

• C, • Python,• Java and • Lisp.

As you implement the application in each language, you should keep notes on the features of the languages used, which you found useful, as well as any issues or complications which arose due to the complexity or lack of any language features. A brief discussion based on these programming features for each individual language accompanying each implementation is required. Finally, a comparative overview of the languages highlighting applicability based on your experience in the design, implementation and debugging of your code is also required.

If you foresee or encounter any complications, you may opt to implement or incorporate additional language features which may be lacking, i.e. data structures. This can be done via:

• Your own implementation,

• Through libraries, or

• Via the incorporation of existing source code. You can use code found on the Internet, but use of any existing code must be referenced.

Program Specification

Users may order one or more pizzas, where each pizza may be either: small, medium or large.

Small pizzas cost $5, medium pizzas cost $8 and large pizzas cost $12.

All pizzas come on a tomato base (for our pizza shop, this will be the only option), and will have the topping cheese by default, at no extra cost. Users may choose up to a maximum of four additional toppings (bringing the total to five) from the following list, where each topping adds an additional $1 to the price of the pizza:

• Bacon,
• Olives,
• Ham,
• Mushrooms,
• Pineapple, • Salami,
• Anchovies.

A pizza order consists of an order for one or more pizzas, where each pizza has a size, and may optionally include a list of up to four additional toppings.

Each pizza order must be marked as either to be collected or to be delivered.

If the pizza is to be collected then the order requires a name and a phone number to be valid.

If the pizza is to be delivered then a name, phone number and address are required to be valid. In addition, if the order total is less than $30 then an $8 delivery fee is added to the total.

The application must be error tolerant and capable of accepting keyboard input to store a number of pizza orders in memory (they do not have to be persisted to file), as well as displaying an order summary which include details of all orders, including:

• The details of each pizza in the order,
• The total cost of the order, and
• The name, phone number and (if required) address of the person who made the order.

Suggested Development Environments

Codeblocks for C 99

Code::Blocks can be downloaded from: https://www.codeblocks.org/downloads/binaries

To create a new C project is: When you create a project, choose File | New and then Console Application, and then choose C as the programming language.

IDLE for Python

Python, including the IDLE development environment can be downloaded from: https://www.python.org/downloads/ Eclipse for Java 7 or

Java 8

Eclipse may be freely downloaded from: https://www.eclipse.org/downloads/

Eclipse does not come with the Java JDK, which must the downloaded separately from: https://www.oracle.com/technetwork/java/javase/downloads/index.html

Ensure that your Eclipse type and Java type match - i.e. 32-bit Java for 32-bit Eclipse, or 64-bit Java for 64-bit Eclipse. If you mix and match it won't work.

GNU CLisp for Common Lisp

CLISP 2.49 can be sourced from: https://sourceforge.net/projects/clisp/files/latest/download

Any good text editor would be suitable for writing the source code.

Additional Documentation - Language Suitability Report

The design of each programming language incorporates a number of decisions about the language which make it more or less suitable for given tasks. During your implementation of the pizza program in each of the languages you should make notes about the language features which exist or do not exist, and which have therefore made program development easier or more difficult.

Where a language has not provided a feature which would have been useful to the implementation of the program, or where the complexity of using a language feature has been high you should remark upon it and briefly discuss a mechanism or feature of another language which would have made development easier.

After completing the application in all languages (or as many as you can), discuss the comparative ease of implementation in terms of the design, implementation and debugging for each programming language, including how robustness issues were addressed.

Submission and Marking Process

You must supply your program source code files and language suitability report documentation in as single compressed archive called:

ITECH5403_Assignment_2_ YOUR-NAME _ YOUR-STUDENT-ID .zip

You may supply your programming language suitability report in either Word or LibreOffice/OpenOffice format in which the document can be edited - no proprietary Mac specific formats, please.

Assignments will be marked on the basis of fulfilment of the requirements and the quality of the work. In addition to the marking criteria, marks may be deducted for failure to comply with the assignment requirements, including (but not limited to):

• Incomplete implementation(s), and
• Incomplete submissions (e.g. missing files), and
• Poor spelling and grammar.

Student name: Student ID:

Implementation of the pizza shop program in the C programming language. Areas of note include:

- Use of data structures,

- Robust input handling which does not cause program termination if provided with bad data (i.e. program expects a number, gets given alphanumerical data).

Discussion on implementation:

- Language features, issues and suitability.

Implementation of the pizza shop program in the Python programming language. Areas of note include:

- Python Standard library,

- List mechanisms,

Discussion on implementation:

- Language features, issues and suitability

Implementation of the pizza shop program in the Java programming language. Areas of note include:

- Object orientation mechanism / method calls,

- Error handling

- Standard Java libraries

Discussion on implementation

- Language features, issues and suitability

Implementation of the pizza shop program in the Lisp programming language. Areas of note include the Lisp:

- Use of recursion

- lists

- Inbuilt data structures

Discussion on implementation

- Language features, issues and suitability

Documentation and discussion of the comparative ease of implementation (design / implement / debug) in each programming language, including how robustness issues were addressed.

Reference no: EM13944870

Questions Cloud

Develop a better understanding of attendee motives : The event organiser in Gold Coast is seeking to develop a better understanding of attendee motives. From previous iterations of delivering the event, the managers know that attendees can be classified into two primary groups: tourists and non-tour..
Application that uses random no generation to create sentenc : After preceding application is written, modify it to produce a short story consisting of several of these sentences. (How about the possibility of a random term-paper writer?)
Why is a needs assessment so important : Why is a needs assessment so important? What are some of the pitfalls of an improperly conducted needs assessment, or of not conducting one at all?
Effect of studying modern popular culture on personal values : Compose a 1- to 2-page paper in which you do the following: Appraise the effect of studying modern popular culture on your personal beliefs and values. Discuss the extent to which your consumption of and attitude about popular culture may or may not ..
Create a program for a pizza shop : You are tasked with creating a program for a pizza shop- however, as this is a comparative languages course, you will be creating the same application in the following programming languages
Expected number that will be vaccinated : Federal health officials estimate that 67% of all those over age 65 receive the flu vaccine. Suppose 8 people over 65 will be randomly selected. Which of the following is the expected number that will be vaccinated in such a random sample of 8 peo..
One-page description of a film that uses jazz music : An example would be Otto Preminger's Anatomy of a Murder. It was filmed in 1959. The director was an Austrian born director named Otto Preminger. The score was provided by Duke Ellington. Etc.
Application which property would be undesirable in hash : Please review the problem and explain each step of the solution listed below, and give me an example of an application which this property would be undesirable in a hash function.
Improving quality of health care services : Improving Quality of Health Care Services - Select one initiative used to improve quality and/or safety of health care. Summarize the initiative and provide your views on the effectiveness of this initiative and how it can be improved

Reviews

Write a Review

Web Project Questions & Answers

  Designing a web site on a topic of the students own choice

A definition of the sort of users that would be expected to access the site. This should incorporate a description of any special provision needing to be made to make the site usable for disabled users (if that is appropriate).

  Develop a web-based portfolio containing samples

Develop a resume using a 2-page resume format. You may also use a web-based portfolio containing samples of your work and courses you have taken.

  Create the root html element and nest the head element

Use your text editor to create a new file named basic.htm, and then save it in the tutorial.01\review folder included with your Data Files. Add the doctype for an HTML5 document. Create the root html element and nest the head and body elements withi..

  How does the website url relate to the business name

How well does the website address legal issues associated with use of the website or engagement in transactions?

  Develop a career oriented website for guide higher education

Develop a Website: An education consulting firm would like to develop a career oriented website for guide them for higher education in Australia.

  How to develop an e-commerce strategy and prototype

Evaluation of youre-commerce strategy in terms of Porter's competitive forces model (http://www.buildmyonlinestore.com/articles/how-defensible-is-your-e-commerce-business-model/).

  The tradeoffs the life of development phase of the project

Initial Plan budget. (Using math for decision-making)You are a manager with budget authority for a new IT project that is being developed for your department. The project is being developed internally by the company IT staff

  Website migration project

Website Migration Project

  Create a new web site named pizza

Create a new Web site named pizza - Create the necessary validation control instances to make sure that all of the input values are valid. Display an error message to the right of the corresponding control if the input is not valid.

  Create a one-page professional-looking personal website

Create a one-page professional-looking personal website using only HTML and CSS. You may build your site on any topic of your choosing.

  Mlb project plan

Cover Page with project title, team names course number and name, professor's name, date.

  Study and critique an enterprise website

Create a website to present your results. You must critique a website that is different from the rest of the class

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