Preparatory Classes 2024
The Faculty of Computer Science and Engineering, during the period from 16 September to 27 September 2024 , will organise preparatory classes in mathematics and programming. The preparatory classes are organised to help new students follow the first-year mathematics and programming courses more easily across all study programmes.
The preparatory classes provide an excellent opportunity for students to identify the prior knowledge required to master first-semester courses and integrate more easily into the educational process, as well as to supplement and refresh their knowledge of mathematics and programming.
The classes will be organised provided that a sufficient number of students register to form a group for each of the two courses.
It is planned that 4 to 7 hours of classes and practical sessions will be held each day. Classes will begin at 9:00 at the FCSE campus (the detailed timetable will be announced after candidate registration has closed).
The mathematics and programming classes will be delivered in a hybrid format, meaning that classes will be held on the Faculty premises and will also be available online via Microsoft Teams.
For the course in mathematics , a total of 40 hours is planned for the period from 16 September 2024 to 21 September 2024, while the course in programming will comprise 20 hours, during the period from 23 September 2024 to 27 September 2024. The fee for attending the course in mathematics is MKD 5,000. The fee for attending the course in programming е MKD 3,000.
Students who intend to attend either course, or both courses, must register no later than Friday, 13 September 2024 at 11:00 by completing the following form.
Further information about the preparatory classes is available at the following email address:
All students who register for the classes by the stated deadline will be notified no later than Saturday, 14 September 2024 by a message sent to the email address entered in their application, informing them whether the groups have been formed and whether the classes will commence.
Brief outlines of the material covered in the preparatory mathematics and programming classes are provided below.
Details of the Mathematics Course
The mathematics classes cover significant portions of the material taught in primary and secondary education that are required in order to follow first-year mathematics courses more easily across all study programmes.
Description of the topics to be covered:
- Topic 1: Basic Number Sets; Algebraic and Rational Expressions
- Basic number sets. Natural numbers: review of operations and laws, prime and coprime numbers, divisibility. Numeral systems, decimal and binary numeral systems. Integers: review of operations and ordering. Rational numbers: review of operations with fractions, decimal numbers and recurring decimals. Real numbers: concept, geometric representation and ordering. Algebraic and rational expressions: powers with natural-number exponents and operations with powers. Integral rational expressions, monomials, polynomials, operations, factorisation, least common multiple and greatest common divisor. Fractional rational expressions: concept and operations.
- Topic 2: Linear Functions, Linear Equations and Inequalities; Systems of Linear Equations
- Linear functions, linear equations and inequalities. Cartesian coordinate system in the plane. Real-valued functions: domain and range. Linear functions, behaviour and graphs. Linear equations in one unknown: solution, discussion and application. Linear inequalities in one unknown. Systems of linear equations: systems of two linear equations in two unknowns and equivalence. Methods for solving systems of two linear equations in two unknowns. Solving systems of linear inequalities in one unknown. Absolute value of a real number. Equations and inequalities involving absolute values.
- Topic 3: Quadratic Equations and Inequalities; Powers and Roots
- Quadratic equations: solving complete and incomplete quadratic equations and discussing the solutions of a complete quadratic equation. Quadratic functions (properties and graphs) and quadratic inequalities in one unknown. Powers and roots: powers with integer exponents; roots (concept, expansion and simplification); extracting roots from products and quotients; powers and roots of radicals; standard radical form; irrational expressions. Rationalisation of the denominator of a fraction. Powers with rational exponents.
- Topic 4: Exponential and Logarithmic Functions; Trigonometric Functions
- Exponential functions: definition, graphs and properties. Logarithmic functions, logarithm rules and relationships between logarithms with different bases. Trigonometry: trigonometric functions of an acute angle; relationships between the trigonometric functions of the same angle; values of trigonometric functions for selected angles; solving right-angled triangles; definitions of the trigonometric functions (sine, cosine, tangent and cotangent) of an arbitrary angle; values of the trigonometric functions of an arbitrary angle.
- Topic 5: Mathematical Logic
- Propositions. Operations on propositions and truth tables. Propositional formulae and tautologies. Translating natural-language sentences into logical propositional formulae. Propositional functions: concept and solution of a propositional function. Quantifiers. Axioms, theorems and proofs. Proving elementary mathematical problems.
- Topic 6: Sets; Combinatorics
- Sets. Subsets and equality of sets. Operations on sets. Induction. Combinatorics: combinations, permutations and variations. Binomial theorem.
Details of the Programming Course
The programming classes cover significant portions of the material taught in secondary education and also include methods for mastering algorithmic concepts more easily.
- Topic 1: Algorithms and Programming; Integrated Development Environments
- The concept of an algorithm. Simple algorithms and the development of sample algorithms. Elements of programming environments: compiler, linker, debugger and standard-function libraries. Working with an integrated development environment: installation and an overview of the environment, including the main window and workspace. Creating a new project and adding a source file to the project. Building and running a project.
- Topic 2: Introduction to the C++ Programming Language
- C++ syntax: alphabet, words, special symbols and comments. Quantities and data. Basic data types (char, int, float, double, bool). Expressions and statements in C++. Variables and their declaration. Structure of C++ programs. Operators in C++: arithmetic, assignment, increment and decrement (prefix and postfix), relational and logical operators. Input and output. Examples of simple C++ programs.
- Topic 3: Sequential Structure; Developing Simple Programs
- Sequential structure and blocks of statements. Empty statement. Development of simple C++ programs.
- Topic 4: Control Structures; Selection Statements
- Control statements: selection statements, iteration statements and jump statements. Selection statements: if, if-else and switch. Nesting if statements. Examples of C++ programs using selection statements.
- Topic 5: Iteration Statements
- The while statement—implementation of the while-do control structure. Examples of using the while statement. The do-while statement—implementation of the repeat-until control structure. Examples of using the do-while statement. The for statement—implementation of the for-to-step control structure. Examples of using the for statement. Jump statements: break and continue.
- Topic 6: One-Dimensional Arrays
- Arrays as data structures. Declaring an array. Accessing an array element—element indices. Initialising an array. Examples of C++ programs using arrays.