หาวิธีการเดินทางโดยใช้เงื่อนไข if-else ในการตัดสินใจและใช้ while ในการวนรับค่า
โจทย์
ให้นักเรียนออกแบบและเขียนโปรแกรมเพื่อคำนวณหาวิธีการเดินทางตามเงื่อนไขต่อไปนี้
ระยะทางน้อยกว่า 1 กิโลเมตรเดินทางโดยรถจักรยาน
ระยะทาง 1 กิโลเมตรขึ้นไปเดินทางโดยรถโดยสาร
โปรแกรม
distance = ""
while not distance.isdigit():
distance = input("Please enter the distance in KM.")
if int(distance) < 1:
print("You can use a bicycle.")
else:
print("You should drive a car.")
คำอธิบายโปรแกรม
โปรแกรมนี้ทำงานตามขั้นตอนดังนี้
สร้างตัวแปร
distanceและกำหนดค่าเริ่มต้นเป็นสตริงว่างเริ่มลูป
whileที่จะทำงานต่อไปเรื่อยๆ จนกว่าค่าในdistanceจะเป็นตัวเลขทั้งหมด:ใช้ฟังก์ชัน
input()เพื่อรับค่าระยะทางจากผู้ใช้และเก็บในตัวแปรdistanceใช้เมธอด
isdigit()เพื่อตรวจสอบว่าค่าที่รับมาเป็นตัวเลขทั้งหมดหรือไม่ถ้าไม่ใช่ตัวเลขทั้งหมด ลูปจะทำงานต่อและถามผู้ใช้อีกครั้ง
เมื่อได้ค่าระยะทางที่เป็นตัวเลขแล้ว โปรแกรมจะใช้คำสั่ง
if-elseเพื่อตัดสินใจ:แปลงค่า
distanceเป็นจำนวนเต็มด้วยint()ถ้าระยะทางน้อยกว่า 1 กิโลเมตร (< 1) จะแสดงข้อความ "You can use a bicycle."
ถ้าระยะทางมากกว่าหรือเท่ากับ 1 กิโลเมตร จะแสดงข้อความ "You should drive a car."
โปรแกรมนี้แสดงการใช้งานลูป while, การตรวจสอบประเภทข้อมูลด้วย isdigit(), การแปลงประเภทข้อมูลด้วย int(), และการใช้เงื่อนไข if-else ในภาษาไพทอน เพื่อรับข้อมูลจากผู้ใช้และตัดสินใจเลือกวิธีการเดินทางตามเงื่อนไขที่กำหนด