ผมให้เด็กม.2-3 ไปเขียนโปรแกรมนับจำนวนครั้งว่าตัวอักษรแต่ละตัวในข้อความเกิดขึ้นกี่ครั้งเช่น ถ้าข้อความคือ “hello” โปรแกรมก็ควรนับมาว่า h เกิด 1 ครั้ง, e เกิด 1 ครั้ง, l เกิด 2 ครั้ง, และ o เกิด 1 ครั้ง โดยให้เด็กหัดใช้ดิกชันนารี
ผมเขียนโปรแกรมเฉลยให้เด็กๆดู ให้เด็กๆรู้จักใช้ “, ‘, “””, ”’ เพื่อกำหนดข้อความสตริงในไพธอน ให้เด็กรู้จักการอ้างอิงแต่ละตัวอักษรในสตริงด้วยวิธี for i in string, รู้จักวิธีดูว่ามีคีย์ k ในดิกชันนารีหรือยังด้วย if k in dictionary, รู้จักแสดงผลในดิกชันนารีตามลำดับคีย์หรือตามลำดับค่าของมันด้วย sorted(d), sorted(d, key = d.get), sorted(d, key = get, reverse = True) ได้รู้จักฟังก์ชั่น ord( ) และ chr( ) สำหรับการบ้านครั้งต่อไป
โหลด Jupyter Notebook ที่บันทึกการเฉลยที่นี่ครับ
ตัวอย่างหน้าตาการสอนเป็นประมาณนี้ครับ:
สำหรับเด็กๆม.1 เราเขียนโปรแกรมทายตัวเลขกันโดยที่คราวนี้ให้คอมพิวเตอร์เล่นกับตัวเองโดยที่คนไม่ต้องเข้าไปทาย เราให้คอมพิวเตอร์ทายตัวเลขโดยทายตรงกลางระหว่างค่าน้อยสุดที่เป็นไปได้และค่ามากสุดที่เป็นไปได้วนไปเรื่อยๆโดยทุกครั้งที่ทายช่วงที่เป็นไปได้จะหดลงเหลือขนาดแค่ครึ่งหนึ่งของช่วงที่เป็นไปได้ก่อนทายครับ
โหลด Jupyter Notebook ดูได้ที่นี่ครับ
หน้าตาจะเป็นประมาณนี้ครับ: