ELEC362语言编程代做、代写programme设计程序
Department of Electrical Engineering and Electronics
ELEC362
Assignment
Scientific data analysis programme
Module ELEC362
Coursework name Assignment
Component weight 10%
Semester 1
HE Level 5
Lab location Library or personal computers/laptops
Work Individually
*Estimated time to finish 8-10 hours (code only)
Assessment method Individual, formal word-processed report
Submission format Online via VITAL
Submission deadline 11.59 pm on the 15th November, 2020
Late submission Standard university penalty applies
Resit opportunity None except for extenuating circumstance
Marking policy Marked and moderated independently
Anonymous marking No (the marker needs to link the code to the report)
Feedback via VITAL GradeMark? / Turnitin Feedback Studio
Expected release of marks date 15 business days from the deadline
Learning outcomes LO1: Using C++ to implement a console-based application.
*Note: This estimate may vary based on the need to debug your code. Make sure you start
working on the assignment as soon as possible.
Page 2 of 4
The assignment
Design and implement a console-based C++ programme that reads data from multiple files
in the same folder, processes and writes the processed data into a new file.
The input files will be named “Experiment” followed by a number. The following figure
shows a folder containing 5 files. The number of files is not known in advance. The files are
numbered consecutively (if file 6 does not exist then files 7 and above do not exist).
The content of one of these files is similar to that shown in the following figure, the number
of rows in the files is not known in advance.
All files have the same format. All start from time = 0, and the time difference between any
two points in any file is 0.1 s. The files differ from one another by the temperature at a given
time, and by the number of data points (i.e. the last data point in one file can be 0.7 s while
in another it can be 1.5 seconds).
The programme must calculate the average temperature from all the data read from the
files at a given time. The output file should have three columns, namely the time, the
averaged temperature, and number of data points used in that average. For example, if 3
out of 5 files have data points at 1.5 s, the third column for t = 1.5 s should have the number
3, while for t = 0 s the third column should have 5.
You should write a C++ programme that implements the tasks described above. When
developing your code, you should:
– test your code for different cases with test files of your own,
– maximise the use of functions in your code,
– consider potential run-time errors and how to handle them,
– look at C++ documentation to see if there are any commands that can make your
code easier to implement.
– Design the programme such that it is capable of processing large number of files with
large number of datapoints.
Page 3 of 4
Finally, you should make the programme as professional as possible. Make sure your work
takes into account the practical notes given in the lectures.
The deliverables
Every submission should consist of source file + an executable file + brief report. It must
have the student’s name and the student ID on the cover. The report does not need an
introduction or a conclusion, it must have the following sections:
? How the programme works (explain the idea of the algorithm, use a block diagram)
? User instructions (how should the user use it)
? Testing and verification attempts
? Appendix: source code (must be in machine readable format).
Mapping the assignment to modules’ material:
Aspect Where it is covered
Creating an executable file Lecture 1
Reading and writing to a file Lecture 2, Lab session 2
Mathematical operations Lecture 3
Control structures Lecture 4
Working with functions Lecture 5, lab session 3
Memory management Lecture 5, lab session 3
Dealing with run-time errors Lecture 5
Handling arrays, variable sized
arrays, or vectors
Lecture 3, Lecture 5, or Lecture 10
Further reading/tutorials http://www.cplusplus.com/reference/fstream/fstream/
http://www.cplusplus.com/doc/tutorial/files/
Page 4 of 4
Marking Criteria
Criteria
(weight %) What does it mean?
Indicative characteristics
Adequate / pass
(40%)
Very good / Excellent
Algorithm and
design of the
programme
(25%)
Does the programme
do what it is designed
to do? Does the
programme handle
memory efficiently?
Does the programme
make a good use of
control structures?
? The programme does
what it designed to do
with clear
shortcoming.
? The use of memory is
completely inefficient
but is working.
? Control structures are
barely used.
? The code runs for a
long time to process
few lines in the data
file.
? The programme does what it
designed to do without any
flaws.
? The memory management is
very efficient.
? The code runs relatively fast.
Code and
implementation
(25%)
Is the code well
organised? Are the
variables named
properly? Is the code
well commented?
Does it use the most
suitable datatypes for
the variables?
? The code shows the
steps but is difficult to
understand what it
does.
? Poorly commented
code.
? The naming of the
variables is arbitrary
and does not give any
idea on what the
variables are used for.
? The code is written in very
organised way that is easy to
follow.
? The code is very well
documented.
? The variable naming is
appropriate and follows
professional naming roles.
Verification and
Error-Handling
(25%)
Has the code been
tested? What does
the programme do if
there is a run-time
error? What does the
code do if the input
file template is
incorrect?
? The code was tested
for one case only.
? The code contains
minimal error
handling.
? No evidence for
verification or error
handling is given in
the report.
? The code has been
thoroughly tested.
? Error handling has been done
professionally for a number
of potential run-time errors
and user input errors as well.
Report
(25%)
Is the report clear and
descriptive? Is it
concise? Does it have
all sections? Are the
user instructions
given clear?
? The report is
understandable but
contains many errors.
? The length of some
sections is
inappropriate – either
too short or too long.
? The source code is
given in the appendix
but is not machine
readable.
? The report is well written,
and all the relevant
information it should contain
are clearly stated.
? The report is concise.
如有需要,请加QQ:99515681 或邮箱:99515681@qq.com 微信:codehelp
郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。