Programming and Algorithms

Објавено: October 12, 2018
  1.    Course Title Programming and algorithms
  2.    Code 3ФЕИТ07З027
  3.    Study program EAOIE, EES, EEUM, KHIE, KSIAR, KTI, TKII
  4.    Organizer of the study program (unit, institute, department) Faculty of Electrical Engineering and Information Technologies
  5.    Degree (first, second, third cycle) First cycle
  6.    Academic year/semester I/1   7.    Number of ECTS credits 6.00
  8.    Lecturer Dr Slavche Pejoski, Dr Hristijan Gjoreski, Dr Tomislav Shuminoski, Dr Goran Jakimovski
  9.    Course Prerequisites

10.    Course Goals (acquired competencies):  Introduction to programming. Concepts of programming and algorithms. After finishing the course the student will be able to write simple and more complex programmes in C programming language.

11.    Course Syllabus: Introduction to computer systems, components and organisation: processor, registers, memory. Programming. Programming languages. Syntax and semantics. Structure of a C program. Data types. Constants. Variables and types of variables. Operators. Logical and relational operations. Expressions. Basin input/output expressions. Commands for execution control of a program: branching statements (if-else, switch), repeating statements (for, while). Functions. Recursive functions. Complex program structures. Arrays. Pointers and pointer operations. Matrix. Concepts of searching through complex data structures. Ways of sorting. Textual arrays. Arguments in main() function. File concepts and structure.

12.    Learning methods:  Lectures, exercises and laboratory exercises
13.    Total number of course hours 2 + 2 + 2 + 0
14.    Distribution of course hours 180
15.    Forms of teaching 15.1. Lectures-theoretical teaching 30
15.2. Exercises (laboratory, practice classes), seminars, teamwork 60
16.    Other course activities 16.1. Projects, seminar papers 10
16.2. Individual tasks 20
16.3. Homework and self-learning 60
17.    Grading 17.1. Exams 10
17.2. Seminar work/project (presentation: written and oral) 10
17.3. Activity and participation 0
17.4. Final exam 80
18.    Grading criteria (points) up to 50 points     5 (five) (F)
from 51 to 60 points     6 (six) (E)
from 61 to 70 points     7 (seven) (D)
from 71 to 80 points     8 (eight) (C)
from 81 to 90 points     9 (nine) (B)
from 91 to 100 points   10 (ten) (A)
19.    Conditions for acquiring teacher’s signature and for taking final exam Laboratory exercises
20.  Forms of assessment During the semester, two partial (or one full) exams are scheduled, along with two tests. The passing of the exam is based on passing the two partial (or one full) exam, where students are required to write small software solutions in C programming language. The tests are taken one week before the partial exams and are consisted of short questions from the curriculum. The partial/full exams take up to 80% of the grade, whereas the tests take up to 12% of the grade. The remaining 8% are from the laboratory exercises.
21.    Language Macedonian and English
22.    Method of monitoring of teaching quality Internal evaluation and surveys
23.    Literature
23.1. Required Literature
No. Author Title Publisher Year
1 K. Loudon Mastering Algorithms with C O’Reilly 1999
2 Kochan C. Programming in ANSI C SAMS Publishing 1991
3 Б. Керниган, Д. Ричи Програмски јазик С превод влада 1988
23.2. Additional Literature
No. Author Title Publisher Year
1 Thomas H. Cormen, et. al.  Introduction to Algorithms, (2nd Edition)  MIT PRESS  2001
2  R. Sedgewick  Algorithms in C Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, 3rd Ed  Addison-Wesley Professional  2001