Department of Computer Science and Information Technology
Institute of Advanced Studies in Basic Sciences

Elements of Computers and Programming - Programming I (Autumn 2016) Previous year
Section: Room I002, Saturday, 15:40 PM - 17:40 PM
Section: Room I002, Monday, 15:40 PM - 17:40 PM

Instructor: Dr. Ebrahim Ansari
Office Hours: See my weekly Schedule
Location: Computer Science and Information Technology Dept., Room 219

Student Assistants
Name E-mail Address Role
Alireza AbbasAlipour Proctor
Behzad Moradi Proctor
Azadeh Jalilian TA
Neda Najafi TA
Hadi Sehhat TA

Required Text: Introduction to Programming using Python
Author: Y. Daniel Liang
Publisher: Pearson
ISBN: 978-0-13-274718-9
Supplementary Material: Think Python, How to Think Like a Computer Scientist

Needed Softwares

Python: You can download it using Python official website. All necessary information will be thought in class.

Scite text editor (optional): Download last version using one of these links: SciTE 3.6.1 (x86)   SciTE 3.6.1 (amd64)

Scope of the Course

We'll learn to think like a programmer...


The only way to learn programming is to program. Doing the programming assignments is crucial to performing well in class. I strongly recommend that you write programs over and above what is assigned to you. Assignments will be given almost every week. Each assignment will have a clearly stated due date and time. Assignments start out being easy but get harder over the semester. If you are having considerable difficulty with Assignments please see me immediately.

The assignments will require a substantial time commitment over several days (an average of 8 hours per week should be expected). Be sure to budget sufficient time to complete assignments before the deadline.

You should prepare and give up your assignments before deadline to your TA.

Always make a backup copy of the Python 3 source code (i.e. the .py file) on a removable secondary storage device (e.g. a flash drive). This will be necessary in cases where your program gets lost, is corrupted, or if there is some dispute over what was turned in when.


We will be having quizzes regularly throughout the semester. The quizzes will be administered at the beginning of class.


Announcement in future


There will be one midterm test and a final examination.


Your performance in this class will be evaluated using your scores for quizzes, programming assignments, and two tests. The weights of each of these components are listed below. There are no extra credit projects or assignments to improve your grade.


Acts that exceed the bounds defined by the approved collaboration practices will be considered cheating. Such acts include:


No announcement yet