Course Information
Lecturer | Prof. Seonah Lee |
Time and Place | Tuesday: 407-508 09:00-11:00 |
Wednesday: 407-203 10:00-12:00 | |
Friday: 407-203 10:00-12:00 |
Prof. Seongjin Lee and I will share many information for teaching you. In the class, we will use the same text books, class materials, exercises, and assignments. Overall layout and the course schedule in both of the classes are the same. However, Each class is graded separately.
I will use the GNU e-learning system: http://e-campus.gnu.kr. You can access it by using your mobile, http://me-campus.gnu.kr. You can also find helpful information by visiting Prof. Seonjin Lee's course page.
Course Introduction
We are going to learn two languages in this course, Python and C. Python is a language that is easy to learn. By learning Python, you can easily understand the components of programming. Python is also powerful, jumping to the top of the uses of programming languages (see The Top Programming Languages 2017). C is a lower-level language than Python. If you is going to develop embedded software systems, such as aerospace software systems, you need to use C and its variations (e.g., C++ and C#). By using C, you can control the details of hardware and operating systems.
Goal
In this course, we are going to learn the essence of two languages, namely Python and C. Students are going to learn the following concepts.
• Compiling and running the program
• Variables, Data Types, and Arithmetic Expressions
• Loops and Control Flows
• Arrays and Pointers
• Functions
• Data Structures
• File I/O
Textbook
Python: The class is based on the first book which is elementary and an introductory textbook on python for absolute beginner, but the second book is recommend. The second book is available on the web.
1. 모두의 파이썬 20일 만에 배우는 프로그래밍 기초 | 이승찬 지음 | 길벗 | 2016년 05월 09일 출간
2. 컴퓨터 과학자처럼 생각하는 법 "Think Python: How to Think Like a Computer Scientist" | Allen B. Downey | 2015
C: There are two must have textbooks. I also recommend you to read C언어 공부법과 책추천(by sunyzero). It gives guide on how to study the language and also emphasizes why the first two books are required textbooks.
1. K.N. King, "C Programming: A Modern Approach," W. W. Norton & Company, 2nd Edition, (KNK로 표기)
2. Brian W. Kernighan, Dennis M. Ritchie, "C Programming Language" (Kernighan 의 C언어 프로그래밍)Prentice Hall, 1988 (2nd Edition) (K&R로 표기)
For your information, we used the following book on 2016.
• 어서와 C언어는 처음이지! 초보자를 위한 C 프로그래밍 완벽가이드 | 그레그 페리 , 딘 밀러 지음 | 천인국 옮김 | 인피니티북스 | 2015년 06월 26일 출간
Evaluation
Exam I (Python) | 25% | Attendance | 10% |
Exam II (C) | 20% | Assignment | 20% |
Exam III (C) | 25% | Total | 100% |
Schedule
Week |
Topic |
Lecture |
Reading |
Lab |
Reading: |
1 |
Python |
Aug-29 |
Cource Overview & IntroductionD01 |
Aug-30 |
Variables D02-03, Operations and variables |
2 |
Sep-05 |
Flow Diagram D04-05, for Loops |
Sept-06 |
Drawing and Input D06-07, Drawing and Input |
|
3 |
Sep-12 |
Control Flow D08-09, |
Sept-13 |
Day13 거북이 그래픽 응용하기 |
|
4 |
Sep-19 |
Repetition D10 Loops |
Sept-20 |
Arrays D14-15 Typing Game |
|
5 |
Sep-26 |
Day11 함수 / Day12 함수 응용 |
Sept-27 |
Review |
|
6 |
C |
Oct-03 |
추석 |
Oct-4-6 |
추석 |
7 |
Oct-10 |
EXAM I Place: 407-101 Duration: 2 Hours |
Oct-11 |
Exam Review & Compilation Pipeline |
|
8 |
Oct-17 |
C fundamentals, Formatted Input/Output |
Oct-18 |
||
9 |
Oct-24 |
Expression, Basic Types |
Oct-25 |
Exercise 9 |
|
10 |
Oct-31 |
Control Flow |
Nov-01 |
Exercise 10 |
|
11 |
Nov-07 |
EXAM II Place: 407-101 Duration: 2 Hours |
Nov-08 |
Exam Review |
|
12 |
Nov-14 |
Arrays, Functions |
Nov-15 |
Exercise 11 |
|
13 |
Nov-21 |
Pointers |
Nov-22 |
Exercise 12 |
|
14 |
Nov-28 |
Pointers and Arrays |
Nov-29 |
Exercise 13 |
|
15 |
Dec-05 |
Structures |
Dec-6-8 |
Exercise 14 |
|
16 |
Dec-12 |
Exam III Place: 407-101 Duration: 2 Hours |