IDC 101 : Introduction to computation (Aug-Dec 2017)

This is an introductory course on using computers to solve simple problems.
Along the way, Python programming language will also be taught.
The course instructors are M. S. Santhanam and Umakant Rapol.
This website will have all the updates for this course.

Course Contents :

  • Basics of computation.
  • Python programming language (version 3).
  • Problem solving using Python.

Evaluation :

  • Quiz : 40%
  • Midsem : 30%
  • Endsem : 30%
Each week there will be one computer lab session,
some of which will be evaluated.

Suggested Books :

  • How to think like a computer scientist : Learning with Python
    by Allen Downey, Jeffrey Elkner, Chris Meyers
    Publisher: Dreamtech Press (2015).

    (Note : This book is legally available for download from the link given above and print version available in most book shops.)


  • Python
    Mike McGrath
    (McGraw Hill Education (2017)

Online resources for Python beginners :

Online resources for Linux :


Problems for the lab sessions :

(Note : Throughout this course, we will use only python version 3.)


7-11 Aug, 2017 : Lab exercise 1

14-18 Aug, 2017 : Lab exercise 2

You need to know : format and input/output.

Python help for exercise 2


21-25 Aug, 2017 : Lab exercise 3        

You need to know : If ...else statements and operators

Python help for exercise 3     One more help

Sample programs : bool1.py     bool2.py     day.py


28 Aug-1 Sep, 2017 : Lab exercise 4

You need to know : while loop and Lists

Sample programs : loop1.py     loop2.py

First test will be held on 8.9.2017 as per the following schedule:
Batch-1: 2:30 to 3:30 pm / Batch-2: 3:30 to 4:30 pm / Batch-3: 4:30 to 5:30 pm / Batch-4: 5:30 to 6:30 pm/     Some instructions

11-15 Sep, 2017 : Lab exercise 5

Sample programs : avg2.py     avg1.py     avg.py


18-19 Sep, 2017 : Lab exercise 6
You need to know : Bisection method and Newton-Raphson method.

Midsem exam on 27.9.2017.
Some information related to midsem exam.


9-13 Oct, 2017 : Lab exercise 7

You need to know : loadtxt

Sample programs : avg3.py     read_dat.py    

Sample data : sp5.dat     eepvsp.dat     baffin.dat     stsamp.dat    


16-20 Oct, 2017 : Lab exercise 8

You need to know : savetxt and write

Sample programs : food1.py     food2.py    

Sample data : food.dat     rainfall.dat    


23-27 Oct, 2017 : Lab exercise 9

You need to know : Python based plotting tool matplotlib and Least squares method. See also Least squares fit.

Formulae required for least squares fit    

Sample programs : plotdata.py    

Sample data : linear_data_with_noise.dat     freefall.csv    


30 Oct-3 Nov, 2017 : Lab exercise 10

You need to know : Integration algorithms; Mid-point rule, Trapezoidal rule and Simpson's rule.
A summary of all the three methods is given here.

Second test will be held as per the following schedule:
Batch-1 : 8.11.2017, 2:30 to 3:45 pm
Batch-2: 8.11.2017, 4:15 to 5:30 pm
Batch-3: 7.11.2017, 2:30 to 3:45 pm
Batch-4: 9.11.2017, 2:30 to 3:45 pm
Some instructions

13 - 17, Nov 2017 : Lab exercise 11

You need to know : Numerical algorithms to solve differential equations.
Runge-Kutta methods and Euler method.

Practical component of the final exam will be held on 22.11.2017 as per the following schedule:
Batch-1 : 9:00 to 10:30 am
Batch-2 : 11:00 am to 12:30 pm
Batch-3 : 2:00 to 3:30 pm
Batch-4 : 4:00 to 5:30 pm
Some instructions


Keep visiting this page for updates to this course.


Back to home page