Sign in
2026-10-22 · updated 2026-10-30 · 2 min read

10306103 หลักการเขียนโปรแกรมเบื้องต้น (Fundamentals of Programming)

ShareFacebookXLinkedInLINE

วิชา หลักการเขียนโปรแกรมเบื้องต้น (Fundamentals of Programming) ปูพื้นฐานการเขียนโปรแกรมให้คุณตั้งแต่วิธีคิด ไม่ใช่แค่ไวยากรณ์ เริ่มจากการวิเคราะห์ปัญหาและออกแบบขั้นตอนวิธี แล้วลงมือเขียน คอมไพล์ และทดสอบโปรแกรมด้วยภาษา C ภาษาเดียวตลอดวิชา คุณจะค่อย ๆ สะสมทักษะจากตัวแปรและโครงสร้างควบคุม ไปจนถึงฟังก์ชัน โครงสร้างข้อมูล การทดสอบ และการพัฒนาโปรแกรมที่มีคุณภาพโค้ดตามมาตรฐาน

วิชานี้เป็นวิชาเฉพาะด้านของหลักสูตร วท.บ. เทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์ มหาวิทยาลัยแม่โจ้ (หลักสูตร OBE2 ฉบับปรับปรุง พ.ศ. 2570) จำนวน 3 หน่วยกิต (2–3–5) และไม่มีวิชาบังคับก่อน เนื้อหาแบ่งเป็น 15 บท ตามภาคการศึกษา 15 สัปดาห์ แต่ละบทจัดทำเป็นคู่มือการสอน แสดงแผนบริหารการสอนประจำบท เนื้อหาสามระดับความลึก และปฏิบัติการพร้อมโค้ดภาษา C ที่ทดสอบจริง ส่วนเฉลยและแผนเวลาอยู่ในบล็อกสำหรับผู้สอน

ลำดับการเรียน

  1. บทนำ: ปัญหา การคิดเชิงอัลกอริทึม และกระบวนการพัฒนาโปรแกรม — การคิดเชิงอัลกอริทึม ผังงานและรหัสเทียม และการเขียน คอมไพล์ รันโปรแกรมภาษา C โปรแกรมแรกตามมาตรฐานโค้ด
  2. ตัวแปร ชนิดข้อมูล ค่าคงที่ และนิพจน์ — ชนิดข้อมูลพื้นฐาน การประกาศตัวแปร ตัวดำเนินการ การคำนวณนิพจน์ และการแปลงชนิดข้อมูล
  3. การรับเข้าและการแสดงผล — ตัวระบุรูปแบบและการจัดรูปแบบของ printf และการรับข้อมูลด้วย scanf
  4. โครงสร้างควบคุมแบบทางเลือก — if, if-else, เงื่อนไขซ้อน, switch และตัวดำเนินการเปรียบเทียบ/ตรรกะ
  5. โครงสร้างควบคุมแบบวนซ้ำ — for, while, do-while และการใช้ break/continue
  6. ฟังก์ชันและการออกแบบแบบโมดูล — การประกาศและเรียกใช้ฟังก์ชัน พารามิเตอร์แบบ by value ขอบเขตตัวแปร และการแบ่งงานเป็นโมดูล
  7. อาร์เรย์ — อาร์เรย์หนึ่งมิติและสองมิติ การประมวลผลด้วยลูป และการส่งอาร์เรย์เข้าฟังก์ชัน
  8. การจัดการสตริง — สตริงในฐานะอาร์เรย์ของอักขระ ฟังก์ชันใน string.h และการอ่านทั้งบรรทัดด้วย fgets
  9. โครงสร้างข้อมูลแบบระเบียน (struct) — การนิยาม struct การเข้าถึงสมาชิก อาร์เรย์ของระเบียน และการส่งระเบียนเข้าฟังก์ชัน
  10. เทคนิคการแก้ปัญหา: การเรียงลำดับและการค้นหา — selection sort การค้นหาเชิงเส้นและแบบทวิภาค พร้อมแนวคิดประสิทธิภาพ
  11. การดีบักและการทดสอบระดับหน่วย — ชนิดข้อผิดพลาด การไล่หาจุดบกพร่อง การทดสอบระดับหน่วย และ assert
  12. การวัดประสิทธิภาพเบื้องต้นและคุณภาพโค้ด — การนับรอบ การจับเวลาด้วย clock() และหลักคุณภาพโค้ด
  13. มาตรฐานการเขียนโค้ดและแนวคิดการจัดการเวอร์ชัน — การจัดย่อหน้า การตั้งชื่อ คอมเมนต์ และข้อความ commit ที่สื่อความหมาย
  14. จริยธรรมทางวิชาการและความซื่อสัตย์ในการพัฒนาโค้ด — การพัฒนาโค้ดด้วยความเข้าใจของตนเอง การหลีกเลี่ยงการคัดลอก และการอ้างอิงอย่างซื่อสัตย์
  15. โครงงานบูรณาการ — พัฒนาโปรแกรมที่มีคุณภาพแบบครบวงจร โดยบูรณาการทักษะจากทุกบท

เผยแพร่บทเรียนและจัดชุดสอนพร้อมใช้ครบทั้ง 15 บทแล้วเมื่อ 23 ตุลาคม 2569 เพิ่มใบงาน กรณีศึกษา ตัวอย่าง และรายการตรวจส่งงาน โดยตรวจแหล่งปฐมภูมิและทดสอบโปรแกรมประกอบตามขอบเขตที่ระบุในแต่ละบท

