Undergraduate
Faculty of Engineering and Architecture
Industrial Engineering
Anlık RSS Bilgilendirmesi İçin Tıklayınız.Düzenli bilgilendirme E-Postaları almak için listemize kaydolabilirsiniz.


Introduction to Programming

Course CodeSemester Course Name LE/RC/LA Course Type Language of Instruction ECTS
IE2002 2 Introduction to Programming 2/2/0 CC English 5
Course Goals
-To teach the basic concepts of algorithm development

-To teach the basic concepts of Python programming and introduce Object-oriented programming

-To train students to write few simple programs to apply in numerical analysis
Prerequisite(s) NONE
Corequisite(s) NONE
Special Requisite(s) The minimum qualifications that are expected from the students who want to attend the course.(Examples: Foreign language level, attendance, known theoretical pre-qualifications, etc.)
Instructor(s) Professor Ayça Çakmak Pehlivanlı
Course Assistant(s) Res. Assist. Dilek Akburak Res.Assist. Abdullah Osman Res. Assist. Hasan Hüseyin Çelebi
Schedule Theory: Tuesday, 11:00-12:45, @CATS Practice: Section A - Wednesday, 9.00-10.45, 2ENDLAB Section B - Wednesday, 15.00-16.45, 2ENDLAB Section C - Thursday, 13.00-14.45, 4C091113 Section D - Thursday, 15.00-16.45, 4C091113 Section E - Thursday, 15.00-16.45, 2ENDLAB
Office Hour(s) Tuesday, 13.00-14.00, apointment by e-mail (a.pehlivanli@iku.edu.tr), @CATS online
Teaching Methods and Techniques -Lectures are presented by using power point slides, problems related to each chapter are solved in lab sessions, students are forced to study individually by assigning home works.  
Principle Sources

-  Python Crash Course: A Hands-On, Project-Based Introduction to Programming, Eric Matthes, ISBN-10: 1-59327-603-6, ISBN-13: 978-1-59327-603-4.

- Python Programming_ An Introduction to Computer Science 3rd Edition, John Zelle, 3rd Ed.  ISBN 1590280288, ISBN13: 9781887902991.


- Intro to Python for Computer Science and Data Science, Paul J. Deitel; Harvey Deitel, Print ISBN: 9780135404676, 0135404673, eText ISBN: 9780135404812, 0135404819, Edition: 1st, Copyright year: 2020, Pearson

 

Other Sources -
Course Schedules
Week Contents Learning Methods
1. Week Introduction to course syllabus, Programming Languages, Thonny IDE setup and usage Oral Presentation, Lab
2. Week Problem solving and the concept of algorithm (analyzing the problem, designing a solution, implementing the design, testing, maintaining, fundamentals of algorithmic problem solving) Oral Presentation, Lab
3. Week Pseudocodes, flowcharts, Variables and String operators Oral Presentation, Lab
4. Week Mathematical operators and examples Oral Presentation, Lab
5. Week Lists Oral Presentation, Lab
6. Week Control Structures: Conditional Statements (If), coding examples and constructing algorithm Oral Presentation, Lab
7. Week Control Structures: Repetitive Statements (For), coding examples and constructing algorithm Oral Presentation, Lab
8. Week Midterm
9. Week Dictionaries and Tuples Oral Presentation, Lab
10. Week User input and while Oral Presentation, Lab
11. Week Modular programming: Functions Oral Presentation, Lab
12. Week Modular programming: Functions Oral Presentation, Lab
13. Week File operations Oral Presentation, Lab
14. Week Matrix calculations Oral Presentation, Lab
15. Week Final Exam
16. Week Final Exam
17. Week Final Exam
Assessments
Evaluation tools Quantity Weight(%)
Midterm(s) 1 25
Laboratories 1 40
Final Exam 1 35


Program Outcomes
PO-1Ability to apply theoretical and practical knowledge gained by Mathematics, Science and their engineering fields and ability to use their knowledge in solving complex engineering problems.
PO-2Ability of determining, defining, formulating and solving complex engineering problems; for that purpose develop the ability of selecting and implementing suitable models and methods of analysis.
PO-3Ability of designing a complex system, process, device or product under real world constraints and conditions serving certain needs; for this purpose ability of applying modern design techniques
PO-4Ability of selecting and using the modern techniques and devices which are necessary for analyzing and solving complex problems in engineering implementations; ability of efficient usage of information technologies.
PO-5Ability of designing experiments, conducting tests, collecting data and analyzing and interpreting the solutions to investigate of complex engineering problems or discipline-specific research topics.
PO-6Ability of working efficiently in intra-disciplinary and multi-disciplinary teams; individual working ability and habits.
PO-7Ability of verbal and written communication skills; and at least one foreign language skills, ability to write effective reports and understand written reports, ability to prepare design and production reports, ability to make impressive presentation, ability to give and receive clear and understandable instructions
PO-8Awareness of importance of lifelong learning; ability to access data, to follow up the recent innovation in science and technology for continuous self-improvement.
PO-9Conformity to ethical principles; knowledge about occupational and ethical responsibility, and standards used in engineering applications.
PO-10Knowledge about work life implementations such as project management, risk management and change management; awareness about entrepreneurship and innovativeness; knowledge about sustainable development.
PO-11Knowledge about effects of engineering applications on health, environment and security in global and social dimensions, and on the problems of the modern age in engineering; awareness about legal outcomes of engineering solutions.
Learning Outcomes
LO-1Explain fundamental data types. Develop algorithms through the process of top-down, stepwise refinement. Recognize structured programming.
LO-2Use the logical operators, break and continue program control statements. Recognize how to construct programs modularly from small pieces called functions. Review the common math functions available in the Python library.
LO-3Express the mechanisms used to pass information between functions. Describe how to write and use functions that call themselves. Use arrays to store, sort and search lists and tables of values.
LO-4Create an array, initialize an array and refer to individual elements of an array. Create and manipulate multiple subscript arrays. Identify the close relationships among pointers, arrays and strings.
LO-5Pass arguments to functions. Plotting graphics using Python.
Course Assessment Matrix:
Program Outcomes - Learning Outcomes Matrix
 PO 1PO 2PO 3PO 4PO 5PO 6PO 7PO 8PO 9PO 10PO 11
LO 1
LO 2
LO 3
LO 4
LO 5