Course Orientation & Introduction to Programming — แบบฝึกทบทวน
. . .
Note
ครอบคลุม: ภาษาระดับสูง/ต่ำ · เครื่องมือ & IDE · .py vs .ipynb · print · input · int · split ทบทวนเนื้อหาเต็มได้ที่ Module 1 👈
เลือกคำตอบที่ถูกต้อง — เฉลยจะปรากฏเมื่อกดถัดไป
ภาษาระดับสูง (เช่น Python) ต้องทำอะไรก่อนคอมพิวเตอร์จึงจะทำงานได้?
A. รันได้เลยทันที
B. ต้องแปล (compile/interpret) เป็นภาษาเครื่องก่อน
C. ต้องต่ออินเทอร์เน็ต
Tip
ตอบ: B — ภาษาระดับสูงใกล้ภาษามนุษย์ ต้องแปลเป็น Machine Code ที่ CPU เข้าใจก่อน
ข้อใดเป็น ภาษาระดับล่าง (Low Level)?
A. Python
B. Java
C. Assembly
D. JavaScript
Tip
ตอบ: C — Assembly และ Machine Code เป็นภาษาระดับล่าง ผูกกับ CPU แต่ละชนิด
เครื่องมือที่รวม Editor + Compiler/Interpreter + Debugger ไว้ในโปรแกรมเดียวเรียกว่าอะไร?
A. REPL
B. IDE
C. CPU
D. Block coding
Tip
ตอบ: B — IDE (Integrated Development Environment) เช่น VS Code, PyCharm, Spyder
เครื่องมือใดใช้สำหรับ รันทีละคำสั่งเพื่อหาบั๊ก?
A. Bugger
B. Compiler
C. Debugger
D. Decompiler
Tip
ตอบ: C — Debugger รันทีละขั้น ดูค่าตัวแปรแต่ละจุด เพื่อหาข้อผิดพลาด
ค่าที่ได้จาก input() เป็นชนิดข้อมูลใดเสมอ?
A. int
B. float
C. str (ข้อความ)
D. ขึ้นกับสิ่งที่พิมพ์
Important
ตอบ: C — input() คืนค่าเป็น ข้อความ (str) เสมอ แม้ผู้ใช้จะพิมพ์ตัวเลข → ต้อง int()/float() ก่อนคำนวณ
ไฟล์ .ipynb (Notebook) ต่างจาก .py อย่างไร?
A. เขียนคนละภาษา
B. .ipynb แบ่งเป็น เซลล์ รันทีละเซลล์และแสดงผลใต้เซลล์ได้
C. .py รันบนเว็บไม่ได้
Tip
ตอบ: B — โค้ด Python เหมือนกัน ต่างที่ .ipynb แบ่งเป็นเซลล์ ผสมโค้ด+ข้อความ+ผลลัพธ์ เหมาะกับการทดลอง
Scratch เป็นตัวอย่างของการเขียนโปรแกรมแบบใด?
A. Text-based coding
B. Block coding
C. Machine code
D. Python coding
Tip
ตอบ: B — Block coding ลากวางบล็อก ไม่ต้องพิมพ์ syntax แต่วิชานี้ใช้ text-based ด้วย Python
.split() ใน input().split() ทำหน้าที่อะไร?
A. ทำให้ข้อความอินพุตเป็นตัวเลข ไม่อย่างนั้นจะนำมาคำนวณไม่ได้
B. ตัดข้อความตามช่องว่างออกเป็นหลายชิ้น
C. รวมข้อความอินพุต
D. รับข้อความอินพุต
Tip
ตอบ: B — .split() ตัดข้อความตามช่องว่างเป็นหลายค่า เช่น "3 4".split() → ['3', '4']
โค้ดจะพิมพ์อะไร? — ทายก่อน แล้วกดถัดไปดูเฉลย
พิมพ์อะไร?
Important
ผลลัพธ์: 55 — n เป็น str ('5') → '5' * 2 คือการทำซ้ำข้อความ ได้ '55' ไม่ใช่ 10
พิมพ์อะไร?
Tip
ผลลัพธ์: 10 — int(n) แปลง '5' → 5 ก่อน แล้วจึงคูณ 2
พิมพ์อะไร?
Important
ผลลัพธ์: 7 — split() ได้ a='3', b='4' → แปลงเป็น int แล้วบวก = 7 (ถ้าลืม int() จะได้ '34')
โค้ดผิดตรงไหน — ทำไม
ผิดตรงไหน?
Important
ผิด: ข้อความไม่ได้อยู่ในเครื่องหมายคำพูด → Python ไม่รู้ว่าเป็นข้อความ (error) แก้เป็น: print('Hello World')
ผู้ใช้พิมพ์ 5 แต่ได้ 55 — ผิดตรงไหน?
Important
ผิด: n เป็น str ยังไม่ได้แปลงชนิด → * กลายเป็นการทำซ้ำข้อความ แก้เป็น: result = int(n) * 2 → ได้ 10
เติมโค้ดในช่อง ____ แล้วกด Run
เติมโค้ดให้พิมพ์ข้อความ Python สนุกมาก!
n มาจาก input() (เป็น str) — เติมโค้ดแปลงเป็น จำนวนเต็ม แล้วคูณ 2
เติมโค้ดให้แยกข้อความ "3 4" เป็น 2 ค่า แล้วหาผลคูณ
ใช้ Python คำนวณโจทย์วิศวกรรม — ด้วยเครื่องมือพื้นฐานที่เพิ่งเรียน
พิมพ์อะไร?
Tip
ผลลัพธ์: Power = 36 W — กำลังไฟฟ้า \(P = V \times I = 12 \times 3 = 36\) W
ค่าจาก input() เป็น str — เติมโค้ดแปลงเป็นเลขก่อนคำนวณพลังงาน \(E = P \times t\)
Tip
ผลลัพธ์: Avg = 25.0 — ค่าเฉลี่ยของ 2 เซนเซอร์ · / ให้ผลเป็น float เสมอ
ทบทวนเนื้อหาเต็มได้ที่ Module 1 · ไปต่อ Module 2
🏠 259201 — Module 1 ทบทวน | ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเชียงใหม่