Introduction to Computer Programming

Subject description

The course first deals with basic principles of computers and computer programming. Later, it focuses on a specific programming language (JavaScript), through which a student learns the principles of data and algorithm design, coding, and testing of programs. The subject is divided into the following sections:


  -general principles of programming languages

  -design, building, and testing computer programs

-Algorithm design:


  -symbolic language

  -a top-down approach

  -divide and conquer


-Programming with JavaScript:


  -control statements




  -testing and debugging

The subject is taught in programs

Objectives and competences

Students will master basics of algorithm and system approach to problem solving. They will learn skills of computer programming and testing programming solutions.

Subject is structured in a way that allows students to prepare for learning C programming language.

Teaching and learning methods

Lectures, practical demonstrations, laboratory work, individual work with advanced students, homeworks

Expected study results

After successful completion of the course, students should be able to:

-identify various components of a computer program

-explain the influence of the structuring of data to the complexity of the program code

-extract the algorithm and identify data from a computer program written in a specific programming language

develop a simple algorithm based on a list of mathematical requirements and implement it using a specific programming language

-evaluate algorithmic efficiency of a given algorithm

-build a simple application based on some given requirements

-evaluate the efficiency of a specific solution in terms of the usage of resources, correctness and reliability, user-friendliness, and maintainability 

Basic sources and literature

1. I. Fajfar: Algoritmi in podatkovne strukture – Uvod za inženirje, Založba FE, 2020

2. I. Fajfar: Start Programming Using HTML, CSS, and JavaScript, CRC Press, 2016

3. Spletna stran W3 Schools (

4. Mozilla Developer Network (

5. John Pollock: JavaScript: A Beginner's Guide, Osborne McGraw-Hill, 2009


Stay up to date

University of Ljubljana, Faculty of Electrical Engineering Tržaška cesta 25, 1000 Ljubljana

E: T:  01 4768 411