แนวคิดในการเขียนโปรแกรม
หัวข้อ เตรียมเครื่องมือ รู้จัก Python IDLE เขียนโปรแกรมแรก
เตรียมเครื่องมือ ภาษาที่ใช้ติดต่อกับเครื่องคอมพิวเตอร์ เราจะใช้ Python ถ้าต้องการให้คอมพิวเตอร์ทำตามคำสั่ง เราต้องสั่งด้วยภาษาที่คอมพิวเตอร์เข้าใจ ต้องติดตั้งโปรแกรมก่อน ง่ายมาก
Starting Python with IDLE Start -> Python 2.5 -> IDLE(Python GUI)
IDLE คือ Python shell. shell คือ ช่องทางพื้นฐานในการติดต่อกับโปรแกรม โดยการพิมพ์ข้อความลงไป GUI (Graphical User Interface) หมายถึง พวกหน้าต่าง เมนู ปุ่ม แถบเลื่อน เป็นต้น ที่เราสามารถให้ติดต่อกับโปรแกรม โปรแกรมที่ไม่มี GUI เรามักเรียกว่า text-mode programs, console programs, หรือ command-line programs.
เครื่องหมาย “>>>” คือ Python prompt.
ลองสั่งคอมพิวเตอร์ หลังเครื่องหมาย พร้อม“>>>” prompt, ให้พิมพ์ print “Hello World” แล้วกด Enter key. +
print คือ พิมพ์ข้อความออกแสดงที่หน้าจอ จะไม่เหมือนที่เรามักใช้เพื่อนกันว่า “นี่เธอ! print เอกสารสรุปให้หน่อยนะ” แค่หนึ่งบรรทัดที่สั่งคอมพิวเตอร์พิมพ์ข้อความ นี่ก็คือ สิ่งที่เรียกว่าโปรแกรมมิ่ง (programming)
IDLE มีสีต่างๆ เพื่อช่วยให้เราโปรแกรมได้ดีขึ้น แต่ละสีมีความต่างแตกกัน การเขียนโปรแกรม บางทีเรียกว่า เขียนโค้ด (Code) หมายถึงคำสั่งที่ต้องการสั่งคอมพิวเตอร์
การโต้ตอบกับ Python มี 2 โหมด คือ Interactive mode คือ พิมพ์คำสั่งหลังพร้อม กด Enter ทำงาน (Run) ทันทีทันใด Script mode เขียนคำสั่งหลายคำสั่ง แล้วบันทึกเป็นไฟล์ แล้วจะทำงานก็มานำไฟล์นั้นมารัน (Run ให้ทำงานตามชุดคำสั่งที่เราเขียน เรียงลำดับกันไว้)
โปรแกรมทำงาน หรือ รัน (Run) บางครั้งเรียกว่า Executing ลองพิมพ์ หลังพร้อม ว่า print 5 + 3 เมื่อกด Enter จะปรากฏผลบวก คือ 8 ขึ้นทันที ตื่นเต้นไหม Python บวกเลขได้ ทดลองต่อไป ลองลบ คูณ หรือ หารตัวเลข
เครื่องหมาย การบวก + การลบ - การคูณ * การหาร /
แต่การบวกเลข เราก็ใช้เครื่องคิดเลขได้นิ ทำไมต้องใช้ Python ให้ยุ่งยาก แต่ถ้าโจทย์นี้ละ เครื่องคิดเลขทำได้ไหม! แล้วถ้าเป็นอย่างนี้ล่ะ เครื่องคิดเลขทำได้หรือไม่
ได้เวลาเขียนโปรแกรม (โค้ด) จะเขียนชุดคำสั่ง (หลายคำสั่ง เรียงกันตามลำดับขั้นตอน) ในหน้า Python IDLE ไปที่ File -> New Window
จะได้หน้าต่าง Untitled ขึ้นมา พิมพ์ แล้วให้บันทึกตั้งชื่อว่า pad_thai.py
การรันโปรแกรมครั้งแรก ในหน้าต่างที่เราเขียนโค้ดเมื่อกี้นี้ ไปที่ Run -> Run Module
ใครที่บอกว่า ตั้งแต่เขียนโปรแกรมมาไม่เคยเจอข้อผิดพลาด (เออเรอร์ หรือ error) ให้สรุปได้เลยว่าคนๆนั้น พูดโกหก “คนที่ไม่เจอเออเรอร์ คือ คนที่ยังไม่ได้เขียนโค้ดจริงๆ” คล้ายๆ คำว่าว่า “คนที่ไม่ล้มเหลว คือ คนที่ไม่ได้ทำอะไรจริงจังเลย” IDLE จะช่วยบอกข้อผิดพลาดให้
ชนิดออร์เรอร์ Syntax error เกิดจากการเขียนคำสั่งผิด คอมพิวเตอร์ไม่เข้าใจ Runtime error ตอนเขียนโค้ดถูกต้อง แต่เกิดตอนโปรแกรมรัน
Syntax errors เมื่อกดรัน จะขึ้นว่า เออเรอร์ แบบนี้สังเกตง่าย ดูที่สีของคำสั่ง ก็จะบอกได้ สีส้ม คือ สีเขียว คือ
Runtime errors สังเกตสีทุกคำสั่งถูกต้อง แต่พอรันจะเกิด จะมีข้อความแสดงสาเหตุการผิดพลาด
ทำไม * ใช้กับข้อความได้ แต่ + ใช้ไม่ได้ “ถ้าฉันเอาแมว 3 ตัว บวกกับมะละกอ 5 ผล จะได้เป็นจำนวนเท่าไร” “ถ้าฉันมีมะละกอ 3 ผล คูณด้วย 2 จะได้เท่าไร” เป็นไงล่ะ สวยงามไหม สนุกหรือยังครับ
โปรแกรมที่สองของฉัน เปิดหน้าต่างเขียนโปรแกรม
พิมพ์คำสั่งต่อไปนี้
Run -> Run Module แล้วสนุกกับเกมส์ ตอนนี้เรายังไม่รู้ คำสั่ง (สีส้ม) เช่น while, if, else, elif, input ซึ่งจะได้เรียนในบทต่อๆ ไป ในเกมส์ (โปรแกรม) นี้เราได้แนวคิดว่า มันทำงาน ดังนี้ เลขลับโปรแกรมจะเป็นคนสุ่ม แต่ละครั้งที่เล่นเกมส์ ผู้ใช้กรอกรตัวเลขทายได้ โปรแกรมนับจำนวนครั้งการทายได้ โปรแกรมสามารถจับคู่เลขลับ กับเลขที่ทาย เพื่อให้ผู้เล่นชนะได้
เราเรียนอะไรกันมาบ้าง การเริ่ม IDLE เรียน interactive mode สั่ง Python แล้วให้มันทำงานได้ รู้ว่า Python คิดเลขได้ เริ่มโปรแกรม IDLE และพิมพ์ชุดคำสั่งได้ รันโปรแกรม Python แรกในชีวิต รู้ข้อความผิดพลาดที่โปรแกรมแสดงให้ดราดู รันโปรแกรมเกมส์เลขลับ
ทดสอบตัวเอง จงตอบคำถาม จะเริ่ม IDLE ได้อย่างไร คำสั่ง print ทำอะไร เครื่องหมายคูณใน Python ใช้อะไร อะไรที่ IDLE แสดงมาตอนแรกในการเริ่มโปรแกรม มีคำศัพท์อื่นๆ ไหม ที่มีความหมายเหมือคำว่า เริ่มโปรแกรม (รัน)
แบบฝึกหัด ใน interactive mode ให้ใช้ Python หาจำนวนนาทีในหนึ่งสัปดาห์ ให้เขียนโปรแกรมที่แสดงสามบรรทัด คือ ชื่อนิสิต, วันเกิด, และสีที่ชอบ โดยผลลัพธ์จะคล้ายนี่ My name is Thammarat Thamma I was born 14 January 1999. My favorite color is green. บันทึกโปรแกรมแล้วรัน ถ้าเกิดข้อผิดพลาดจงแก้ไขให้ถูกต้อง