Develop and capture a short screen cast
1. Choose topic
2. Read around/research the topic to get a feel for possible content
3. Sketch out (back of envelope! outline only) what you consider the best angle to present the topic & what content you think is appropriate
4. Confirm outline (3) with module leader by email/quick 1:1 (to make sure you are on correct track)
5. Develop and capture a short screen cast for uploading (short – the appropriate size will vary, but 2-3 minutes (max 4) is the ballpark)
6. Upload the presentation to the module Wiki
7. Commit the presentation to your personal submission repository
Portfolio 1 – My First makefile1 Project
P1 is an individual exercise, developing the prime number project. As released, the project uses a makefile to build a debug version of the executable randomPrime; your task is to develop alternative programs with different functionality and to modify the makefile to add new targets for these (debug versions with the exception of release).
Interactive – this target interactively (using std::cin & std::cout) queries the user, who enters a number; the corresponding2 prime number in the sequence is output, on its own, on a new line.
Auto – this target will print the first 50 prime numbers, one per line, on std::cout
howMany – accepts a command line parameter and outputs the number of prime numbers less than this value; if no parameter is given, output just std::endl to std::cout
release – this target will produce a release executable of the randomPrime program, without any debug information; you must decide how to achieve this, which will likely require some changes to the makefile, not just additions.
Portfolio 2 – Parsing NMEA Sentences – phase 1 & phase 2
P2 is an individual exercise, involving the manipulation of text strings; the basis of the problem is to parse log files containing 2 types of NMEA sentences. The files are generated initially by a Sony camera with GPS functionality. Instances of log files can be found on NOW.
The files will contain RMC GGA and GLL sentences – the particular sentence format(s) are not needed until part (c), so the detail is omitted for the moment. All NMEA sentences start with a ‘followed by the identifier for the sentence type, ($GRMCL $GPGGA $GPGLL) and a varying number of comma-separated fields The sentences finish with a two character checksum, starting with ‘*’
In the file p2.cpp, implement the functions p2 declared in p2.h; do not include a main() function in p2.cpp. The latest version of this file includes p2c() & p2d() specifications.
You can include any libraries you need EXCEPT <iostream> – your functions should not perform any console I/O
There are numerous other sentence formats, which will need decoding in future; try to code with this in mind (avoid ‘magic’ character positions, prefer to search-expect other fields in your text source, which can then be easily ignored.
This item is worth 15% of the module marks, allocated as follows (/15)
p2a | p2b | p2c | p2d | Code quality (subjective) | |
/15 | 3 | 3 | 3 | 3 | 3 |