Subject

Structured programming

1. Course Title Structured programming
Structured programming
2. Code F23L1W020
3. Study Programme Application of Information Technologies, Software Engineering and Information Systems, Computer Science, Computer Engineering, Internet, Networks and Security, Software Engineering and Information Systems, Informatics Education, Professional Studies in Programming
4. Organizer of the study programme (unit, institute, department or division) Faculty of Computer Science and Engineering
5. Degree level (first, second, third cycle) First Cycle
6. Academic year / semester 1 / Winter
7. Number of ECTS credits 6
8. Teacher Ana Madevska Bogdanova, Boban Joksimovski, Dejan Gjorgjević, Emil Stankov, Gjorgji Madjarov, Hristina Mihajloska Trpcheska, Ivan Chorbev, Ivica Dimitrovski, Katarina Trojachancev Dineva, Mile Jovanov, Nevena Acakovska
9. Prerequisites for enrolling in the course
10. Objectives of the course programme (competences) To introduce students to the paradigm of structured programming, to understand the concept of algorithms, and to be able to develop algorithms, code, test, and compile programs. Students will be able to write programs to solve problems using data types, control structures, functions, and arrays in the C++ programming language.
11. Course content 1. Introduction. Algorithms and programs. Programming and programming languages. Structured programming. The process of creating and executing a program.
2. Algorithmic control structures. Sequential structure. Elements of C++. Quantities and data. Variables. Assignment operator. Basic data types. Input and output. First sequential programs.
3. Representation of numbers in a computer, number ranges, more on data types and their ranges. Data type conversion. Relational operators. Comparative and logical expressions. Structure for choosing between two options.
4. Control structures for selection (if–else, Conditional operator ?:, switch)
5. Control Structures for Repetition
6. Algorithmic thinking, the right algorithm. Careful use of break and continue and no use of goto. Algorithm complexity. Time complexity.
7. Functions. Application of functions. Scope of variables.
8. Strings: one-dimensional, two-dimensional....
9. Simple string algorithms / known algorithms and problem-solving (searching, sorting...)
10. Recursion and Pointers
11. Working with character arrays, strings, and files
12. Learning methods Lectures using presentations, interactive lectures, exercises (using equipment and software packages), teamwork, case studies, guest lectures, independent preparation and defense of a project assignment and a seminar paper.
13. Total available time 6 ECTS x 30 hours = 180 hours
14. Distribution of available time 30 + 60 + 15 + 15 + 60 = 180 hours
15. Forms of teaching activities
15.1. Lectures - theoretical instruction 30 hours
15.2. Exercises (laboratory, auditory), seminars, teamwork 60 hours
16. Other forms of activities
16.1. Project assignments 15 hours
16.2. Independent assignments 15 hours
16.3. Home study 60 hours
17. Assessment method
17.1. Tests 10 points
17.2. Seminar paper / project (presentation: written and oral) 15 points
17.3. Activities and learning 10 points
17.4. Final exam Eighty points
18. Grading criteria (points / grade)
up to 50 points5 (five) (F)
from 51 to 60 points6 (six) (E)
from 61 to 70 points7 (seven) (D)
from 71 to 80 points8 (eight) (C)
from 81 to 90 points9 (nine) (B)
from 91 to 100 points10 (ten) (A)
19. Requirement for obtaining a signature and taking the final exam Regularity and activity of lab exercises
20. Language of instruction Macedonian and English
21. Method for monitoring the quality of teaching internal evaluation and survey mechanism
22. Literature
22.1. Required literature
1. Tony Gaddis | Starting Out with C++ from Control Structures to Objects, 9th edition | Pearson | 2018
2. P. Dietl, H. Dietl | C++, How to Program | Ars Lamina | 2010
3. Eric Roberts | Programming Abstractions in C++ | Pearson | 2013
4. Bjarne Stroustrup | Programming: Principles and Practice Using C++, Second Edition | Addison-Wesley | 2014
5. Stanley B. Lippman | C++ Primer | Addison-Wesley | 1998
6. G. Jovanchevski, M. Jovanov, N. Atckovska, B. Stojchevska | Collection of Algorithms and Programs | Goce Mar | 2017
22.2. Additional literature
No. Author Title Publisher Year