Code | RTR105 |

Name | Computer Studies (basic course) |

Status | Compulsory/Courses of Limited Choice |

Level and type | Undergraduate Studies, Academic |

Field of study | Computer Studies |

Faculty | Department of Fundamentals of Electronics |

Academic staff | Artūrs Āboltiņš, Viktors Zagorskis, Dmitrijs Puriševs, Tatjana Solovjova, Jurijs Ivanovs |

Credit points | 3.0 (4.5 ECTS) |

Parts | 1 |

Annotation |
The course aimed at the first year bachelor students of RTU Faculty of Electronics and Telecommunications provides insights into contemporary computers, modern programming languages and elementary computing algorithms to be applied in further studies and engineering work. The course outlines mathematical, engineering and philosophic principles of data acquisition, computing and representation systems, which provide the basis for development of professional expertise and practical competence working with professional computer systems based on open source operating environment Linux, UBUNTU and SuSe implementations in particular. . The students get acquainted with classical programming languages C, C++ and contemporary programming language Python. . Binary, hexadecimal and complex numbers computing systems are studied.. The concepts of ‘bit’, ‘byte’ and ‘data type’ are comprehensively analysed.. Practical programming tasks are related to simple tasks completed within the framework of the courses in physics, electronics and mechanical engineering, as well as to a range of themes in advanced mathematics such as simple function differentiation and square computing of functionally developed geometric figures.. The tasks connected to complex numbers, bit operations and data sorting are completed depending on the specifics of the study program. . |

Goals and objectives of the course in terms of competences and skills |
The goal of the course is to provide an overview of C, C++ and Python programming languages and free access technical tools for development of simple but professional software. An overview of modern, professionally efficient programming environment based on Linux operating systems is given. Students get practical experience developing algorithms able to solve numerically simple tasks in physics and mathematics with an aim to design simple C++ and Python scripts and develop procedural programming skills. |

Learning outcomes and assessment |
Skills in using professional UNIX like operational systems in terminal environment. Students have practical experience to manipulate directories, files, work with text editors, invoke scripts and programs - Labs, scored. Tests. Exam. Ability to write simple C, C++ programs based on looping, branching and conditioning procedures. Knowledge of C, C++ program compiling, syntax error finding, executing, terminal output redirection - Labs, scored. Tests. Exam. Skills in creating simple programs in Python based on some fundamental algorithms like function root finding, definitive integral value calculation, function differentiation, simple bubble sorting. - Labs, scored. Tests. Exam. Students are able to operate GNUPLOT as math-functions 2D visualisation and evaluation tool. - Labs, scored. Tests. Exam. |

Course prerequisites | High school education level knowledge of subjects in mathematics and physics. |

[Extended course information PDF]