วิทย์ม.ต้น: ฝึกไพธอน, แก้ปัญหาด้วยตัวเองด้วยวิดีโอและ Tracker

วันนี้เราคุยกันเรื่องพวกนี้ครับ:

1. รุ่นพี่ฝึกไพธอนกันต่อ เขียนโปรแกรมแก้ปัญหาเล็กๆหลายๆอัน มีเฉลยการบ้านจากสัปดาห์ที่แล้ว หน้าตาประมาณนี้ (โปรแกรมเบื้องต้น ไม่มี error handling เพื่อให้เข้าใจง่าย)

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนครั้งนั้น แล้วโปรแกรมจะคำนวณค่ามากที่สุด น้อยที่สุด (ใช้ for และ list)
count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: "))
numbers = []
for i in range(count):
x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: "))
numbers.append(x)
print("ตัวเลขที่มากที่สุดคือ " + str(max(numbers)))
print("ตัวเลขที่น้อยที่สุดคือ " + str(min(numbers)))
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนครั้งนั้น แล้วโปรแกรมจะคำนวณค่ามากที่สุด น้อยที่สุด (ใช้ for และ list) count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: ")) numbers = [] for i in range(count): x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: ")) numbers.append(x) print("ตัวเลขที่มากที่สุดคือ " + str(max(numbers))) print("ตัวเลขที่น้อยที่สุดคือ " + str(min(numbers)))
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนครั้งนั้น  แล้วโปรแกรมจะคำนวณค่ามากที่สุด น้อยที่สุด (ใช้ for และ list)

count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: "))
numbers = []
for i in range(count):
    x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: "))
    numbers.append(x)

print("ตัวเลขที่มากที่สุดคือ " + str(max(numbers)))
print("ตัวเลขที่น้อยที่สุดคือ " + str(min(numbers)))
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนนั้น แล้วโปรแกรมจะเรียงลำดับตัวเลขเหล่านั้นจากมากไปน้อย
#และน้อยไปมาก (ใช้ for และ list)
count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: "))
numbers = []
for i in range(count):
x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: "))
numbers.append(x)
print("ตัวเลขที่ใส่เข้ามาคือ " + str(numbers))
print("ตัวเลขเรียงจากน้อยไปมากคือ " + str(sorted(numbers)))
print("ตัวเลขเรียงจากมากไปน้อยคือ " + str(sorted(numbers, reverse=True) ))
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนนั้น แล้วโปรแกรมจะเรียงลำดับตัวเลขเหล่านั้นจากมากไปน้อย #และน้อยไปมาก (ใช้ for และ list) count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: ")) numbers = [] for i in range(count): x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: ")) numbers.append(x) print("ตัวเลขที่ใส่เข้ามาคือ " + str(numbers)) print("ตัวเลขเรียงจากน้อยไปมากคือ " + str(sorted(numbers))) print("ตัวเลขเรียงจากมากไปน้อยคือ " + str(sorted(numbers, reverse=True) ))
#เขียนโปรแกรมรับจำนวนตัวเลขที่จะป้อน แล้วรับตัวเลขไปเรื่อยๆเท่ากับจำนวนนั้น  แล้วโปรแกรมจะเรียงลำดับตัวเลขเหล่านั้นจากมากไปน้อย
#และน้อยไปมาก (ใช้ for และ list)

count = int(input("ใส่จำนวนตัวเลขที่จะป้อน: "))
numbers = []
for i in range(count):
    x = float(input("ใ่ส่ตัวเลขตัวที่ " + str(i+1) + " จากทั้งหมด " + str(count) + " ตัว: "))
    numbers.append(x)


print("ตัวเลขที่ใส่เข้ามาคือ " + str(numbers))
print("ตัวเลขเรียงจากน้อยไปมากคือ " + str(sorted(numbers)))
print("ตัวเลขเรียงจากมากไปน้อยคือ " + str(sorted(numbers, reverse=True) ))

2. รุ่นพี่มีการบ้านไปเขียนโปรแกรมสองข้อนี้:

–หาจำนวนวันที่เราเกิดมา โดยใช้ฟังก์ชั่นเกี่ยวกับวันเวลาของไพธอน
–สร้างโปรแกรมให้เราใส่วันที่เข้าไป แล้วคำนวณว่าวันนั้นห่างจากปัจจุบันเป็นเวลาเท่าไร

3. รุ่นน้องผมให้แก้ปัญหาสองข้อโดยผมไม่บอกว่าต้องทำอย่างไร ให้เด็กๆร่วมกันคิดและทำเอง ข้อแรกคือให้หาความเร็วว่ามอเตอร์โฮโมโพลาร์เหล่านี้หมุนเร็วแค่ไหน:

เด็กๆหาวิธีโหลดวิดีโอจากเฟซบุ๊ค เอาวิดีโอใส่โปรแกรม Tracker แล้วดูว่าการหมุนแต่ละรอบต้องใช้ภาพกี่เฟรม เมื่อเทียบกับจำนวนเฟรมต่อวินาทีของวิดีโอก็สามารถคำนวณความเร็วการหมุนได้ เด็กบางคนใช้ Tracker จับตำแหน่งวัตถุแล้วพล็อตกราฟด้วย

ข้อสองคือผมให้หาว่าแปรงลบกระดานตกจากความสูงค่าหนึ่งใช้เวลาเท่าไรจะตกถึงพื้น เด็กๆก็หาทางถ่ายวิดีโอ แชร์คลิปกัน แล้วใส่ใน Tracker วัดจำนวนเฟรมระหว่างตอนเริ่มปล่อยและตอนกระทบพื้น และคำนวณเป็นเวลาออกมา (ซึ่งได้เท่ากับเวลาที่คำนวณจากทฤษฎีเป๊ะมากๆ)

4. บรรยากาศเป็นดังนี้ครับ:

Leave a Reply

Your email address will not be published. Required fields are marked *

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