Introduction To Programming
Public syllabus for 2025-2026
Academic overview
Teaching team
Learning time distribution
| Total | ||||||
|---|---|---|---|---|---|---|
| Curriculum | Lecture | Practice | Total Weekly | Lecture | Practice | |
| 42 | 14 | 28 | 3 | 1 | 2 | |
| Exam hours | ||||||
| 2 | ||||||
| Individual Study | Bibliography study | Field study | Homework | Tutoring | Others | |
| 8 | 2 | 2 | 2 | 0 | 0 | |
| Overall | ||||||
| 50 |
Learning outcomes
Knowledge
- C1. Cunoștințe fundamentale de informatică și matematică: algoritmi și structuri de date, logică și principii de demonstrare, modele și limbaje formale, structuri discrete și modele computaționale.
Skills
- A1. Abilitatea de a identifica modele formale/computaționale adecvate, de a utiliza instrumente de modelare și de calcul științific, de a analiza eficiența unui algoritm sau a utilizării unei structuri de date.
- A3. Abilitatea de a identifica algoritmi și structuri de date adecvate unei probleme concrete, de a aplica principiile de dezvoltare a unei aplicații informatice și de a implementa algoritmi într-un limbaj de programare.
Responsibility
- R1. Capacitatea de a rezolva în manieră autonomă sarcini specifice.
- R2. Capacitatea de a identifica/selecta soluții/căi de rezolvare adecvate și de a genera idei inovative.
Online platform
Course content
| Content | Methods | Obs |
|---|---|---|
| C1. (2h) Elements of structured programming. Procedural programming. Introduction to C. Data representation. Data types. Variables: declaration, storage class, scope, visibility, lifetime. Read/write functions from/to keyboard/screen. Operators and expressions. Operator classes. Precedence of operators and order of evaluation of expressions. Implicit type conversions. Execution control. The decisional instruction - if. The selection instruction from multiple variants – switch. | Lecture, conversation, example | References:F. Micota – slidesB. Kernighan și D. Ritchie - Limbajul |
| C2. (2h) Looping statements – while, for, do while. Instructions to control the execution of cycles – continue, break. The unconditional jump statement –goto. | Idem | Idem |
| C3. (2h) Functions. The structure of the programs. Declaring functions. Calling Convention C. Calling Context. Communication between functions. The return statement from the function call – return. Recursive functions. Preprocessing. Macro definitions. Debugging programs. | Idem | Idem |
| C4. (2h) Arrays. Strings | Idem | Idem |
| C5. (2h) References. Pointers. Memory Leaks | Idem | Idem |
| C7. (2h) Data abstracting Structures | Idem | Idem |
| C8. Theoretical evaluation | Exam |
Course bibliography
B. Kernighan and D. Ritchie - The C Programming Language (2nd edition), Prentice-Hall, 1988. B. Kernighan și D. Ritchie - Limbajul C, Editura Teora, 2000. Bjarne Stroustrup - Limbajul de programare C++, Editura Teora, 2003. L. Negrescu – Limbajele C și C++ pentru începători, vol. 1, Ed. Albastră, Cluj-Napoca, 2001.
Seminar content
| Content | Methods | Obs |
|---|---|---|
| L1-2. (4h) Simple problems with decision instructions. Debugging programs. Flowgorith intro | Problematization, dialogue, collaborative learning | Students have access to the problem statements recommended for solving before the laboratory. The teacher provides additional details, answers students' questions and checks/evaluates how students have solved the problems.The homeworks have an week deadline. |
| L3-4. (2h) Problems with repetitive instructions. Definition of test scenarios. Input redirection | Idem | Idem |
| L5-6. (2h) Decomposing problems into subproblems, defining and calling functions. Debugging code using macro definitions | Idem | Idem |
| L7-8. (2h) Solving problems with one and two dimensional arrays | Idem | Idem |
| L9-10. (2h) Pointers. Passing parameters by reference | Idem | Idem |
| L11-12. (2h) Structures | Idem | Idem |
| L13-14. (2h) Review | Idem | Idem |
| Bibliography: Same as the course |
Seminar bibliography
The content is consistent with the structure of similar courses from other universities and covers the fundamental aspects necessary to become familiar with the design and analysis of algorithms. The ability to identify, design, implement and analyze algorithms is essential to any computer science activity. The skills offered by this discipline are necessary for an IT specialist to identify effective solutions to solve concrete problems, regardless of the specific field of activity.
Corroboration
(none)
AI tools guidance
Evaluation and delivery
| Activity | Criteria | Methods | Percentage |
|---|---|---|---|
| C |
|
|
|
| S |
|
|
|
Performance standards
Minimum standard (knowledge and skills required for grade 5) Knowledge of fundamental concepts common to programming languages Knowledge of fundamental concepts related to the particularities of the C language The final grade is calculated as the weighted average of the grades awarded for the components specified in 9.4 and 9.5. The exam is considered passed if the average is at least 5 (it is not necessary for each grade to be higher than 5). At each of the exam sessions (including those for arrears and increases) the grade is calculated according to the same rule. Note: Students can participate in consultation hours (2 modules/week according to the planning established at the beginning of the semester) during which the course or seminar lecturer answers students' questions and provides additional explanations related to the course content, laboratory applications and assignments. Use of GenAI: It is not recommended to use GenAI when completing assignments. If the student uses GenAI to solve assignments, he/she will add the prompts used as a comment in the program's source file. Failure to comply with this requirement may result in the assignment being canceled. Unless for exceptional cases, if a deadline is missed, it cannot be reconsidered. You must acquire at least 5 points out of the maximum 10.
Additional info
(none)