Department of Mathematical Sciences
This course introduces the fundamentals of computer programming using the Java programming language. We cover all basic syntax of Java with object-oriented programming principles.
- Sunday and Tuesday 10:30-12:30 AM, Wednesday 1:00-3:00 PM.
The class is held virtually in VClass.
| Lecturer | Mojtaba Ostovari | ostovari.mojtaba@gmail.com | ||
| Teaching Assistants |
Helia Yazdanyar Helia Niaparast Diba Hashemi AmirMohammad Sadat MohammadMehdi Zare Hossein Rahmani Erfan Mousavian MohammadAli Olama Matin Ansaripour Mobin Madani Kasra Khoshjoo Ali Shafiei Mohammad Torabi Nima Khodaveisi Ali Tavassoli Benyamin Beyzaie |
helia79yaz@gmail.com helianiaparast@gmail.com diba.hashemi@gmail.com sam.sadat.shokouhi@gmail.com zaremohammadmehdi2001@gmail.com rahmani.hossein1380@gmail.com erfan_mousavian1380@yahoo.com rastegar123456789@gmail.com matinansaripour@gmail.com mobinmadani8@gmail.com kasrakhoshjoo@gmail.com shafieiali42@gmail.com muht2035@gmail.com nima10khodaveisi@gmail.com tavassolyali@gmail.com benyamin137928@gmail.com |
||
-
Sunday 1399/8/18
Course description Introduction to Hardware
-
Tuesday 1399/8/20
Introduction to Software Representation of data in binary
- Class Video
- Software Slide
- References:
-
Wednesday 1399/8/21
Machine language, High level programming language Compiler & Interpreter Hello World! How to run a java application using commandline
- Class Video 1
- Video 2
- Software Slide
- References:
-
Sunday 1399/8/25
Primitive data types Declare variable Java Math class
-
Tuesday 1399/8/27
Conditioning Loop
-
Wednesday 1399/8/28
String Array
-
Sunday 1399/9/2
String functions Scanner
-
Tuesday 1399/9/4
loop examples
-
Wednesday 1399/9/5
loop examples
-
Sunday 1399/9/9
Break 2d Array
-
Tuesday 1399/9/11
Function
-
Wednesday 1399/9/12
Set List
-
Sunday 1399/9/16
Map list (graph)
-
Tuesday 1399/9/18
BFS Recursive
-
Wednesday 1399/9/19
Recursive
-
Sunday 1399/9/23
Recursive
-
Tuesday 1399/9/25
Recursive
-
Wednesday 1399/9/26
switch case do while Random File
-
Sunday 1399/9/30
Introduction to object oriented programming Class Field Constructor
-
Tuesday 1399/10/2
Method, static method Field, static field Final
-
Wednesday 1399/10/3
import Package toString
-
Sunday 1399/10/7
Midterm exam
-
Tuesday 1399/10/9
Access modifier - private setter - getter
-
Wednesday 1399/10/10
Access modifier Inheritance
-
Sunday 1399/10/14
abstract (method, class) override final (variable, method, class)
-
Tuesday 1399/10/16
Interface
-
Wednesday 1399/10/17
Exception Handling try catch finally throw throws
-
- Helia Niaparast
- AmirMohammad Sadat
- Erfan Mousavian
- Kasra Khoshjoo
- Mohammad Torabi
- Helia Niaparast
-
* HW0 (Hi-Programming Homework)- Release: Sunday 1399/8/25, 15:00 PM
- Deadline: Wednesday 1399/9/12, 13:00 PM
- Grade: 7 points
- Problems
* HW1- Release: Wednesday 1399/8/28, 15:00 PM
- Deadline: Wednesday 1399/9/12, 13:00 PM
- Grade: 38 points
- Problems
- Solution
* HW2- Release: Wednesday 1399/9/12, 15:00 PM
- Deadline: Wednesday 1399/9/19, 13:00 PM
- Grade: 24 points
- Problems
* HW3- Release: Wednesday 1399/9/19, 15:00 PM
- Deadline: Friday 1399/9/28, 24:00 PM
- Grade: 27 points
- Problems
* HW4- Release: Wednesday 1399/9/26, 15:00 PM
- Deadline: Saturday 1399/10/6, 24:00 PM
- Grade: 40 points
- Problems
To ask your questions about this homework, please refer to Quera.
To upload your answers, please refer to Quera.
To ask your questions about this homework, please refer to Quera or TA Classes according to the time schedule.
TA classes will help to answer weekly assignments that have no grades.
- Helia Yazdanyar
- Diba Hashemi
- MohammadMehdi Zare
- Hossein Rahmani
- MohammadAli Olama
- Matin Ansaripour
- Mobin Madani
- Kasra Khoshjoo
- Ali Shafiei
- Mohammad Torabi
- Nima Khodaveisi
- Ali Tavassoli
- Benyamin Beyzaie
- Assignments – 35%
There will be 4 homework series sets that release each week.- Project – 25%
After the first month, we define a project. Each week, we add more tasks to it.
Please note that the project is mandatory, and you have to present it live.- Midterm Exam – 20%
Wednesday 1399/10/7, 10:30 AM.- Final Exam – 20%
Sunday 1399/11/12, 9:00 AM.
Further details will be announced later. - There are also weekly assignments with no grade, but we strongly advise you to do them and ask your questions, if any.
- Java JDK (Please download JDK 8.)
- IntelliJ IDEA (Please download Community version.)
- Installation guide video
If you have any questions about the course, please send an email to bp.fall2020@gmail.com .