แต่ละบทมีแผนบรรยาย 120 นาทีและปฏิบัติการ 180 นาที พร้อมแนวคำตอบในส่วนผู้สอน เวลาเหล่านี้เป็นแผนจัดกิจกรรม ไม่ใช่เวลาที่จับจากการอ่านหรือการสอนจริง

ลำดับ 15 บทคงตามมติผู้สอน 21 ต.ค. 2569 แผนคะแนนปรับตามมติผู้สอน 30 ต.ค. 2569 โดยใช้รูบริกในบทที่ 14–15 ก่อนใช้ประเมินให้เติมประกาศความช่วยเหลือ/AI และระเบียบจริงในบทที่ 14

การวัดผล

หมวดน้ำหนักวิธีคิด
การเข้าเรียน10%มา 1 · สาย 0.5 · ขาด 0 · ลาไม่นับคาบนั้น
ใบงานบทที่ 1–1315%ชิ้นละ 10 คะแนน (LLO หลักข้อละ 3 และ LLO มาตรฐานโค้ด 1) ทุกชิ้นน้ำหนักเท่ากัน
ความซื่อสัตย์บทที่ 14 (C14-WS01)5%LLO14.1–14.3 ข้อละ 10 รวม 30 คะแนน; คะแนนที่ได้ / 30 × 5
ชุดฝึกท้ายบท 15 ชุด5%ใช้คะแนนดีที่สุดที่ทำก่อนกำหนดของแต่ละชุด
แบบฝึกหัดวัดความเข้าใจ 15 ชุด15%ทำในรอบสอบของแต่ละบท ผู้สอนตรวจ ใช้คะแนนดีที่สุดที่ส่งก่อนกำหนด
สอบกลางภาค20%สอบในระบบ หรือผู้สอนกรอกคะแนน
สอบปลายภาค20%สอบในระบบ หรือผู้สอนกรอกคะแนน
โครงงานบูรณาการ (บทที่ 15)10%C15-WS01 รวม 20 คะแนน: ก 7 · ข 7 · ค 2 · ง 4 ทุกข้อเป็นคะแนน

การสรุป CLO4: CLO4 สรุปผลแบบถ่วงน้ำหนัก เป้าหมาย 60% เพื่อสะท้อนผลการเรียนรู้เท่านั้น ไม่เป็นเงื่อนไขผ่านรายวิชา และไม่ทำให้ได้เกรด I โดยอัตโนมัติ

  1. จุดตรวจที่ 1 (บทที่ 1): แบบรับทราบจริยธรรมและข้อตกลง AI — ให้ข้อเสนอแนะเท่านั้น ไม่คิดคะแนน
  2. จุดตรวจที่ 2 (บทที่ 7): ทบทวนประวัติโค้ดและแหล่งอ้างอิงก่อนกลางภาค — ให้ข้อเสนอแนะเท่านั้น ไม่คิดคะแนน
  3. บทที่ 14–15: ใบงาน C14-WS01 คิดในหมวดความซื่อสัตย์ 5%; ข้อ ค ของ C15-WS01 ได้ 2 จาก 20 คะแนนโครงงาน ไม่เป็นด่านผ่าน/ไม่ผ่าน

ใช้รูบริกนี้กับงานที่ประกาศเกณฑ์ก่อนส่ง ไม่แปลงผลผ่าน/ไม่ผ่านเดิมเป็นคะแนนย้อนหลังโดยอัตโนมัติ ผู้สอนต้องตรวจหลักฐานและบันทึกคะแนนตามเกณฑ์ที่ประกาศ

ส่งช้า: หัก 10% ของคะแนนงานชิ้นนั้นต่อสัปดาห์ที่ช้า สูงสุด 50% และรับงานถึงสิ้นสัปดาห์ที่ 15 งานที่ผู้สอนส่งกลับให้แก้นับเวลาจากการส่งครั้งแรก

กำหนดส่ง: งานของบทที่ N ส่งภายใน 23:59 น. ของวันก่อนวันสอนในสัปดาห์ถัดไป ใบงานนับจากวันปฏิบัติการของตอนเรียน ส่วนชุดฝึกและแบบฝึกหัดวัดความเข้าใจนับจากวันบรรยาย ดูวันที่จริงได้ในห้องเรียนออนไลน์

เกรด: A ≥ 80 · B+ ≥ 75 · B ≥ 70 · C+ ≥ 65 · C ≥ 60 · D+ ≥ 55 · D ≥ 50 · F < 50

นักศึกษาดูคะแนนรายหมวด คะแนนสะสม และผลลัพธ์การเรียนรู้ราย CLO ของตนเองได้ที่หน้า “คะแนนของฉัน” ในห้องเรียนออนไลน์ของรายวิชา คะแนนใบงาน ชุดฝึก และการเข้าเรียนแสดงทันทีที่ผู้สอนตรวจ ส่วนสอบและโครงงานแสดงเมื่อผู้สอนประกาศ

หัวข้อเสริม

หัวข้อเหล่านี้อยู่นอกขอบเขตหลักของวิชา ใช้เมื่อมีเวลาเหลือหรือเลือกเป็นหัวข้อค้นคว้าด้วยตนเอง เพื่อต่อยอดก่อนขึ้นวิชาแนวคิดเชิงวัตถุ (10306213)

  • ตัวชี้ (pointer) และความสัมพันธ์กับอาร์เรย์
  • การจองหน่วยความจำแบบพลวัต (malloc/free)
  • การอ่านและเขียนไฟล์ (file I/O)

By Watcharin Sarachai