IN3110/IN4110 will not be held Autumn 2024.
IN4110 – Problem Solving with High-Level Languages
Course description
Course content
This course provides an introduction to more advanced aspects of the scripting and programming language Python, e.g. object-oriented programming, regular expressions, interaction with the operating system, platform-independent code, efficient design of program systems with time-critical operations, extensions in compiled languages such as C/C++, data analysis and web programming. The course also provides a basic introduction to the scripting language Bash, testing and documentation of code, and version control system git. Special emphasis is placed on practical problem solving with a focus on interesting and study-relevant tasks.
Learning outcome
After taking this course you'll:
- have knowledge of more advanced aspects of the Python programming language, including the use of regular expressions and interaction with the operating system
- be able to write scripts in Python and Bash to automate your own work tasks
- have knowledge of the version control system git and how code can be documented and tested
- be able to use vectorization to write efficient programs in Python
- be able to combine Python with compiled programming languages such as C and C++
- be able to write a web user interface for Python programs
- be able to use Python tools for advanced data analysis and machine learning
- be able to write programs that solve problems from different disciplines, such as physics, medicine, biology and finance
- have gained a deeper understanding of more advanced aspects of the Python language, such as efficient numerical calculations by extending Python with code written in C/C++ (extending Python)
- have learned to run data analytics and machine learning with advanced Python packages (Pandas and scikit-learn).
Admission to the course
Students admitted at UiO must?apply for courses?in Studentweb. Students enrolled in other Master's Degree Programmes can, on application, be admitted to the course if this is cleared by their own study programme.
Nordic citizens and applicants residing in the Nordic countries may?apply to take this course as a single course student.
Recommended previous knowledge
- IN1000 – Introduction to Object-oriented Programming?or?IN1900 – Introduction to Programming with Scientific Applications
- IN1010 – Object-oriented Programming?or?IN1910 – Programming with Scientific Applications
Overlapping courses
- 10 credits overlap with IN3110 – Problem Solving with High-Level Languages.
- 10 credits overlap with INF3331 – Probleml?sning med h?yniv?-spr?k (continued).
- 10 credits overlap with INF4331 – Problem solving with high level languages (continued).
- 5 credits overlap with INF3330 – Problem solving with high level languages (discontinued).
- 5 credits overlap with INF4330 – Problem solving with high level languages (discontinued).
- 5 credits overlap with INF5660 – Advanced problem solving with high level languages (discontinued).
Teaching
2 hours of lectures and 2 hours of exercises each week. Lectures will be a combination of ordinary lectures and?supervised project work and problem solving.
Examination
Portfolio assessment.?Read more about requirements for submission of assignments, group work and legal cooperation under guidelines for mandatory assignments.
It will also be counted as one of?your three?attempts to sit the exam for this course, if you sit the exam for one of the following courses:?IN3110 – Problem Solving with High-Level Languages, INF3331 – Probleml?sning med h?yniv?-spr?k (continued), INF4331 – Problem solving with high level languages (continued)
Examination support material
Any.
Language of examination
You may write your examination paper in Norwegian, Swedish, Danish or English.
Grading scale
Grades are awarded on a pass/fail scale. Read more about?the grading system.
More about examinations at UiO
- Use of sources and citations
- Special exam arrangements due to individual needs
- Withdrawal from an exam
- Illness at exams / postponed exams
- Explanation of grades and appeals
- Resitting an exam
- Cheating/attempted cheating
You will find further guides and resources at the web page on examinations at UiO.