วิทย์ม.ต้น: ใช้ SymPy แก้สมการสัญญลักษณ์และตัวเลข, สั่งให้คอมพิวเตอร์ทำงานซ้ำๆแทนเรา

วิทย์โปรแกรมมิ่งวันศุกร์ครั้งนี้ เด็กม.3 ดูโจทย์นี้เพื่อแปลงเป็นสมการให้ SymPy แก้ปัญหาให้ครับ

เราแปลงเป็นสมการในตัวแปร x, y, z ให้ SymPy แก้ได้แบบนี้ครับ:

เราเอาค่า x, y, z ไปแทนค่าได้แบบนี้ คำตอบคือ 41:

ทดลองหาจุดตัดของวงกลมและเส้นตรงครับ:

ใช้คำสั่ง div หาผลหารและเศษการหารโพลีโนเมียลได้ด้วยครับ:

สำหรับเด็กม.1 เราพยายามหาค่า x ที่ทำให้ xx = 2 (จากตอนท้ายของวิดีโอข้างบน) เราทำโดยเดาก่อนว่า 11 = 1 และ 22 = 4 ดังนั้น x น่าจะอยู่ระหว่าง 1 กับ 2 แล้วเด็กๆก็ลองดูตรงกลางระหว่าง 1 กับ 2 ว่า 1.51.5 = 1.84… แสดงว่าคำตอบควรอยู่ระหว่าง 1.5 กับ 2 จึงลองดูตรงกลาง = 1.75 พบว่า 1.751.75 = 2.66 แสดงว่าคำตอบควรอยู่ระหว่าง 1.5 กับ 1.75 ถ้าเราทำต่อไปเราก็จะหาทางแบ่งครึ่งช่วงคำตอบไปเรื่อยๆ แต่เราหัดเขียนโปรแกรมให้คอมพิวเตอร์ไล่ให้เราได้ดังนี้ครับ:

พบว่า x = 1.5596104694623696…. จะทำให้ xx = 2 ครับ

ผมถามเด็กว่าถ้าจะหาค่า x ที่ทำให้ xx = 3 จะทำอย่างไร เด็กๆก็แก้โปรแกรมนิดนึงได้คำตอบ x = 1.8254550229248308… ทำให้ xx = 3 ครับ:

ผมถามเด็กม.1 ด้วยว่าถ้าคำนวณ (1+1/1)1, (1+1/2)2, (1+1/3)3, (1+1/4)4, …, (1+1/n)n โดยที่ n ใหญ่ขึ้นไปเรื่อยๆ ค่าที่คำนวณจะใหญ่ไปเรื่อยๆไหม เด็กๆก็ให้ไพธอนคำนวณให้ พบว่าผลการคำนวณจะประมาณ 2.71828… (ซึ่งเท่ากับค่าคงที่ออยเลอร์หรือค่า e นั่นเองครับ)

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.