IN1900 – Introduction to Programming with Scientific Applications

Schedule, syllabus and examination date

Choose semester

Course content

The course introduces basic programming in the Python programming language. The programming themes are illustrated in a series of mathematical examples. The mathematical themes are synchronized with MAT-INF1100 – Modelling and computations and MAT1100 – Calculus. Examples and exercises are derived from natural sciences, and show how problems in physics, statistics, biology, medicine, chemistry and economics can be solved by means of mathematics and programming.

Learning outcome

After finishing IN1900, you'll:

  • be able to write programs that solve math problems you encounter in MAT-INF1100 – Modelling and computations and MAT1100 – Calculus.
  • have basic skills in Python programming using data structures, functions, classes, objects, modules and vectorized calculations
  • be able to create program sketches and algorithms based on a mathematical specification of a science problem
  • be able to create solutions to minor real issues on a computer with user interaction, graphics (plot, animations) and storage/reading of data to/from disk
  • be able to use a variety of Python modules in self-interaction interaction to integrate, derive, find zeroes, calculate boundary values and sequences, and solve differential and differential equations from physics, biology and finance
  • be able to construct, find and correct errors in your own programs
  • be able to construct tests to verify that computer programs work properly


Students who are admitted to study programmes at UiO must each semester register which courses and exams they wish to sign up for in Studentweb.

If you are not already enrolled as a student at UiO, please see our information about admission requirements and procedures.


Formal prerequisite knowledge

In addition to fulfilling the Higher Education Entrance Qualification, applicants have to meet the following special admission requirements:

  • Mathematics R1 or Mathematics (S1+S2)

The special admission requirements may also be covered by equivalent studies from Norwegian upper secondary school or by other equivalent studies. Read more about special admission requirements (in Norwegian).


4 hours of lectures and 2 hours of group lectures each week.

  • Attendance of the first lecture is compulsory
  • Attending the first 4 weeks of group exercises is compulsory. (Norwegian link)
  • Submitting mandatory assignments is compulsory

Read more about requirements for assignment of assignments, group work and legal cooperation under guidelines for mandatory tasks.


Written digital midterm exam (4 h) counts as 25% of the final grade, 4 hours written digital exam at the end of the semester counts as 75% of the final grade.

Mandatory assignments must be approved to be allowed to take the exam.

Digital examination

The written examination is conducted in the digital examination system Inspera. You will need to familiarize yourself with the digital examination arrangements in Inspera.

Read more about written examinations using Inspera.

Examination support material

No examination support material is allowed.

Language of examination

You may write your examination paper in Norwegian, Swedish, Danish or English.

Grading scale

Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.

Explanations and appeals

Resit an examination

This course offers both postponed and resit of examination. Read more:

Withdrawal from an examination

It is possible to take the exam up to 3 times. If you withdraw from the exam after the deadline or during the exam, this will be counted as an examination attempt.

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: INF1100 – Introduction to programming with scientific applications (continued), INF1000 – Introduction to object-oriented programming (continued), INF1001 – Grunnkurs i objektorientert programmering (discontinued), IN1000 – Introduction to Object-oriented Programming, IN-KJM1900 – Introduksjon i programmering for kjemikere and BIOS1100 – Introduction to Computational Modelling in the Biosciences

Special examination arrangements

Application form, deadline and requirements for special examination arrangements.

Facts about this course






Every autumn


Every autumn

Teaching language