19E111P1 - Programming 1

Course specification
Course title Programming 1
Acronym 19E111P1
Study programme Electrical Engineering and Computing
Type of study bachelor academic studies
Lecturer (for classes)
Lecturer/Associate (for practice)
Lecturer/Associate (for OTC)
ESPB 6.0 Status mandatory
Condition none
The goal Teaching students fundamentals of modern programming and elements of computer systems. Training for independent development and testing of programs in the Python programming language using control structures and complex data types. Development of more complex programs in the precision steps. Setting the foundations for learning other programming languages.
The outcome Students will be able to analyze the problem setting and functional requirements, construct simpler algorithms, transform them into program code in the Python programming language, and to understand syntax definitions. Students will be able to work independently in a development environment and to develop, rectify and test structured, modular programs for engineering applications.
Contents of lectures Introduction to programming. Program paradigms, syntax and semantics, notations. Algorithmic problem solving and software life cycle. Python programming language. Variables, operators, complex data types: arrays, lists, n-torques, dictionaries. Control structures. Functions, recursion, modules. Exception handling. Input/output data, files. Object-oriented concepts. Selected Libraries.
Contents of exercises Practical classes represent auditory exercises that fully follow the order of topics that are presented during lectures. Exercises are performed in a computer laboratory. For each topic, a set of examples and problem solutions are presented with a demonstration on the computer and students' independent work on modifying and testing the program.
  1. Python Programming: An Introduction to Computer Science, John Zelle, 3rd Ed., Franklin, Beedle & Associates, 2016. (Original title)
  2. Python programming fundamental, Milos Kovacevic, Academic mind, 2017.
  3. A Smarter Way to Learn Python, Mark Myers, CreateSpace Independent Publishing Platform, 2017. (Original title)
  4. Programming 1, presentations used on lectures and auditory exercises, Web site of the Department of Computer Engineering and Informatics, School of electrical engineering,
  5. Programming Languages, Jozo Dujmovic, Academic mind, 2000.
Number of hours per week during the semester/trimester/year
Lectures Exercises OTC Study and Research Other classes
3 2 0.2
Methods of teaching lectures, auditory exercises in computer laboratory, laboratory exercises
Knowledge score (maximum points 100)
Pre obligations Points Final exam Points
Activites during lectures 0 Test paper 70
Practical lessons 0 Oral examination 0
Colloquia 30
Seminars 0