ELTE Curriculum taken from Computer Science BSc 2018 (in English, for Foreign Students)
This is simply a MD / HTML version of the ELTE BSc CS Curriculum 2018, so that students can have an easier time using it and making notes / plans based on it. I added a prerequisite tree / flowchart as well. There might be inaccuracies or mistakes so confirm with the main linked pdf just to be on the safe side in case of making some infallible plan. But, for the most part, everything here is taken from an official PDF or webpage.
| Subject Code | Subject | L | Pr | Lab | Con | Assessment | Credit | Rec. Semester | Prerequisite | 1st Semester | 2nd Semester | 3rd Semester | 4th Semester | 5th Semester | 6th Semester |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Compulsory Subjects | |||||||||||||||
| IP-18fSZGREG | Computer systems | 2 | 0 | 2 | 1 | XCP | 5 | 1 | 2+0+2+1 | ||||||
| IP-18fPROGEG | Programming | 2 | 0 | 3 | 1 | XCP | 6 | 1 | 2+0+3+1 | ||||||
| IP-18fIMPROGEG | Imperative programming | 2 | 0 | 3 | 0 | XCP | 5 | 1 | 2+0+3+0 | ||||||
| IP-18fFUNPEG | Functional programming | 2 | 0 | 2 | 1 | XE | 5 | 1 | 2+0+2+1 | ||||||
| IP-18fMATAG | Basic Mathematics | 0 | 4 | 0 | 0 | CP | 4 | 1 | 0+4+0+0 | ||||||
| IP-18fTMKG | Learning Methodology | 0 | 1 | 0 | 0 | P | 1 | 1 | 0+1+0+0 | ||||||
| IP-18fIVMEG | Business fundamentals | 1 | 2 | 0 | 0 | XP | 3 | 1 | 1+2+0+0 | ||||||
| IP-18fPNVEG | Programming languages | 2 | 0 | 2 | 2 | XCP | 6 | 2 | IP-18fIMPROGEG | 2+0+2+2 | |||||
| IP-18fOEPREGEG | Object-oriented programming | 2 | 0 | 3 | 1 | XCP | 6 | 2 | IP-18fPROGEG | 2+0+3+1 | |||||
| IP-18fWF1EG | Web development | 1 | 0 | 2 | 0 | XCP | 3 | 2 | IP-18fSZGREG (weak) | 1+0+2+0 | |||||
| IP-18fAA1E | Algorithms and data structures I | 2 | 0 | 0 | 0 | E | 2 | 2 | IP-18fAA1G (weak) | 2+0+0+0 | |||||
| IP-18fAA1G | Algorithms and data structures I | 0 | 2 | 0 | 1 | P | 3 | 2 | IP-18fMATAG, IP-18fIMPROGEG | 0+2+0+1 | |||||
| IP-18fDM1E | Discrete mathematics I | 2 | 0 | 0 | 0 | E | 2 | 2 | IP-18fDM1G (weak) | 2+0+0+0 | |||||
| IP-18fDM1G | Discrete mathematics I | 0 | 2 | 0 | 1 | CP | 3 | 2 | IP-18fMATAG | 0+2+0+1 | |||||
| IP-18fAN1E | Analysis I | 2 | 0 | 0 | 0 | E | 2 | 2 | IP-18fAN1G (weak) | 2+0+0+0 | |||||
| IP-18fAN1G | Analysis I | 0 | 2 | 0 | 1 | P | 3 | 2 | IP-18fMATAG | 0+2+0+1 | |||||
| IP-18fAA2E | Algorithms and data structures II | 2 | 0 | 0 | 0 | E | 2 | 3 | IP-18fAA2G (weak) | 2+0+0+0 | |||||
| IP-18fAA2G | Algorithms and data structures II | 0 | 2 | 0 | 1 | P | 3 | 3 | IP-18fAA1E | 0+2+0+1 | |||||
| IP-18fWPEG | Web programming | 1 | 0 | 2 | 1 | XCP | 4 | 3 | IP-18fWF1EG | 1+0+2+1 | |||||
| IP-18fPROGTEG | Programming technology | 2 | 0 | 2 | 1 | XCP | 5 | 3 | IP-18fOEPROGEG | 2+0+2+1 | |||||
| IP-18fAN2E | Analysis II | 2 | 0 | 0 | 0 | E | 2 | 3 | IP-18fAN2G (weak) | 2+0+0+0 | |||||
| IP-18fAN2G | Analysis II | 0 | 2 | 0 | 1 | P | 3 | 3 | IP-18fAN1E | 0+2+0+1 | |||||
| IP-18fDMAG | Application of discrete models | 0 | 0 | 2 | 1 | P | 3 | 3 | IP-18fDM1E | 0+0+2+1 | |||||
| IP-18fOPREG | Operating systems | 1 | 0 | 1 | 1 | XP | 3 | 4 | IP-18fSZGREG | 1+0+1+1 | |||||
| IP-18fAB1E | Databases I | 2 | 0 | 0 | 0 | E | 2 | 4 | IP-18fAB1G (weak) | 2+0+0+0 | |||||
| IP-18fAB1G | Databases I | 0 | 0 | 2 | 0 | P | 2 | 4 | IP-18fAA1E | 0+0+2+0 | |||||
| IP-18fSZTEG | Software technology | 2 | 0 | 2 | 1 | XCP | 5 | 4 | IP-18fPROGTEG | 2+0+2+1 | |||||
| IP-18fSZEAE1E | Fundamentals of theory of computation I | 2 | 0 | 0 | 0 | E | 2 | 4 | IP-18fSZEAE1G (weak) | 2+0+0+0 | |||||
| IP-18fSZEAE1G | Fundamentals of theory of computation I | 0 | 2 | 0 | 1 | P | 3 | 4 | IP-18fDM1E | 0+2+0+1 | |||||
| IP-18fNM1E | Numerical methods | 2 | 0 | 0 | 0 | E | 2 | 4 | IP-18fNM1G (weak) | 2+0+0+0 | |||||
| IP-18fNM1G | Numerical methods | 0 | 2 | 0 | 1 | P | 3 | 4 | IP-18fAN2E | 0+2+0+1 | |||||
| IP-18fKPROGEG | Concurrent programming | 1 | 0 | 1 | 1 | XCP | 3 | 5 | IP-18fPNVEG | 1+0+1+1 | |||||
| IP-18fTKHE | Telecommunication networks | 2 | 0 | 0 | 0 | E | 2 | 5 | IP-18fTKHG (weak) | 2+0+0+0 | |||||
| IP-18fTKHG | Telecommunication networks | 0 | 0 | 2 | 1 | P | 3 | 5 | IP-18fOEPROGEG | 0+0+2+1 | |||||
| IP-18fMIAE | Artificial intelligence | 2 | 0 | 0 | 1 | E | 3 | 5 | 2+0+0+1 | ||||||
| IP-18fAB2E | Databases II | 2 | 0 | 0 | 0 | E | 2 | 5 | IP-18fAB2G (weak) | 2+0+0+0 | |||||
| IP-18fAB2G | Databases II | 0 | 0 | 2 | 1 | P | 3 | 5 | IP-18fAB1E | 0+0+2+1 | |||||
| IP-18fSZEAE2E | Fundamentals of theory of computation II | 2 | 0 | 0 | 0 | E | 2 | 5 | IP-18fSZEAE2G (weak) | 2+0+0+0 | |||||
| IP-18fSZEAE2G | Fundamentals of theory of computation II | 0 | 2 | 0 | 1 | P | 3 | 5 | IP-18fSZEAE1E | 0+2+0+1 | |||||
| IP-18fVSZG | Probability and statistics | 0 | 0 | 2 | 1 | P | 3 | 5 | IP-18fAN2E | 0+0+2+1 | |||||
| Compulsories | 127 | 29 | 30 | 22 | 22 | 24 | |||||||||
| Compulsory Electives | |||||||||||||||
| IP-18fKVKBRE | Cryptography and security | 2 | 0 | 0 | 0 | E | 2 | 4,6 | IP-18fKVKBG (weak) | 2+0+0+0 | 2+0+0+0 | ||||
| IP-18fKVKBG | Cryptography and security | 0 | 0 | 2 | 1 | P | 3 | 4,6 | IP-18fDMAG | 0+0+2+1 | 0+0+2+1 | ||||
| IP-18fKVBGTE | Introduction to machine learning | 2 | 0 | 0 | 1 | E | 3 | 3 | IP-18fMATAG | 2+0+0+1 | |||||
| IP-18fKVPREE | Programming theory | 2 | 0 | 0 | 0 | E | 2 | 3,5 | IP-18fKVPREG (weak) | 2+0+0+0 | 2+0+0+0 | ||||
| IP-18fKVPREG | Programming theory | 0 | 2 | 0 | 1 | P | 3 | 3,5 | IP-18fMATAG | 0+2+0+1 | 0+2+0+1 | ||||
| IP-18fKVPRJG | Tools of software projects | 0 | 2 | 0 | 1 | CP | 3 | 5 | IP-18fPNVEG | 0+2+0+1 | |||||
| IP-18fKVFPPE | Compilers | 2 | 0 | 0 | 1 | E | 3 | 5 | IP-18fKVPPG (weak) | 2+0+0+1 | |||||
| IP-18fKVPPG | Compilers | 0 | 0 | 2 | 0 | P | 2 | 5 | IP-18fOEPROGEG | 0+0+2+0 | |||||
| IP-18fKVADA | ADA | 2 | 0 | 2 | 1 | XP | 5 | 5,6 | IP-18fIMPROGEG | 2+0+2+1 | 2+0+2+1 | ||||
| IP-18fKVPVEG | Python | 2 | 0 | 2 | 1 | XE | 5 | 3,4,5,6 | 2+0+2+1 | 2+0+2+1 | 2+0+2+1 | 2+0+2+1 | |||
| IP-18fKVIADSE | Applied Data Science | 2 | 0 | 0 | 0 | E | 2 | 3,5 | 2+0+0+0 | 2+0+0+0 | |||||
| IP-24fKVSZKBIZTE | Cybersecurity basic | 2 | 0 | 0 | 2 | E | 4 | 2 | IP-18fWF1EG (weak) | 2+0+0+2 | |||||
| IP-24fKVSZGE | Computer graphics | 2 | 0 | 0 | 1 | E | 3 | 3,5 | IP-24fKVSZGG (weak) | 2+0+0+1 | 2+0+0+1 | ||||
| IP-24fKVSZGG | Computer graphics | 0 | 0 | 2 | 1 | P | 3 | 3,5 | IP-18fMATAG, IP-18fIMPROGEG | 0+0+2+1 | 0+0+2+1 | ||||
| IP-24fKVKHSZGG | Intermediate Computer Graphics | 0 | 0 | 2 | 1 | P | 3 | 4,6 | IP-24fKVSZGG | 0+0+2+1 | 0+0+2+1 | ||||
| IP-24fKVNFIATEG | Native cloud computing applications | 2 | 0 | 2 | 1 | XE | 5 | 4,5,6 | IP-18fKVPYEG | 2+0+2+1 | 2+0+2+1 | 2+0+2+1 | |||
| IP-24fKVHWPEG | Advanced web programming | 2 | 0 | 2 | 1 | PG | 5 | 4,6 | IP-18fWPEG | 2+0+2+1 | 2+0+2+1 | ||||
| Compulsory electives | 23 | 9 | 0 | 6 | 8 | ||||||||||
| Summary | |||||||||||||||
| Compulsories + compulsory electives | 150 | 29 | 30 | 31 | 22 | 30 | 8 | ||||||||
| Electives | 10 | 8 | 2 | ||||||||||||
| IP-24fsZD | Thesis consultation | 20 | 20 | ||||||||||||
| Summa credit in semester | 29 | 30 | 31 | 30 | 30 | 30 | |||||||||
| Summa credit | 180 |
-
Descriptions:
- L: Lecture hours per week
- Pr: Practice hours per week
- Lab: Laboratory hours per week
- Con: Consultation hours per week
- Assessment:
- P: Practice grade
- E: Exam
- C: Practice with continuous assessment (at least 5 independent tests/assessments)
- X: Mixed subject (lecture + practice)
- End of subject code:
- EG: Lecture + Practice under same code
- E: Lecture only
- G: Practice only
-
ELTE IK. Computer Science BSc 2018 (in English, for Foreign Students). Digital. ELTE IK, 2025. https://www.inf.elte.hu/en/dstore/document/225452/PTI_BSc_angol_h%C3%A1l%C3%B3_honlapra%202019%20jan-m%C3%A1rcius.pdf.
Difference between Strong and Weak Prerequisite
A prerequisite is a preliminary requirement of a subject that, if it is not fulfilled, you cannot proceed on the subject that is built on it (follow-up subject). We distinguish two kinds of prerequisites: strong prerequisites and weak prerequisites.
| The strong prerequisite | The weak prerequisite |
|---|---|
| Strong prerequisites are prerequisites without which the the follow-up subject cannot be taken in the next semester, and the follow-up subject can only be registered for after the prerequisite subject has been fulfilled. | Weak prerequisites are those prerequisites where the prerequisite and the follow-up subject can be taken in the same semester, but the follow-up subject can only be fulfilled after the prerequisite has been fulfilled. If you do not fulfill the weak prerequisite, the follow-up subject’s grade will automatically be failed/unfulfilled (even if you had passed from the follow-up subject’s exam!) |
- ELTE IK. “The Prerequisites.” Digital. In ELTE IK Student Guide, 35–37. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227164/Essential%20student%20guide.pdf.
Difference between Compulsory, Compulsory elective and Free elective (optional) courses
| Compulsory | Compulsory elective | Free elective (optional) |
|---|---|---|
| These courses provide indispensable knowledge to become a successful professional in your chosen field. You will not be able to graduate without completing these courses. | These courses allow students to gain additional knowledge in specific fields, giving them a choice of usually 5-8 courses/study field to suit their interests and to boost their future employment prospects. These courses are categorised into elective course groups (called units) in the following study fields: | These courses can relate to all sorts of study fields. Each curriculum contains a certain number of credits assigned to such courses. They are mandatory to complete to graduate but the selection is wide: students can either choose courses from other ELTE GTK programmes than their own, or even any courses offered by the University. |
| A subject is compulsory if – based on the training and graduation requirements, – its completion is necessary for all students in order to obtain the diploma, and all subjects that are defined as such by the curriculum. The form of the compulsory subject is a class-lecture and/or group work (seminar, practice). | Completing compulsory elective subjects are compulsory for students by choosing them from the thematic list offered by the current university schedule at the time. | Completing elective subject is compulsory for students through the free subject choosing prescribed by the training and graduation requirements. Students may choose from the whole university’s full offered subject selection. |
| In the BSC programme you have to complete 180 credits: |
|---|
| Compulsory subjects 127 credits |
| Compulsory elective subjects 23 credits |
| Elective subjects 10 credits |
| Thesis Consultation 20 credits |
- ELTE Faculty of Economics. “Courses,” December 14, 2025. https://gtk.elte.hu/en/studies/courses.
- ELTE IK. “Understanding the Curriculum for BSc Students.” Digital. In ELTE IK Student Guide, 23. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227164/Essential%20student%20guide.pdf.
- ELTE Faculty of Informatics. “Curriculum,” December 9, 2025. https://www.inf.elte.hu/en/curriculum.
- ELTE IK. The Curriculum. Digital. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227188/The%20curriculum.pdf.
Prerequisite Flowchart (With Compulsory Elective + Weak Prerequisite)
flowchart LR %% ================================================== %% Semester 1 %% ================================================== subgraph S1["Semester 1"] MAT["Basic Mathematics<br/>IP-18fMATAG Pr"] PROG["Programming<br/>IP-18fPROGEG L+Pr"] IMP["Imperative Programming<br/>IP-18fIMPROGEG L+Pr"] CS["Computer Systems<br/>IP-18fSZGREG L+Pr"] LM["Learning Methodology<br/>IP-18fTMKG Pr"] BUS["Business Fundamentals<br/>IP-18fIVMEG L+Pr"] FUNP["Functional Programming<br/>IP-18fFUNPEG L+Pr"] end %% ================================================== %% Semester 2 %% ================================================== subgraph S2["Semester 2"] PNY["Programming Languages<br/>IP-18fPNYEG L+Pr"] OOP["Object-Oriented Programming<br/>IP-18fOEPROGEG L+Pr"] WEB1["Web Development<br/>IP-18fWF1EG L+Pr"] AA1["Algorithms & Data Structures I<br/>IP-18fAA1G Pr"] DM1["Discrete Mathematics I<br/>IP-18fDM1G Pr"] AN1["Analysis I<br/>IP-18fAN1G Pr"] CYBER["Cybersecurity Basics<br/>IP-24fKVSZKBIZTE L+Pr"] end %% ================================================== %% Semester 3 %% ================================================== subgraph S3["Semester 3"] AA2["Algorithms & Data Structures II<br/>IP-18fAA2G Pr"] WPROG["Web Programming<br/>IP-18fWPEG L+Pr"] PROGT["Programming Technology<br/>IP-18fPROGTEG L+Pr"] AN2["Analysis II<br/>IP-18fAN2G Pr"] DMAPP["Application of Discrete Models<br/>IP-18fDMAG Pr"] ML["Intro to Machine Learning<br/>IP-18fKVBGTE L+Pr"] PY["Python<br/>IP-18fKVPYEG L+Pr"] GPU["GPU Programming<br/>IP-18fKVGPUEG L+Pr"] end %% ================================================== %% Semester 4 %% ================================================== subgraph S4["Semester 4"] OS["Operating Systems<br/>IP-18fOPREG L+Pr"] DB1["Databases I<br/>IP-18fAB1G Pr"] ST["Software Technology<br/>IP-18fSZTG Pr"] TOC1["Theory of Computation I<br/>IP-18fSZEA1G Pr"] NUM["Numerical Methods<br/>IP-18fNM1G Pr"] CRYPTO["Cryptography & Security<br/>IP-18fKVKRBG Pr"] end %% ================================================== %% Semester 5 %% ================================================== subgraph S5["Semester 5"] CONC["Concurrent Programming<br/>IP-18fKPROGEG L+Pr"] NET["Telecommunication Networks<br/>IP-18fTKHG Pr"] AI["Artificial Intelligence<br/>IP-18fMIAE L+Pr"] DB2["Databases II<br/>IP-18fAB2G Pr"] TOC2["Theory of Computation II<br/>IP-18fSZEA2G Pr"] STAT["Probability & Statistics<br/>IP-18fVSZG Pr"] PTH["Programming Theory<br/>IP-18fKVPREG Pr"] TOOLS["Tools of Software Projects<br/>IP-18KVPRJG Pr"] COMP["Compilers<br/>IP-18fKVFPG Pr"] end %% ================================================== %% Strong prerequisites (PDF-exact) %% ================================================== IMP --> PNY PROG --> OOP CS --> WEB1 MAT --> AA1 MAT --> DM1 MAT --> AN1 AA1 --> AA2 WEB1 --> WPROG OOP --> PROGT AN1 --> AN2 DM1 --> DMAPP CS --> OS AA1 --> DB1 PROGT --> ST DM1 --> TOC1 AN2 --> NUM PNY --> CONC OOP --> NET DB1 --> DB2 TOC1 --> TOC2 AN2 --> STAT %% ================================================== %% Weak prerequisites (PDF-marked only) %% ================================================== AN2 -.-> STAT CS -.-> WEB1 WEB1 -.-> CYBER %% ================================================== %% Elective prerequisites %% ================================================== MAT --> ML MAT --> GPU MAT --> PTH DMAPP --> CRYPTO PNY --> TOOLS OOP --> COMP IMP --> PY
References
- ELTE IK. Computer Science BSc 2018 (in English, for Foreign Students). Digital. ELTE IK, 2025. https://www.inf.elte.hu/en/dstore/document/225452/PTI_BSc_angol_h%C3%A1l%C3%B3_honlapra%202019%20jan-m%C3%A1rcius.pdf.
- ELTE IK. “The Prerequisites.” Digital. In ELTE IK Student Guide, 35–37. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227164/Essential%20student%20guide.pdf.
- ELTE Faculty of Economics. “Courses,” December 14, 2025. https://gtk.elte.hu/en/studies/courses.
- ELTE IK. “Understanding the Curriculum for BSc Students.” Digital. In ELTE IK Student Guide, 23. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227164/Essential%20student%20guide.pdf.
- ELTE Faculty of Informatics. “Curriculum,” December 9, 2025. https://www.inf.elte.hu/en/curriculum.
- ELTE IK. The Curriculum. Digital. ELTE IK, 2024. https://www.inf.elte.hu/dstore/document/227188/The%20curriculum.pdf.