31 August 2005

LaTeX กับข้อสอบ

ช่วงนี้งานเต็มไปหมด ทำให้โอกาสเขียนบลอก วันนี้กลับมาเขียนอีกครั้ง เพราะว่าอยากจะจดสิ่งที่เพิ่งทำขึ้นเก็บไว้เป็นบันทึกช่วยจำ เรื่องก็เกิดจากเวลาสอบใกล้เข้ามาทุกทีแล้ว ทำให้ต้องรีบออกข้อสอบ เพราะไปสอนวิชาพื้นฐานสำหรับปีหนึ่ง ซึ่งจะต้องออกข้อสอบเป็นแบบปรนัย เนื่องจากมีนักเรียนเยอะมาก ตรวจข้อสอบไม่ไหว แต่การออกข้อสอบแบบปรนัยให้ดีก็เป็นเรื่องที่ลำบากมาก ต้องคิดว่าทำอย่างไรถึงจะวัดความรู้ของนักเรียนได้ ไม่ใช่ว่าแค่ไปเดาๆ แล้วก็สอบผ่าน แถมจำนวนข้อก็จะเยอะมาก ทำให้ต้องรีบทำเตรียมไว้ตั้งแต่เนิ่นๆ เมื่อวานเลยเริ่มคิดเรื่องข้อสอบ แล้วก็คิดว่าจะเอาอะไรเขียนดี ตอนแรกก็กะจะใช้เวิร์ดโปรเซสเซอร์ทั่วๆ ไป แต่ก็ฉุกคิดขึ้นได้ว่าถ้าใช้โปรแกรมพวกนั้น คงจะมีปัญหามากมาย เพราะข้อสอบนั้นคงจะต้องแก้ไขเยอะมาก แถมออกข้อสอบเขียนโปรแกรมด้วย จะต้องมีบางส่วนยกโปรแกรมมา แล้วให้นักเรียนตอบคำถามจากโปรแกรม สุดท้ายเลยคิดถึง LaTeX ลองไปหาๆ ดู ก็เจอ style file สำหรับข้อสอบแบบ Multiple choice อยู่อันหนึ่ง แต่ยังไม่ถูกใจ ลองปรับดู ก็ลำบากเหมือนกัน สุดท้ายเลยทำเองใหม่ทั้งหมดเลย โดยอาศัยความรู้จากไฟล์ที่ได้มา ได้เป็นคลาสใหม่ ตั้งชื่อง่ายๆ ว่า mcexam.cls เป็นอันว่าเสร็จสิ้น คราวนี้ก็เริ่มออกข้อสอบได้ซะที

คลาส mcexam นี้ออกแบบมาสำหรับเขียนข้อสอบวิชาเขียนโปรแกรมโดยเฉพาะ ใช้ความสามารถของแพคเกจ fancyvrb เพื่อดึงซอร์สโค้ดมาจากไฟล์โดยตรง ทำให้สะดวกในการตรวจสอบความถูกต้อง เพราะสามารถเอาซอร์สไปลองก่อน แล้วก็ดึงมาใส่ข้อสอบได้ทันที โดยไม่จำเป็นต้องเสียเวลาตัดแปะ ซึ่งอาจจะทำให้เกิดความผิดพลาดได้ง่าย แถมการใช้ LaTeX ยังทำให้การจัดลำดับข้อสอบทำได้ง่าย เนื่องจากไม่จำเป็นต้องกำหนดเลขข้อเอง ลองดูตัวอย่างผลลัพธ์ได้

No comments: