SCIUS: Computer Programming Using C (Fall 2017)


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 13.00pm to 13.50pm (or email me for appointment)
Class homepage: http://csperson.kku.ac.th/chakso/SCIUS_Fall17/
Teaching Assistant:
Location:
the class meets:
1. At room SC8412, Thursday from 13.50pm to 16.25pm for lecture/lab;
2. At room SC6606C: Saturday from 09.30am to 12.00pm for lecture/lab;
Facebook Group: 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 2016: Previous Final Project 2015: Previous Final Project 2014: Previous Final Project 2013: Previous Final Project

News
Lecture Schedule: (Tentative Subject to Change)
ClassDayDateTopic
1Thursday19/10/2017Course Overview + Introduction to Computer System
2Saturday28/10/2017 (13.00-16.00)Flowchart and Pseudo Code + Introduction to C Programming
3Saturday04/11/2017(Cont.)
4Thursday16/11/2017Project Topic Selection = 10 minutes + Encoragement + Dhamma #1 + Dhamma #2
5Thursday23/11/2017Control Structure
6Saturday25/11/2017Function
7Thursday30/11/2017Array
8Saturday02/12/2017Structure + Pointer + File
9Thursday14/12/2017Commencement Day or Lab Marathon
10Saturday16/12/2017 (6 hours = All days)(Final Exam + 20 mins. Final Presentation = PPT + Poster + Tube (How to?) + Demo)

Note:There are only 9 lectures (exam + presentation) and so one class will be omitted
Pair Assignments Schedule: Tentative (Subject to change)
Three or six homeworks will be assigned throughout the course. All assignment MUST be turned in as SOFTCOPY via Google Drive. 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.
LabsDateTitleDue Date
1Thursday19/10/2017Lab1 - CodeBlock
2Saturday28/10/2017Lab2 - Flowchart
3Saturday04/11/2017Lab3 - C programming
4Thursday16/11/2017Lab4 - Operation
5Thursday23/30/2017Lab5 - Selection
6Saturday25/11/2017Lab6 - Loop
7Thursday30/11/2017Lab7 - Array

Note:
You MUST submit 1) Cover Letter, 2) .doc + answer + figures + Running or Result (Figures), 3) .c; then make them in "folder" in each lab = Group1_Lab1, Group2_Lab2, etc.
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
Lab (3-5 questions):
Allow: only 1 book BUT no Internet Connection!
1 = similar to lab/homework questions
2-4 = Advanced C programming questions
5 = Challenge problem (Check out Computer Olympic Questions)
Mostly, some exams' ideas will be posted a few day before exams.
Project
  • Members: 2-3 per team

  • In this semester, we focus on advanced computer programming; however, we do not limit on these.
    Project NSC Examples Click Here

    Project Milestone

    Description

    Completion Date

    #1Project Topic Selection + 10 mins Presentation (what is it) + PPT16/11/2017
    #2Final Project Submission + 20 mins PPT + Poster + Tube (How to?) + Demo + Code16/12/2017

    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 (Lab)30%
    Lab + Homework15% +/- 5%
    Lab Marathon + Term Project30%
    Class Participation + In-Class-Quiz/In-Class-Lab20% +/- 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.
    Note: First Olympiad Round = 2.5% to 5% (any fields)
    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