Introduction to Programming

Code: О2018ИОПР · 8 ECTS · Department of Computer and Information Sciences

Field of study: ПМФ-ИНИБ: Информационе науке и биоинформатика (развој софтвера)

Course Objectives

Familiarization with key concepts of programming, software development and software engineering. Understanding the principles, rules and methods of programming and software development, as well as basic algorithmic structures and data structures. Coding and testing: practical use of an imperative programming language. Use of software tools and application of basic software metrics.

Prerequisites

Нема условљености

Learning Outcomes

Ability of students to develop software using the method of functional decomposition and structural programming in a non-objective imperative language.

Course Content

Theoretical classes: L01: Programming: concept, general model, language, process. L02: Fundamentals of computer organization and programming using lower programming languages. L03: Higher programming languages and software paradigms; basics of programming language (alphabet, identifiers, types, literals, expressions, operators, commands). L04: Subprograms; structures, unions and fields; declarations. L05: Indicators and dynamic memory management. L06: Construction of structural algorithms. L07: Construction of Data Structures. L08: Program idioms. L09: Program idioms /continuation/ L10: Linear data structures. L11: Linear Data Structures /continuation/ L12: Software Development using algorithmic abstractions and data abstractions. L13: Basics of Software Engineering. Practical classes: E01: Program (software) tools. E02: Lower programming languages: examples. E03: Identifiers, types, literals, expressions, operators, commands. E04: Arrays; pre-processor directives. E05: I/O: flows and files. E06: Programming Techniques. E07: Programming Techniques /continuation/ E08: Programming Idioms. E09: Programming idiom /continuation/ E10: Linear data structures. W11: Linear Data Structures /continuation/ E12: Synthesis: Study Example. E13: Basics of Software Engineering.

Teaching Methods

Lectures, seminar classes and practical exercises on the computer.

Assessment Methods

Colloquium I (0-20 points); Colloquium II (0-20 points); Final exam (0-50 points); Attendance (2point); Class activities (seminar papers, discussions, case studies) (0-8 points)

Textbooks and Other Materials

Knuth, D.E. (1973). The Art of Computer Programming. Vol. I, II; Addison-Wesley. Dahl, O.J., Dijkstra, E.W., & Hoare, C.A.R. (2003). Structured Programming. Academic Press. Wirth, N. (1972). Algorithms + Data Structures = Programs. Prentice-Hall, Englewood Cliffs. Ivetić, D. (2005). Structured approach to programming. Novi Sad: FTN Publishing, Novi Sad. Kernighan, B.W., & D.M. Ritchie. (2003). Programming Language C, 2nd Edition. Belgrade: CET, Belgrade. Tondo, C.L.; & Gimpel, S.E. (2004). Programming Language C - solutions to problems, 2nd edition. Belgrade: CET, Belgrade. Hansen, A. (1991). Programming in the C Language - a complete guide. Belgrade: Mikro knjiga, Belgrade.

Exam Results

ExamDate
Colloquium II 04.02.2021.
Colloquium I 17.12.2020.

Course Materials

No course materials have been uploaded yet.

Ентер за пуне резултате. Претрага обухвата странице, вијести, наставнике, предмете, пројекте и документе — независно од писма (ћирилица/латиница).