CSKKU Web Programming Competition 2019
การแข่งเขียนโปรแกรมบนเว็บ 2562
ความเป็นมา
การแข่งขันออกแบบเว็บ KKU CS Web Contest ระดับมัธยมศึกษาตอนปลาย ได้จัดการแข่งขันในงานสัปดาห์วิทยาศาสตร์ ที่คณะวิทยาศาสตร์ มหาวิทยาลัยขอนแก่น มาตั้งแต่ ปี พศ. 2547 โดยในตอนเริ่มต้น มีวัตถุประสงค์เพื่อ แข่งขันการออกแบบ และ สร้างเว็บไซต์ตามหัวข้อที่กำหนด ภายหลังในปี 2557 และ ปี 2558 ได้มีการปรับปรุง กติกาโดยเพิ่มการออกแบบ ตามแนวคิดของ Responsive Web Design เพื่อให้หน้าเว็บสามารถปรับเปลี่ยนการแสดงผล เช่น การปรับขนาด การเลื่อนหน้าจอ ปุ่มกดต่างๆ ที่เหมาะสมกับอุปกรณ์คอมพิวเตอร์ในปัจจุบันที่มีหลากหลาย ทั้งบน Desktop(PC), Tablet หรือ SmartPhone โดยใช้เทคโนโลยีสำหรับการพัฒนาเว็บเช่น HTML5, CSS Media Queries, JQuery ฯลฯแต่เนื่องจากเทคโนโลยีเว็บที่พัฒนาไปอย่างรวดเร็ว และ เพื่อให้สอดคล้องกับคุณสมบัติการรับทุนการศึกษา เพื่อเรียนต่อในภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยขอนแก่น ทางคณะกรรมการจัดการแข่งขันจึงมีมติให้มีการเปลี่ยนรูปแบบการแข่งขันในปี 2559 โดยให้เน้นไปที่ทักษะการเขียนโปรแกรมบนเว็บ แทนแบบเดิมที่เน้นการออกแบบเว็บ
วัตถุประสงค์
เพื่อสนับสนุนและส่งเสริมเยาวชนให้มีความรู้ความสามารถในการพัฒนาเว็บไซต์ด้วยภาษา PHP และภาษา HTMLคุณสมบัติผู้เข้าร่วม
- เป็นการแข่งขันแบบเดี่ยว แต่ละโรงเรียนสามารถส่งนักเรียนเป็นตัวแทนเข้าแข่งได้ไม่เกิน 3 คน และ ครูผู้ดูแลได้ 1 คน
- เป็นนักเรียนระดับมัธยมศึกษาตอนปลาย
- รับสมัครจำนวนไม่เกิน 80 คน คนที่สมัครก่อนจะได้รับสิทธิ์ก่อน
รูปแบบในการแข่งขัน
- พัฒนาเว็บไซต์โดยใช้ภาษา PHP และ HTML
- กรรมการจะจัดเตรียม Web Server ไว้ให้
- เขียนโปรแกรม PHP สร้างเว็บไซต์ตามรายละเอียดที่โจทย์กำหนด เช่น
- สามารถอ่านข้อมูลจากไฟล์ หรือ ฐานข้อมูล มาประมวลผล
- สร้างตารางรายงาน คำนวณค่าต่างๆ (ดูตัวอย่างประกอบ)
- เว็บไซต์จะต้องมีรายละเอียดตามที่โจทย์กำหนด ดังนี้
- สามารถรับข้อมูลจากผู้ใช้งานและนำไปประมวลผลได้จริง
- มีการออกแบบและเรียกใช้งานฟังก์ชันตามที่โจทย์กำหนดได้
- ออกแบบหน้าตาของเว็บไซต์ให้มีความสวยงามเหมาะสมและง่ายต่อการใช้งาน
เกณฑ์การตัดสิน
- เว็บไซต์มีการทำงานครบถ้วนและถูกต้องตามที่โจทย์กำหนด 80%
- การจัดโครงสร้างเว็บไซต์ และความเหมาะสม 10%
- ความสวยงาม 10%
ตัวอย่างโจทย์
ข้อมูลคะแนนวิชาแคลคูลัสของนักศึกษากลุ่มหนึ่ง เก็บในไฟล์ student.json ซึ่งมีรูปแบบ ดังนี้{ "students": [ { "std_name": "John", "score": 60 }, { "std_name": "Robert", "score": 85 }, { "std_name": "Nancy", "score": 73 } ] }หมายเหตุ: ไฟล์ข้อมูลนี้เป็นแบบ JSON ซึ่งเป็นรูปแบบไฟล์ที่ภาษา PHP สามารถอ่านเขียนได้ด้วยคำสั่ง json_decode($json_file);
จงเขียนเว็บไซต์สำหรับอ่านคะแนนนักศึกษาแต่ละคนจากไฟล์ student.json และนำคะแนนที่อ่านได้ไปตรวจสอบเงื่อนไข เพื่อแสดงเกรดแต่ละคนตามเงื่อนไขดังนี้
- score >= 80 ได้ A
- score 70 - 79 ได้ B
- score 60 - 79 ได้ C
- score 50 - 79 ได้ D
- score ต่ำกว่า 50 ได้ F
Download ตัวอย่าง Code