Page 111 - python
P. 111
85
ิ
ตัวอยางที่ 8.1 การเขียนฟงกชั่น คาเฉลี่ย() มีอารกวเมนตคือตัวแปร data ในตอนเริ่มตน
ํ
กาหนดคาตัวแปร x = [1, 3, 2] จากนั้นสงเขาใหฟงกชั่น คาเฉลี่ย ภายในฟงกชั่นจะคํานวณหาคา n คือ
จํานวนสมาชิก มีคาเทากบ len(data) และคํานวณคาเฉลี่ยเทากบ ผลรวมขอมูลหารดวยจํานวนขอมูล
ั
ั
จากนั้น return ผลลัพธคาเฉลี่ย เมื่อคําสั่ง print("คาเฉลี่ยของ %s เทากับ %.2f"%(str(x), คาเฉลี่ย(x))) มี
อกขระควบคุมการแสดงผล %s คือนําคาจาก str(x) มาใส %s และ %.2f คือการแสดงทศนิยมสอง
ั
่
ั
ํ
ตาแหนงของฟงกชนคาเฉลีย ผลลัพธ มคา "คาเฉลี่ยของ [1, 3, 2] เทากับ 2.00"
ี
่
ั
ภาพประกอบที่ 8.1 แสดงอกขระควบคุม %s และ %.2f แสดงขอความและทศนิยมสองตําแหนง
ี
8.2 การเขยนโปรแกรมคํานวณคามัธยฐาน (Median)
คามัธยฐาน หาไดจากนําขอมูลมาเรียงลําดับจากนอยไปมากหรือมากไปนอย โดยมัธยฐานคือ
ขอมูลที่อยูตรงกลางพอดี
ตัวอยางขอมูล [4.3, 2.9, 2.7, 4.1, 40.8, 3.4, 4.7, 3.7, 3.1, 4.7]
1) เรียงลําดับขอมูลจากนอยไปมากหรือมากไปนอย ไดผลลัพธ [2.7, 2.9, 3.1, 3.4, 3.7,
4.1, 4.3, 4.7, 4.7, 40.8]
2) มัธยฐาน คือ คาขอมูลที่อยูตําแหนงกึ่งกลางขอมูลที่เรียงลําดับแลว
ตัวอยางที่ 8.2 การเขียนโปรแกรมคํานวณคามัธยฐาน (Median)
x = [3, 2, 3, 5, 7, 1]
x.sort()
if (len(x) % 2) == 0:
a = x[int(len(x)/2)-1]
b = x[int(len(x)/2)]
c = (a+b)/2
print("คามัธยฐานของ %s คือ (%.2f + %.2f/2 มีคาเทากับ %.2f"%(str(x),a,b,c))
else:
c = x[int(len(x)/2)-1]
print("คามัธยฐานของ %s มีคาเทากับ %.2f"%(str(x),c))
ผลลัพธ :
คามัธยฐานของ [1, 2, 3, 3, 5, 7] คือ (3.00 + 3.00/2 มีคาเทากับ 3.00
ตัวอยางที่ 8.2 ตัวแปร x มีคา [3, 2, 3, 5, 7, 1] นํามาเรียงลําดับจากนอยไปมากดวยคําสั่ง
ู
x.sort() มีคา [1, 2, 3, 3, 5, 7] คามัธยฐาน คือ ขอมลที่ตําแหนงตรงกลาง ในตัวอยางนี้มีจํานวนสมาชิก
เปนเลขคู (6 ตัว) ดังนั้น คํานวณคาเฉลี่ยของตําแหนงที่อยูตรงกลาง คือ 3+3 / 2 เทากับ 3