SCIUS: Computer Programming Using C (Spring 2015)


Course Description:
Introduction to computer programming: flowcharting, pseudocode, data types, variables, control structure, array, function, input/output, basic computer program language

Prerequisite: None

Instructor: Chakchai So-In, Ph.D., chakso AT kku.ac.th
Office: SC 6706
Office Hours: Thursday 14.40pm to 15.35pm (or email me for appointment)
Class homepage: http://web.kku.ac.th/chakso/SCIUS_Spring15/
Teaching Assistant:
1. ศึกษาศาสตร์ Songyut Permpol songyut_p AT kkumail.com
2. มอดินแดง Phet Imtongkhum phet AT phet.in.th
Location:
the class meets on Thursday at room LabC
1. ศึกษาศาสตร์ from 15.35pm to 17.15pm for lecture/lab;
2. มอดินแดง from 13.00pm to 14.40pm for lecture/lab;
Facebook Group:
1. ศึกษาศาสตร์ Facebook Group
2. มอดินแดง Facebook Group
Class Email: N/A
Textbook/Supplementary
*ดร. จักรชัย โสอินทร์, "Computer Programming in C (Thai Edition)," 2012. Book_Cover
1. อุมาพร ศิรธรานนท์, "คอมพิวเตอร์: โครงการตำราวิทยาศาสตร์และคณิตศาสตร์, มูลนิธิ สอวน, 2011
2. ธีรวัฒน์ ประกอบผล, “คู่มือการเขียนโปรแกรม ภาษา C” สำนักพิมพ์ ซิมพลิฟลาย, 2010.
3. นวลวรรณ สุนทรภิษัช และคณะ, “คอมพิวเตอร์ : การเขียนโปรแกรมคอมพิวเตอร์ ภาษาซี” สำนักพิมพ์ สวอน, 2009.
4. Yaowarat Sirisathitkul, “Structure Programming” School of Informatics, Walailak University, 2008.
5. คณาจารย์ภาควิชาวิศวกรรมคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์, “Introduction to Computer Programming” 2007.
6. Website http://www.programming.in.th/
7. Other C programming books or wiki (go search)
Option (download Thai C book here) and here is an example of C code
Final Project 2014: Previous Final Project 2013: Previous Final Project

News
Lecture Schedule: (Tentative Subject to Change)
ClassDayDateTopic
1Thursday06/18/2015Course Overview
2Saturday06/20/2015Introduction to Computer System + Flowchart and Pseudo Code
3Thursday06/25/2015Introduction to C Programming
4Saturday06/27/2015Control Structure
5Thursday07/09/2015(Cont.)
6Saturday07/12/2015Function
7Thursday07/16/2015Project Topic Selection + Encoragement
8Saturday07/18/2015Array
Thursday07/21-24/2015Midterm Week
9Thursday07/30/2015Array (Cont.)
10Saturday08/01/2015Structure + Dhamma #1 + Dhamma #2
11Thursday08/06/2015File
12Saturday08/08/2015Pointer
13Thursday08/13/2015Review for Final + Lab Marathon
14Saturday08/15/2015Final Project Presentation
15Thursday08/20/2015Final Exam
16Saturday08/22/2015Final Lab Exam

Lab Schedule: Tentative (Subject to change)
LabsDateTitleDue Date
1Thursday06/18/2015Overview: Labs
2Saturday06/20/2015Lab1 - CodeBlock
3Thursday06/25/2015Lab2 - Flowchart
4Saturday06/27/2015Lab3 - C programming
5Thursday07/04/2015Lab4 - Operation
6Saturday07/09/2015Lab5 - Selection
7Saturday07/11/2015Lab6 - Loop
8Thursday07/16/2015Lab8 - Function
9Saturday07/18/2015Lab9 - Array
Thursday07/21-28/2015Midterm Week
10Thursday08/01/2015Lab10 - File and Pointer

Note:
1. Each full stated above lab will be issued every Friday.
2. During the lab hour, there is "one" additional lab needed to complete WITH in-class submission -There is no Internet conneciton during the lab.
You MUST zip all file into StudentID_LabZ.zip such that Z is Lab number.
Assignments (Spring 2015 schedule) (Subject to Change)
Three or six homeworks will be assigned throughout the course. All assignment MUST be turned in as both HARDCOPY (during class or in my mail box). All submission MUST be turned in 15 mins before class. For all reasons, late penalty will be applied. Late homework will be assessed a 30% penalty. No homework will be accepted more than one day late.

Homework

Description

Out DateDue Date
#1Flowchart and Pseudo Code06/20/201506/27/2015
#2Control Structure06/27/201507/09/2015
#3Array07/11/201507/18/2015

Note:For homework and lab assignment; you MUST include the cover letter with students' signature AND embeded into the beginning of the ".c" program OTHERWISE they WILL NOT be graded.
Final Exams
Lecture:
Allow: calculator (talks to the department for specific models)
Allow: One (hand-written) A4 piece of paper (both front and back)
The final exam material will be after the mid-term; however, all related contents will be also covered.
The exam includes 1. True/False (+1, -1, and 0), 2. Multiple Choices, 3. Fill in the blank, and 4. Write C program
Also, the final exam material will be after the mid-term; however, all related contents will be also covered.

Lab (2-4 questions):
Allow: open book BUT no Internet Connection!
1 = similar to lab/homework questions
2-3 = Advanced C programming questions
4 = Challenge problem (Check out Computer Olympic Questions)
Mostly, some exams' ideas will be posted a few day before exams.
Project
  • Members: 3 per team

  • In this semester, we focus on advanced computer programming; however, we do not limit on these.
    Project NSC2011 Examples
    Central; Isan; North; South; East; West
    Project NSC2012 Examples
    Central; Isan; North; South; East; West
    Project NSC2013 Examples
    Central; Isan; North; South; East; West
    Project NSC2014 Examples
    Central; Isan; North; South; East; West
    Project NSC2015 Examples
    Central; Isan; North; South; East; West

    Project Milestone

    Description

    Completion Date

    #1Project Topic Selection + 10 mins Presentation (what is it) + PPT07/04/2015
    #2Final Project Submission + 20 mins PPT + Poster + Demo + Code08/08/2015

    Note: These are group projects BUT grading individually *write who do what in what%?*
    Academic Integrity
    Students at Khon Khan University are engaged in the first step for their professional career with the highest standards. Please follow the academic integrity guideline at Cheating and Plagiarism [@CMU]. All these rules are enforced for the entire course.
    Grading:
    Final Exam (Lecture + Lab)20% + 20%
    Lab/Homework + Lab Marathon 25% +/- 5%
    Term Project20%
    Class Participation + In-Class-Quiz/In-Class-Lab15% +/- 5%

    The final grade will be curved based on the overall performance of the whole class (also scale based on the standard, say, A = 80).
    Note: Extra Credits +5% 1st round competition; ++5% Final round competition; +++10% = winner for ACM/ICPC, Science Week Programming Contest, NSC, Code Jom, Code Jam, etc.
    There are also bonus questions often given (upto 15%).
    Other related computer programming research links
    1. Programming Research Laboratory, Northeastern University, http://www.ccs.neu.edu/research/prl/
    2. Programming Language and Compiler Research Groups, CMU, http://www.cs.cmu.edu/~mleone/language/projects.html
    3. Concurrent Programming Research Laboratory, IIT, http://www.iit.edu/csl/cs/research/concurrent_programming.shtml
    4. Programming Research Laboratory, Seoul National University, http://ropas.snu.ac.kr/
    5. Cambridge Programming Research Group, University of Cambridge, http://www.cl.cam.ac.uk/research/cprg/
    6. Principles of Programming Research Group, NUI Maynooth, http://www.cs.nuim.ie/research/pop/
    7. System Programming Research Group, University of Rome, http://www.sprg.uniroma2.it/index_e.html

    Back to Chakchai So-In's Home Page