204111:lab5
ปฏิบัติการที่ 5 ของวิชา 20411 ตามแผนร่างหัวข้อวิชา 204111 มีเนื้อหาดังนี้
- list
เนื้อหา
การอ้างข้อมูลในลิสต์
ลิสต์และลูป
b0. ฟังก์ชันอ่านรายการ
ให้เขียนฟังก์ชัน read_list() ที่อ่านรายการของจำนวนเต็มที่ผู้ใช้ป้อน โดยสิ้นสุดการป้อนเมื่อป้อน -1 ให้ฟังก์ชันดังกล่าวคืนรายการของจำนวนเต็มที่อ่านได้ (ไม่รวม -1)
นิสิตสามารถนำฟังก์ชันที่เขียนไว้แล้วนี้ไปใช้ในข้ออื่น ๆ ได้
(หมายเหตุถึง TA: ให้ประกาศหัวฟังก์ชันไว้ แล้วเว้นช่องให้เขียนโปรแกรม ให้ตัวอย่างโปรแกรมหลักและตัวอย่างการทำงาน)
ตัวอย่างของโปรแกรมหลักที่เรียกใช้ฟังก์ชันดังกล่าว โปรแกรมนี้รับรายการแล้วพิมพ์ค่าในรายการออกมา
ls = read_list() for x in ls: print(x)
ตัวอย่างการทำงานของโปรแกรมตัวอย่าง
10 20 15 3 -1 10 20 15 3
b1. ผลรวมกำลังสอง
เขียนโปรแกรมอ่านรายการของจำนวนเต็ม จากนั้นคำนวณหาผลรวมของจำนวนเต็มในรายการยกกำลังสอง
ยกตัวอย่างเช่น ถ้าจำนวนเต็มในรายการเป็น 10 20 15 และ ผลรวมคือ
ผู้ใช้จะป้อนข้อมูลทีละจำนวน และจะจบการป้อนโดยการป้อน -1
ตัวอย่างการทำงาน
10 20 15 3 -1 Answer = 734
b2. ผลรวมของผลต่างจากค่าน้อยที่สุดกำลังสอง
เขียนโปรแกรมอ่านรายการของจำนวนเต็ม จากนั้นคำนวณหาผลรวมของกำลังสองของผลต่างของจำนวนเต็มกับค่าที่น้อยที่สุด
ยกตัวอย่างเช่น ถ้าจำนวนเต็มในรายการเป็น 10 20 15 และ 3 ดังนั้นค่าที่น้อยที่สุดคือ 3
คำตอบที่เราต้องการคือ
ผู้ใช้จะป้อนข้อมูลทีละจำนวน และจะจบการป้อนโดยการป้อน -1
ตัวอย่างการทำงาน
10 20 15 3 -1 Answer = 482
หมายเหตุ สามารถใช้ฟังก์ชัน min ในการหาค่าน้อยที่สุดได้
b-x. ดื่มน้ำ (ยังไม่เสร็จ)
มีนักเรียนทั้งสิ้น N คน นั่งเรียงกันเป็นแถว นักเรียนแต่ละคนต้องการดื่มน้ำปริมาตรแตกต่างกัน เจ้าหน้าที่เดินรินน้ำให้กับนักเรียนแต่ละคน อยากทราบว่าหลังจากรินน้ำให้กับนักเรียนแต่ละคนแล้ว น้ำในเหยือกจะเหลือเท่าใด
b2. พิมพ์กลับหลัง
เขียนโปรแกรมรับจำนวนเต็ม จนกระทั่งผู้ใช้ป้อน -1 จากนั้นพิมพ์จำนวนเต็มที่รับ จากหน้าไปหลัง บรรทัดละ 1 ตัว
ตัวอย่างการทำงาน
10 20 15 3 -1 3 15 20 10