Computer Science I - programming in C++

Eckel B.: Thinking in C++ [[level: intermediate]]

WikiBooks: C++ Programming [[level: intermediate]]

Cplusplus: tutorial [[level: intermediate/beginner]]

Google

general information
- you can send applications by email (code and a screenshot is enough) to "stop the timer"
- by not sending and not showing your application on time you will get -1 point for every working Thursday
- every task/application has to be discussed with me, to get appropriate points



Results of the "final test" (exam date: 2019-01-23)

Live-stream of verification of your results will be available here. Live stream scheduled on 2019-01-23 23:23.



Application [5] //*shop

// if
// arrays
// pointers
// text files

Application for a Gas Station, for selling gasolines, food and items. Quantities are to be stored in a text file.

1 pt max:
- Loading the item/food/gasolines quantities from a file at startup
- Option/possibility of selling some quantity of a gasoline type
- Option/possibility of selling some items/food (more than one at a time)
- All transactions should be logged (including date, hour, prices) in transactions.txt
- Saving the item/food/gasolines quantities to a file after a transaction

3 pts max:
- Every functionality that is mentioned above should be programmed using a separate function
- The items/food/gasoline should be implemented using structures
- The application uses arrays and pointers

5 pts max:
- GUI
- Pointers are being used in a useful and interesting way
- A possibility to prepare a report on transactions that took place, and a report on the items/food/gasoline quantities that are were sold.

Application [6] //solar

//file operations
//loops
//arrays
//dynamic memory allocation
//pointers

up to 3 points:
- the program reads from the indicated file (2017-07.txt) the data in the format presented in Fig.1.
- the program stores data in appropriate arrays
- shows data on any kind of graph
- shows the values for the measurement pointed by the mouse cursor

up to 5 points:
+ shows data on a super-magnificent cool and interactive chart
+ program stores data in memory that was allocated dynamically
+ overall data operations are carried out using pointers

information:
// the figures and a data file will be uploaded later (on 30th of December?)

Application [7] //struct,dyn

//structures
//arrays
//dynamic memory allocation
//loops
//pointers

up to 0 pts:
an application...

up to 1 pt:
+ that makes any sense

up to 3 pts:
+ that fills a structure with random^ items//data
+ by using pointers

up to 5 pts:
+ inside an array of a dynamic size

^ by 'random' I mean something useful - if you randomize 'name', you should see names inside the array; if you randomize 'salary' you shold have also reasonable values inside

Application [4] //cs

Upgrade the idea of the application presented by the lecturer (bouncing square) by integrating/using the following ideas:

1 pt max:
- uses timer for moving the square /sth
- uses events for capturing mouse HMI interaction

3 pts max:
- graphical image instead of the square
- graphical background
- wall collisions
- human interaction (== a game)
- hits/points

5 pts max:
- collisions with additional objects
- moving additional objects
- sound
- 100% graphical
- doublebuffering



Copyright 2012-2019 Michal Podpora