BIL101 Introduction to Algorithm and ProgrammingIstinye UniversityDegree Programs Computer Programming (Evening Education)General Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
Computer Programming (Evening Education)

Preview

Associate TR-NQF-HE: Level 5 QF-EHEA: Short Cycle EQF-LLL: Level 5

Course Introduction and Application Information

Course Code: BIL101
Course Name: Introduction to Algorithm and Programming
Semester: Fall
Course Credits:
ECTS
5
Language of instruction:
Course Condition:
Does the Course Require Work Experience?: No
Type of course: Compulsory Courses
Course Level:
Associate TR-NQF-HE:5. Master`s Degree QF-EHEA:Short Cycle EQF-LLL:5. Master`s Degree
Mode of Delivery: Face to face
Course Coordinator: Öğr. Gör. AHMET SELİM ÖVER
Course Lecturer(s): Öğr. Gör. Mustafa Koçal
Course Assistants:

Course Objective and Content

Course Objectives: This course aims to prepare students who have little or no experience in computer programming, to think computationally and to develop software by using the Python programming language. In addition to the elements of the Python language, the course will also teach programming logic and the fundamentals of software development.
Course Content: Fundamental computer concepts, Programming basics, Variables, Expressions, Functions, Conditional expressions, Recursion, Fertile functions, Repetitions, Loops, Strings, Lists, Dictionaries, Tuples

Learning Outcomes

The students who have succeeded in this course;
1) Learns fundamental computer and programming concepts.
2) Gains the ability of scientific thinking.
3) Learns the fundamentals of computer programming.
4) Understands computational problems.
5) Gains the skills of solving problems with computer aided.
6) Learns programming techniques using Python programming language.
7) Gains the ability to develop an algorithmic approach.

Course Flow Plan

Week Subject Related Preparation
1) Introduction to the course, meet with the instructor, fundamentals computer concepts (central processing unit, memory, backup, operating system, algorithm, software, programming and meet with Piazza, etc.). 1
2) Fundamentals of programming, variables, expressions, terms. 1,3
3) Fundamentals of programming, variables, expressions, terms (continue). 1,3,4
4) Functions 2,3,4
5) Functions (continue) 2,3,4
6) Conditional expressions, recursion. 2,5,6
7) Fertile functions. 2,5,6
8) Midterm 1-7. Weeks
9) Repeats, loops. 4,5,6,7
10) Repeats, loops (continue) 4,5,6,7
11) Lists, Dictionaries, Tuples. 6,7
12) Lists, Dictionaries, Tuples (continue). 6,7
13) Case study: selection of the appropriate data structure. 5,6,7
14) Data structures 2,4,5,7
15) Final exam 1-14. Weeks

Sources

Course Notes / Textbooks: Think Python, 2nd Edition, How to Think Like a Computer Scientist, Allen Downey, Green Tea Press (2015).
References: (Yardımcı Kitap) Her Yönüyle Python, 5. Baskı, Fırat Özgül, Kodlab, 2017.

(Auxiliary Book) Her Yönüyle Python, 5. Baskı, Fırat Özgül, Kodlab, 2017.

Course - Program Learning Outcome Relationship

Course Learning Outcomes

1

2

3

4

5

6

7

Program Outcomes
1) He gains the ability of problem solving and analytical thinking skills. 3 2 3 3 3 3 3
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. 2 3 2 3 3 2 2
3) He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. 3 3 3 2 3 2 2
4) He understands object-oriented programming concept and web programming. 2 2 2 3 2 2 2
5) He learns radix systems, fundamental electronics and computer hardware knowledge. 3 2 2 2 3 2 2
6) He gains mobile programming skills and develops applications for mobile platforms. 2 2 2 2 3 2 2
7) He designs and codes databases. 2 3 2 3 2 3 2
8) He learns to program and use computer networks, open source operating systems. 2 3 3 3 3 3 2
9) He uses the English language effectively. 1 3 3 2 2 2 3
10) He learns to use appropriate data structures according to programming requirements. 3 3 2 2 2 3 3
11) He develops software individually or as a team. 3 2 3 3 3 3 3
12) He follows developments in the field, high technology tools / applications. 3 3 3 2 3 3 3
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. 3 3 3 3 3 3 3

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Average 3 Highest
       
Program Outcomes Level of Contribution
1) He gains the ability of problem solving and analytical thinking skills. 3
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. 3
3) He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. 3
4) He understands object-oriented programming concept and web programming. 3
5) He learns radix systems, fundamental electronics and computer hardware knowledge. 3
6) He gains mobile programming skills and develops applications for mobile platforms. 3
7) He designs and codes databases. 3
8) He learns to program and use computer networks, open source operating systems. 3
9) He uses the English language effectively. 3
10) He learns to use appropriate data structures according to programming requirements. 3
11) He develops software individually or as a team. 3
12) He follows developments in the field, high technology tools / applications. 3
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. 3

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Quizzes 1 % 15
Midterms 1 % 35
Final 1 % 50
total % 100
PERCENTAGE OF SEMESTER WORK % 50
PERCENTAGE OF FINAL WORK % 50
total % 100

Workload and ECTS Credit Calculation

Activities Number of Activities Preparation for the Activity Spent for the Activity Itself Completing the Activity Requirements Workload
Course Hours 3 12 1 39
Quizzes 1 15 1 16
Midterms 1 25 2 27
Final 1 40 2 42
Total Workload 124