SCIUS: Computer Programming Using C (Spring 2018)


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/chakchai/SCIUS_Spring18/
Teaching Assistant:
Location:
the class meets:
1. At room SC8512-CS, Thursday from 13.50pm to 16.30pm for lecture/lab;
2. At room SC8512-CS: Saturday from 09.00am 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 2017: Previous 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
1Thursday11/01/2018Course Overview + Introduction to Computer System
2Thursday25/01/2018(Cont.) + Flowchart and Pseudo Code
3Saturday27/01/2018(Cont.) + Introduction to C Programming
4-5Saturday03/02/2018 (6 hours = All days)(Cont.) + Control Structure
6-7Saturday10/02/2018 (6 hours = All days)Function + Project Topic Selection = 10 minutes + Encoragement + Dhamma #1 + Dhamma #2
8-9Saturday17/02/2018 (6 hours = All days)Array + Structure + Pointer + File
10-11Saturday03/03/2018 (6 hours = All days)(Final Exam + 20 mins. Final Presentation = PPT + Poster + Tube (How to?) + Demo)

Note:There are only 10 lectures (exam + presentation)
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
1Thursday11/01/2018Lab1 - CodeBlock
2Thursday25/01/2018Lab2 - Flowchart
3Saturday27/01/2018Lab3 - C programming
4Thursday08/02/2018Lab4 - Operation
5Saturday10/02/2018Lab5 - Selection
6Saturday17/02/2018Lab6 - Loop
7Thursday22/02/2018Lab7 - Array

Note:
You MUST submit (each Group) = 1) .doc for Cover Letter (Group1_Cover_Lab1.c), 2) .doc for answer + figures + Running or Result (Group1_Answer_Lab1.c), 3) .c for code (Group1_Code_Lab1.c)
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 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) + PPT10/02/2018
    #2Final Project Submission + 20 mins PPT + Poster + Tube (How to?) + Demo + Code03/03/2018

    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 Project25% +/- 5%
    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