BIL132 Programming 2
Course Schedule: Monday(9 AM) C207; Lab: Monday(4 PM) B311, Thursday(4 PM) B312
Course TA(s): TBD
Course webpage: http://ww3.ticaret.edu.tr/aboyaci/dersler/bil132-programming-2/
Source Codes: https://github.com/aboyaci/BIL131_Programming1
Course Description: This course teaches more advanced aspects of C programming, programming techniques, Matlab environment and create programs to solve practical problems.
Prerequisite(s): BIL131 – Programming1
Note(s): You should have a Linux (preferably Ubuntu) running laptop with you.
Credit Hours: 3
ECTS Credits: 7
Textbook: The C Programming Language, 2nd Edition, Brian W. Kernighan, Dennis M. Ritchie; ISBN-13: 978-0131103627
MATLAB Programming for Engineers, Stephen J. Chapman, ISBN-13: 978-0495244493
Course Objectives:
At the completion of this course, students will be able to:
- Understand general structure of computer program
- Understand basic principles and techniques of programming
- Get familiar with development environments
- Learn variables, loops, control statements and procedures
- Write C programs to solve basic problems
- Use Matlab to solve problems
Grade Distribution:
Assignments | 20% |
Midterm Exam | 40% |
Final Exam | 40% |
Letter Grade Distribution:
>= 90.00 | AA | 50.00 – 59.99 | CC |
80.00 – 89.99 | BA | 45.00 – 49.99 | DC |
70.00 – 79.99 | BB | 40.00 – 44.99 | DF |
60.00 – 69.99 | CB | <= 39.99 | F |
Course Policies:
- General
- You must have your computer with you in all sessions.
- Quizzes and exams are closed book, closed notes.
- No makeup quizzes or exams will be given.
- Grades
- Grades in the C range represent performance that meets expectations; Grades in the B range represent performance that is substantially better than the expectations; Grades in the A range represent work that is excellent.
- Grades will be maintained in OBS. Students are responsible for tracking their progress by referring to the online gradebook.
- Labs and Assignments
- Students are expected to work independently. Offering and accepting solutions from others are an act of plagiarism, which is a serious offense and all involved parties will be penalized according to the Academic Honesty Policy. Discussion amongst students is encouraged, but when in doubt, direct your questions to the professor, tutor, or lab assistant. No late assignments will be accepted under any circumstances.
- Attendance and Absences
- According to the University rules, regulations, and guidelines (Chapter Four, Section related to the attendance, Item 25, first clause [in Turkish]), all students should attend at least 70% of the lectures throughout the semester of interest. Students who do not meet the attendance criterion will fail with the letter grade “IA”. It is students’ responsibility to follow up with their intermittent attendance status throughout the semester. The instructor will not announce and/or disseminate the attendance status of the students.
- Students are responsible for all missed work, regardless of the reason for absence. It is also the absentee’s responsibility to get all missing notes and/or materials.
Academic Honesty Policy:
See Academic Honesty page.
Tentative Course Outline:
The weekly coverage might change as it depends on the progress of the class. However, you must keep up with the reading assignments.
Week 1
- General review
Week 2
- Pointers and memory structure
Week 3
- Header Files
- Macros and selective compiling
- External libraries
Week 4
- File operations
Week 5
- Memory management
Week 6
- Pointers
- Function Pointers
Week 7
- Midterm review
Week 8
- Midterm Exam
Week 9
-
Introduction to Matlab
Week 10
-
Matrix and vector operations
Week 11
-
Plotting
-
User defined functions
Week 12
- Loops and vectorization
Week 13
- Complex Numbers and 3D Plots
- Custom data types
Week 14
- Final review
Course Resources