ผลต่างระหว่างรุ่นของ "204111:lab5"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 51: แถว 51:
  
 
=== b2. ผลรวมของผลต่างจากค่าน้อยที่สุดกำลังสอง ===
 
=== b2. ผลรวมของผลต่างจากค่าน้อยที่สุดกำลังสอง ===
 +
 +
เขียนโปรแกรมอ่านรายการของจำนวนเต็ม จากนั้นคำนวณหาผลรวมของกำลังสองของผลต่างของจำนวนเต็มกับค่าที่น้อยที่สุด
 +
 +
ยกตัวอย่างเช่น ถ้าจำนวนเต็มในรายการเป็น  10 20 15 และ 3  ดังนั้นค่าที่น้อยที่สุดคือ 3
 +
 +
คำตอบที่เราต้องการคือ <math>(10-3)^2 + (20-3)^2 + (15-3)^2 + (3-3)^2 = 482</math>
 +
 +
ผู้ใช้จะป้อนข้อมูลทีละจำนวน และจะจบการป้อนโดยการป้อน -1
 +
 +
ตัวอย่างการทำงาน
 +
 +
10
 +
20
 +
15
 +
3
 +
-1
 +
Answer = 482
 +
 +
หมายเหตุ สามารถใช้ฟังก์ชัน <tt>min</tt> ในการหาค่าน้อยที่สุดได้
  
 
=== b-x. ดื่มน้ำ (ยังไม่เสร็จ) ===
 
=== b-x. ดื่มน้ำ (ยังไม่เสร็จ) ===

รุ่นแก้ไขเมื่อ 09:14, 2 กรกฎาคม 2553

ปฏิบัติการที่ 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