โปรแกรมตรวจสอบคุณสมบัติผู้สมัครนักศึกษาวิชาทหาร

 

โจทย์

ในการตรวจสอบคุณสมบัติผู้สมัครนักศึกษาวิชาทหาร จะพิจารณาอายุ 15 ปีขึ้นไป ส่วนสูงไม่น้อยกว่า 160 ซม และน้ำหนัก 50 กิโลกรัมขึ้นไป ให้เขียนโปรแกรมวนรับข้อมูลผู้สมัครทั้งหมด แล้วแสดงผลจำนวนผู้สมัครที่ผ่านเกณฑ์

โปรแกรม

applicants = []

while True:
    applicant = {}
    applicant['name'] = input("Please enter your name: ")
    if not applicant['name']:
        break
    else:
        applicant['age'] = int(input("Please enter your age: "))
        applicant['height'] = int(input("Please enter your height: "))
        applicant['weight'] = int(input("Please enter your weight: "))
    applicants.append(applicant)

print(applicants)

pass_count = 0
for applicant in applicants:
    if (applicant['age'] >= 15 and
        applicant['height'] >= 160 and
        applicant['weight'] >= 50):
        pass_count += 1

print(pass_count)

คำอธิบายโปรแกรม

โปรแกรมนี้ตรวจสอบคุณสมบัติผู้สมัครนักศึกษาวิชาทหาร โดยมีขั้นตอนดังนี้:

  1. สร้างลิสต์ว่าง applicants เพื่อเก็บข้อมูลผู้สมัคร

  2. เริ่มลูป while เพื่อรับข้อมูลผู้สมัคร:

    • สร้างดิกชันนารี applicant เพื่อเก็บข้อมูลผู้สมัครแต่ละคน

    • รับชื่อผู้สมัคร ถ้าไม่ใส่ชื่อ (กด Enter เปล่าๆ) จะออกจากลูป

    • ถ้าใส่ชื่อ จะรับข้อมูลอายุ ส่วนสูง และน้ำหนัก

    • เพิ่มข้อมูลผู้สมัครลงในลิสต์ applicants

  3. แสดงข้อมูลผู้สมัครทั้งหมดที่รับมา

  4. ตั้งตัวแปร pass_count เป็น 0 เพื่อนับจำนวนผู้ผ่านเกณฑ์

  5. วนลูปตรวจสอบคุณสมบัติผู้สมัครแต่ละคน:

    • ถ้าอายุมากกว่าหรือเท่ากับ 15 ปี, ส่วนสูงมากกว่าหรือเท่ากับ 160 ซม. และน้ำหนักมากกว่าหรือเท่ากับ 50 กก.

    • เพิ่มค่า pass_count ขึ้น 1

  6. แสดงจำนวนผู้ผ่านเกณฑ์ทั้งหมด

โปรแกรมนี้ช่วยให้สามารถรับข้อมูลผู้สมัครได้หลายคน และคำนวณจำนวนผู้ผ่านเกณฑ์ได้อย่างรวดเร็ว