• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
Bachelor 2023/2024

C++ Programming Language

Type: Compulsory course (Data Science and Business Analytics)
Area of studies: Applied Mathematics and Information Science
When: 1 year, 3, 4 module
Mode of studies: offline
Open to: students of one campus
Instructors: Притула Наталия Евгеньевна, Рудаков Кирилл Александрович, Maria Gordenko, Ivan Kopylov, Sergey Shershakov
Language: English
ECTS credits: 6
Contact hours: 120

Course Syllabus

Abstract

The course is intended to be taught during the second semester of the program. It is dedicated to the base features of the C++ programming language and C++ Standard Library (STL). The part covers all necessary topics that are needed to start developing a modern CLI1-applications in C++. The lectures and practical classes are closely inter-related. The lectures are primarily intended to introduce new topics, whereas the practical classes are intended for solving specific problems by coding programs in C++.
Learning Objectives

Learning Objectives

  • One of the objectives of this course is for the students to will study the methodology of programming.
  • During this course, the students will develop algorithmic thinking.
  • During this course, the students will study approaches and toolchains for the development of C++-applications.
  • During this course, the students will practice application debugging and deployment with respect to various platforms and toolchains.
Expected Learning Outcomes

Expected Learning Outcomes

  • Students will learn basic concepts and methods of software development.
  • Students will learn to analyze a problem to be implemented in the form of a C++-application.
  • Students will learn to create a testbed environment for essential testing of the application.
  • Students will learn to design app architecture with respect to problem decomposition and known limitations.
  • Students will learn to select the most appropriate toolset for app development.
Course Contents

Course Contents

  • Introduction to C++.
  • Data types and Objects.
  • Control flow statements.
  • Expressions and Operators.
  • Functions and procedures.
  • C++ Memory model.
  • Classes.
  • Strings.
  • Standard library (STL).
  • Operator overloading.
  • Templates.
  • Exceptions and Move semantics.
  • Inheritance.
Assessment Elements

Assessment Elements

  • non-blocking 1st semester Ongoing Assessment 0.6
  • non-blocking 2nd semester Ongoing Assessment 0.6
  • non-blocking 2nd semester Exam
  • non-blocking Regular tests
  • non-blocking Individual Home tasks
Interim Assessment

Interim Assessment

  • 2023/2024 4th module
    Final grade = 0.7 *min(1st semester grade, 2nd semester grade) + 0.3 *max(1st semester grade, 2nd semester grade)
Bibliography

Bibliography

Recommended Core Bibliography

  • C++ programming : program design including data structures, Malik, D. S., 2009
  • Data structures and algorithm analysis in C++, Weiss, M. A., 2006

Recommended Additional Bibliography

  • Hedge fund modelling and analysis : an object oriented approach using C++, Darbyshire, P., 2017
  • Mastering C++ programming, Chapman, W. A., 1998
  • Modeling derivatives in C++, London, J., 2005