联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> C/C++编程C/C++编程

日期:2020-09-03 10:17

Course: 159100 Introduction to Programming

Assessment: 01 Computer Programmes & 02 Computer Programmes

Course Learning Outcomes Assessed:

? Define variables and perform input/output operations.

? Control program flow with conditional and iteration statements.

? Write, compile and debug C++ programs.

Weighting: 30 %

Due Date: 6 September, 5:00 PM

This is an individual assessment.

Introduction

Massey University’s School of Food and Advanced Technology (SF&AT) has a water jet cutter (see

below). It is commonly used to cut 2D shapes out of metal sheets. The water jet uses water and garnet

to cut through the metal. The garnet is a consumable material that needs to be topped-up after the

water jet cutter has been used.

Figure 1: SF&AT's water jet cutter.

SF&AT’s Technical Services Manager, Mr Sean Rasmussen, wants to know the following:

? How frequently is the water jet cutter used each month?

? What day of the week is the water jet cutter most used on?

? What is the shortest, average, and longest times the water jet cutter is operated for each

month?

? What is the smallest, average, and largest amount of garnet used each month?

You are required to write a C++ program that answers these questions using the data provided.

Aims

The assessment’s aims are to demonstrate proficiency in:

? Writing, building, and running a C++ program.

? Defining a variable and using it.

? Loading data into a variable and displaying its value.

? Using statements to control the flow of a program.

? Using functions.

Objectives

The assessment’s objective is to:

? Write a C++ program that answer’s Sean’s questions.

The program should be able to:

? Load the given data into appropriate arrays.

? Use functions to compute the minimum, average, and maximum values in an array.

? Display the computed results.

The program should define and use functions named:

? minimum().

? average().

? maximum().

You need to define the type of the variable each function returns and the type/s of its parameter/s.

The program’s output should be formatted similar to the following:

Frequency

Times used in month 1 10

Times used in month 2 20

Most common day in month 1 Monday

Most common day in month 2 Tuesday

Shortest Average Longest

Run time in month 1 1.0 h:m:s 2.0 h:m:s 3.0 h:m:s

Run time in month 2 2.5 h:m:s 4.5 h:m:s 6.5 h:m:s

Smallest Average Largest

Garnet used in month 1 1.0 kg 2.0 kg 3.0 kg

Garnet used in month 2 3.2 kg 4.2 kg 5.2 kg

Requirements

You are required to:

? Write a C++ program that addresses the assessment’s objectives.

? Write a report detailing what you did, how, and why.

Resources

You will be provided with the following:

? Historical data collected from the SF&AT’s water jet cutter.

Submission Instructions

Add all your source code files and report to a .zip archive and name it in the following format:

FIRSTNAME_LASTNAME_ID.zip. Do not include your build directory.

Upload your submission to Stream before the due date.

Hints

01/02/2020 was a Saturday.

01/03/2020 was a Sunday.

You may find the following headers helpful:

? array.

? string.

? iomanip.

? iostream.

The following code shows how to read in a line of input;

std::cout << "Enter the date (D/M/Y); start time (H/M/S);

end time (H/M/S); and material used (KG):" << std::endl;

std::string line {};

std::getline(std::cin, line);

You could store a date or time value in an array<> container or a string. For example, the date

01/01/2020 could be stored as follows:

std::array<int, 3> dateArray {1, 1, 2020};

std::string dateString {"01/01/2020"};

You may find the array<> container’s at() function helpful.

You may find the string’s find() and substr() functions helpful.

The following code shows how to display an array<> container’s elements values and a string’s

values as a date:

std::cout << dateArray.at(0) << "/" << dateArray.at(1) << "/" <<

dateArray.at(2) << std::endl;

std::cout << dateString << std::endl;

Frequently Asked Questions

Q. How long should the report be?

A. It should be between 1000 – 1500 words.

Q. What Integrated Development Environment (IDE) should I use?

A. You should use Qt Creator.

Q. What compiler should I use?

A. You should use Qt’s MinGW kit’s compiler.

Q. Can I get an extension?

A. Yes, but only if it’s for a good reason. Extensions will be granted at course or offering

coordinator’s discretion.

Program Marking Rubric

The program is worth 2/3 of the assessment’s final grade.

D Range (40 – 49.99) C Range (50 – 64.99) B Range (65 – 79.99) A Range (80 – 100) Weighting

Poor Adequate Good Excellent.

Program

The program’s source code doesn’t

compile.

Each variable is named poorly. Each

variable’s data type matches the data it

is supposed to store poorly.

Functions are partially used.

Each function is named poorly. Each

function’s return type and input and

output parameters matches the data it is

supposed to work with poorly.

A common naming convention is

partially used. The source code’s

formatting is poor.

The program’s source code compiles,

but it has a lot of warning messages.

Each variable is named adequately. Its

purpose can be partially deduced from

its name. Each variable’s data type

matches the data it is supposed to store

adequately.

A modular style of programming is

partially used throughout the program’s

source code. Functions are partially

used.

Each function is named adequately. Its

purpose can be partially deduced from

its name. Each function’s return type and

input and output parameters matches

the data it is supposed to work with

adequately.

Comments are used adequately to

document the source code. A common

naming convention is partially used. The

source code’s formatting is adequate.

The program run, but has major issues. It

partially displays output in the format

specified.

The program’s source code compiles, but

it has some warning messages.

