This course in the 2021 spring semester is in Hungarian language
Please, register yourself for the exam in NEPTUN! The exam will be on Monday, 17th, 16:00-17:30 on Canvas.
Based on the Polynom task I will offer you the exam mark. I f you accept it, you do not need to take the exam.
During the exam you will write a not too complex C++ class based on the material we practiced. You can use any materials available online, except human help. You will submit your solution via Canvas copy-pasting your single header containing your class. (Normally, we implement our non-template classes in a header and a source, but here - for simlicity - we ask you to put everything in your header.
There will be a chance to repeat your exam in the unlikely case you need it.
During the semester students will work on a small C++ project which consists from 3-4 major milestones. At each milestone students should implement some part of the project according what they learn by that time. Each milestone is evaluated separately. At the end of the semester students will write a C++ program as an exam. For this events you can use all notes, books or internet resources except human help.
The final grade is based on the following factors:
- The submissions of the student task and the canvas examples: 50%.
- Writing an exam program in the exam period: 50%
Due to the current Covid-19 situation, I started to provide on-line materials. I will upload supporting videos for the lectures, practices and also for the student project. See the links to the videos at the beginning of each lecture, practice and the solution parts of the student project.
For each lecture/practice I created multiple small videos to help download. The videos are in mp4 and mkv format, you can likely play them directly in your browser. If not, just download them and play it. Free tools, like mplayer or vlc play both formats.
Please, send your questions to firstname.lastname@example.org, I will answer them in Neptun, so everybody can learn from it.
During the semester the students will (individually) working on a larger project. They will step by step create a Polynom class and its test environment. For every time you have to create a small additional task built on the previous results. We publish the solution after the deadline with some delay.
Submit the solutions on Canvas as one single C++ source file containing the main() function given in the task.
- Task 1 Create a pretty printer for polynoms.
- Task 2 Evaluate a polynom.
- Task 3 Create a polynom class.
- Task 4 Create a template version of the polynom class with some operators.
Schedule 2021 Spring
|Monday 16:00-17:30||MS-teams||Porkoláb Zoltánemail@example.com|
|Tuesday 12:15-13:45||MS-teams||Porkoláb Zoltánfirstname.lastname@example.org|
|Tuesday 16:00-16:30||MS-teams||Porkoláb Zoltánemail@example.com|
|2. Static typing||CppMat-ea-02.mp4|
|3. Program structure||CppMat-ea-03.mp4|
|4. The preprocessor||CppMat-ea-03.mp4 (from 43’)|
|7. Scope||CppMat-ea-05.mp4 (from 43’)|
|9. Common errors regarding scope and life||CppMat-ea-06.mp4 (from 60’)|
|11. Functions||CppMat-ea-07.mp4 (from 64’)|
|12. Parameters of main|
|15. POD and non-POD||CppMat-ea-08.mp4 (from 59’)|
|17. The Standard Template Library||CppMat-ea-09.mp4 (from 58’)|
|18. STL reference|
|19. STL example|
|22. Exam preparation||CppMat-ea-10.mp4|
|Practice||Tuesday 12:15h||Tuesday 16:00h|
Videos from 2020
Bjarne Stroustrup: The C++ Programming Language, 4th Edition.
Addison-Wesley (May 2013) ISBN 978-0321563842.
Bjarne Stroustrup: Programming, 2nd. Edition. (2013). ISBN-13: 978-0321992789.
Scott Meyers: Effective Modern C++, 42 Specific Ways to Improve Your Use of C++11 and C++14.
O’Reilly Media (November 2014).