Each variable is named well. Its purpose

can be deduced from its name. Each

variable’s data type matches the data it

is supposed to store well.

A modular style of programming is

largely used throughout the program’s

source code. Functions are largely used.

Each function is named well. Its purpose

can be deduced from its name. Each

function’s return type and input and

output parameters matches the data it is

supposed to work with well.

Comments are used well to document

the source code. A common naming

convention is largely used. The source

code’s formatting is good.

The program runs, but has minor issues.

It largely displays output in the format

specified.

The program’s source code compiles

with no warnings or errors.

Each variable is named extremely well.

Its purpose can easily be deduced from

its name. Each variable’s data type

matches the data it is supposed to store

extremely well. Each variable is initialised

when defined.

A modular style of programming is used

throughout the program’s source code.

Functions are used extremely well. Each

function does one task very well.

Each function is named extremely well.

Its purpose can easily be deduced from

its name. Each function’s return type and

input and output parameters matches

the data it is supposed to work with

extremely well. Arguments are passed by

value or passed by reference, where

appropriate.

Comments are used extremely well to

document the source code. A common

naming convention is used consistently.

The source code’s formatting is

excellent.

The program runs without any issues.

It displays output in the format specified.

100 %

Report Marking Rubric

The report is worth 1/3 of the assessment’s final grade.

D Range (40 – 49.99) C Range (50 – 64.99) B Range (65 – 79.99) A Range (80 – 100) Weighting

Poor Adequate Good Excellent.

Introduction

The report’s introduction is poor. It

summarises the assessment’s

motivation, aim, and objectives. It

summarises the work contained in the

report.

The report’s introduction is adequate. It

presents the assessment’s motivation,

aim, and objectives. It presents the work

contained in the report. It summarises

the report’s structure.

The report’s introduction is good. It

describes the assessment’s motivation,

aim, and objectives. It describes the

work contained in the report. It presents

the report’s structure.

The report’s introduction is excellent. It

discusses the assessment’s motivation,

aim, and objectives. It discusses the work

contained in the report. It presents the

report’s structure.

5 %

Algorithm

The report’s algorithm section is poor. It

summarises the developed algorithm.

The report’s algorithm section is

adequate. It presents the developed

algorithm. It relates the algorithm to the

assessment’s motivation, aims, and

objectives. A figure is used to illustrate

the algorithm.

The report’s algorithm section is good. It

describes the developed algorithm and

its key stages. It discusses the algorithm

in relation to the assessment’s

motivation, aims, and objectives. A figure

is used to illustrate the algorithm.

The report’s algorithm section is

excellent. It discusses the developed

algorithm; justifying its key stages, and

highlighting its advantages and

disadvantages. It discusses the algorithm

in relation to the assessment’s

motivation, aims, and objectives.

Appropriate figures are used to illustrate

the algorithm.

30 %

Methodology

The report’s methodology is poor. It

summarises what was done. Some code

snippets are presented. A few tables,

figures, and listings are used to help

explain the work done.

The report’s methodology is adequate. It

describes what was done. The tools,

libraries, and language used are

presented. Code snippets are presented.

A few tables, figures, and listings are

used to help explain the work done.

The report’s methodology is good. It

describes what was done and how. The

tools, libraries, and language used are

described. Relevant code snippets are

explained. Some relevant tables, figures,

and listings are used to help explain the

work done.

The report’s methodology is excellent. It

discusses what was done, how, and why.

The tools, libraries, and language used

are discussed. Relevant code snippets

are explained in detail. A lot of relevant

tables, figures, and listings are used to

help explain the work done.

30 %

Results

The report’s results section is poor. It

summarises the implemented

algorithm’s output.

The report’s results section is adequate.

It presents a limited analysis of the

implemented algorithm’s output;

critiquing it in terms of a few relevant

metrics.

The report’s results section is good. It

presents an analysis of the implemented

algorithm’s output; critiquing it in terms

of some relevant metrics.

The report’s results section is excellent.

It presents a detailed analysis of the

implemented algorithm’s output;

critiquing it in terms of relevant metrics.

20 %

Conclusion

The report’s conclusion is poor. It

summarises the assessment’s outcome.

The report’s conclusion is adequate. It

presents the assessment’s outcome. It

relates the outcome to the assessment’s

motivation, aims, and objectives.

The report’s conclusion is good. It

describes the assessment’s outcome. It

discusses the outcome in relation to the

assessment’s motivation, aims, and

objectives.

The report’s conclusion is excellent. It

discusses the assessment’s outcome. It

discusses the outcome in relation to the

assessment’s motivation, aims, and

objectives, and other relevant works.

5 %

Overall

The report is poor. It includes a few

tables, figures, or listings. It summarises

what was done. It has a lot of spelling,

grammar, and punctuation issues. Its

fluency is poor.

The report is adequate. It includes a few

relevant tables, figures, and listings. It

describes what was done. It has a lot of

spelling, grammar, or punctuation issues.

Its fluency is good.

The report is good. It includes some

relevant tables, figures, and listings. It is

easy to read. It describes what was done

and how. It has some spelling, grammar,

or punctuation issues. Its fluency is good.

The report is excellent. It includes a lot of

relevant tables, figures, and listings. It is

very easy to read. It discusses what was

done, how, and why. It has a few

spelling, grammar, or punctuation issues.

Its fluency is excellent.

10 %


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp