สัปดาห์ที่ 4 : ฟังก์ชั่นและการควบคุม
» คำสั่ง for
» การใช้คำสั่ง if
» ทางเลือกหลายทาง
» ตัวดำเนินการสำหรับตรวจสอบเงื่อนไข
» ปฏิบัติการลอจิก ซึ่งกระทำกับเงือนไขหลายตัว
» คำสั่ง break และ continue
» การวนรอบด้วยคำสั่ง while
» ประเภทของฟังก์ชั่น
» ไลบราลี่ฟังก์ชั่น (Library Functions)
» ฟังก์ชั่นที่สร้างขึ้นโดยตัวท่านเอง (User Defined Functions)
» ภาพรวมของฟังก์ชั่น
» ตัวแปรแบบ Global และ Local
» การเขียนฟังก์ชั่นแบบคืนค่า
» การเขียนฟังก์ชั่นแบบไม่คืนค่า (โพรซีเดอร์)
» ใบงาน 1 : การเขียนโปรแกรมสูตรคูณ
» ใบงาน 2 : การเขียนโปรแกรมสูตรคูณแบบกำหนดแม่ เลขเริ่มต้นและเลขสุดท้าย
» ใบงาน 3 : โปรแกรมตัดเกรดแบบ S/U
» ใบงาน 4 : โปรแกรมตัดเกรดแบบแบบ A,B,C,D,F
» ใบงาน 5 : การวนรอบแบบ break และ continue
» ใบงาน 6 : การใช้งานตัวแปรแบบ Global ภายในฟังก์ชั่น
» คำถามท้ายบทเรียน
ฟังก์ชั่น (Function)
» ฟังก์ชั่น (Function) คือ คำสั่ง มี 2 แบบ 1) คำสั่งที่สร้างโดยคนอื่น 2) คำสั่งที่สร้างโดยตัวเราเอง
» ฟังก์ชั่น จะมีการคืนค่าเพื่อนำค่านั้น ๆ ไปใช้งานต่อไป โดยการคืนค่าจะเขียนคำสั่ง returen เอาไว้ในฟังก์ช่น
» ฟังก์ชั่น จะมีชื่อเรียก และจะมีสิ่งที่ส่งเข้าไปให้ฟังก์ชั่น ซึ่งเรียกว่า อาร์กิวเมนต์
» ฟังก์ชั่น จะมีอาร์กิวเมนต์หรือไม่มีขึ้นกับผู้ออกแบบฟังก์ชั่นนั้น ๆ
» ฟังก์ชั่น จะมีเครื่องหมาย () หลังชื่อของฟังก์ชั่น เช่น print(), dir((), sqrt() ฯลฯ
คำถาม : ข้อใดต่อไปนี้เป็นฟังก์ชั่น ?
ก) printf() ข) print ค) echo ง) echo() จ) sum ฉ) sum()
ฟังก์ชั่นที่สร้างขึ้นโดยคนอื่น
» ฟังก์ชั่นประเภทนี้ ผู้ใช้สามารถเรียกใช้งานได้ เป็นฟังก์ชั่นที่พัฒนาขึ้นจากโปรแกรมเมอร์คนอื่น ๆ และเผยแพร่ให้ใช้งาน
» ฟังก์ชั่นที่รวบรวมเก็บเข้าไว้ด้วยกันจะเรียกว่า Library หรือ Module เช่น
» ภาษาไพธอน มีคำสั่งต่าง ๆ เช่น คำสั่งทางคณิตศาสตร์ เมื่อจะใช้งานต้องใช้คำสั่ง import เช่น
รูปแบบที่ 1 : ขอใช้คำสั่งด้วยการประกาศเข้ามาทั้งหมด เช่น import math เมื่อใช้งานจะใช้คำสั่ง math.sqrt(9) เป็นต้น
รูปแบบที่ 2 : ขอใช้คำสั่งเพียงบางคำสั่ง เช่น from math import sqrt เมื่อใช้งานจะเรียกคำสั่ง sqrt(9) เป็นต้น
ฟังก์ชั่นที่สร้างขึ้นด้วยตนเอง
» การสร้างฟังก์ชั่น มีรูปแบบดังนี้
def ชื่อฟังก์ชั่น():
คำสั่ง.....
คำสั่ง.....
return ผลลัพธ์
ตัวอย่างการสร้างฟังก์ชั่น adder()
def adder(a, b):
return a+b
a = adder(3,2)
คำอธิบาย:
- ฟังก์ชั่นด้านบน ชื่อ บวก()
- ฟังก์ชั่นบวก() ต้องการอาร์กิวเมนต์ 2 ตัว คือ a และ b
- ฟังก์ชั่นบวก() คืนค่าเป็นผลรวมของ a และ b
- คำสั่ง a = บวก(3,2) มีผลลัพธ์เท่ากับเลข 5
a = adder(3,2)
b = adder(4,3)
c = adder(a,b)
คำอธิบาย :
ฟังก์ชั่น บวก() จะคืนค่าเป็นตัวเลข ซึ่งเป็นผลรวมของอาร์กิวเมนต์ที่ป้อนให้กับฟังก์ชั่น และผลลัพธ์จะถือว่าเป็นเพียงตัวเลขที่นำไปใช้คำนวณได้
คำสั่ง for
การวนรอบด้วยภาษาไพธอน มีอยู่ 2 คำสั่ง คือ for และ while
1. การวนรอบแบบกำหนดจำนวนรอบ ใช้คำสั่ง for เช่น
x = range(1,13)
for i in x:
print("รอบที่ %d : \tค่า i มีค่าเท่ากับ %d ถ้าเอา 30 x i \tจะเท่ากับ %d"%(i,i,30*i))
ผลลัพธ์:
รอบที่ 1 : ค่า i มีค่าเท่ากับ 1 ถ้าเอา 30 x i จะเท่ากับ 30
รอบที่ 2 : ค่า i มีค่าเท่ากับ 2 ถ้าเอา 30 x i จะเท่ากับ 60
รอบที่ 3 : ค่า i มีค่าเท่ากับ 3 ถ้าเอา 30 x i จะเท่ากับ 90
รอบที่ 4 : ค่า i มีค่าเท่ากับ 4 ถ้าเอา 30 x i จะเท่ากับ 120
รอบที่ 5 : ค่า i มีค่าเท่ากับ 5 ถ้าเอา 30 x i จะเท่ากับ 150
รอบที่ 6 : ค่า i มีค่าเท่ากับ 6 ถ้าเอา 30 x i จะเท่ากับ 180
รอบที่ 7 : ค่า i มีค่าเท่ากับ 7 ถ้าเอา 30 x i จะเท่ากับ 210
รอบที่ 8 : ค่า i มีค่าเท่ากับ 8 ถ้าเอา 30 x i จะเท่ากับ 240
รอบที่ 9 : ค่า i มีค่าเท่ากับ 9 ถ้าเอา 30 x i จะเท่ากับ 270
รอบที่ 10 : ค่า i มีค่าเท่ากับ 10 ถ้าเอา 30 x i จะเท่ากับ 300
รอบที่ 11 : ค่า i มีค่าเท่ากับ 11 ถ้าเอา 30 x i จะเท่ากับ 330
รอบที่ 12 : ค่า i มีค่าเท่ากับ 12 ถ้าเอา 30 x i จะเท่ากับ 360
2. การวนรอบแบบกำหนดเงื่อนไข ใช้คำสั่ง while
q = 1000
while q > 50:
q = input("กรุณาป้อนตัวเลข :")
q = int(q)
print("ตัวเลขที่ป้อนเข้ามาคือ %d !!"%(q))
การใช้คำสั่ง if
การเปรียบเทียบ เป็นความสามารถของคอมพิวเตอร์ โดยคำตอบจะมีค่า จริง/ไม่จริง (True/False) เท่านั้น เช่น
ดิน = "แห้ง"
if ดิน == "แห้ง":
print("รดน้ำต้นไม้")
ทางเลือกหลายทาง
ดิน = "แห้ง"
if ดิน == "แห้ง":
print("รดน้ำต้นไม้")
elif ดิน == "เปียก":
print("ปิดวาล์วน้ำ")
else:
print("งง ไม่รู้เรื่อง")
ผลลัพธ์ :
รดน้ำต้นไม้
ดิน = "เปียก"
if ดิน == "แห้ง":
print("รดน้ำต้นไม้")
elif ดิน == "เปียก":
print("ปิดวาล์วน้ำ")
else:
print("งง ไม่รู้เรื่อง")
ผลลัพธ์ :
ปิดวาล์วน้ำ
ดิน = "ดินดำ"
if ดิน == "แห้ง":
print("รดน้ำต้นไม้")
elif ดิน == "เปียก":
print("ปิดวาล์วน้ำ")
else:
print("งง ไม่รู้เรื่อง")
ผลลัพธ์ :
.......................................
ตัวดำเนินการสำหรับตรวจสอบเงื่อนไข
ตัวดำเนินการในการเปรียบเทียบได้แก่
- > มากกว่า เช่น print( 3 > 5 ) ตอบ .........................
- < น้อยกว่า เช่น print( 3 < 5 ) ตอบ .........................
- >= มากกว่าหรือเท่ากับ เช่น print( 3 >= 3 ) ตอบ .........................
- <= น้อยกว่าหรือเท่ากับ เช่น print( 3 <= 3 ) ตอบ .........................
ปฏิบัติการลอจิก ซึ่งกระทำกับเงือนไขหลายตัว
ลอจิก (Logical) คือ ความเป็นเหตุผล มี 3 โอเปอร์เรเตอร์ ได้แก่
ก) แอนด์ ( & หรือ and ) คือ ประตูต้องเปิดทุกบาน จึงมีผลลัพธ์เท่ากับ 1 ให้กลับไปดูเรื่อง AND Gate เพิ่มเติม เช่น
a = 3 > 2
print(a) ผลลัพธ์ คือ ....................
b = 10 < 5
print(b) ผลลัพธ์ คือ ....................
c = a and b
print(c) ผลลัพธ์ คือ ....................
a = 3 > 2
print(a) ผลลัพธ์ คือ ....................
b = 10 < 5
print(b) ผลลัพธ์ คือ ....................
c = a & b
print(c) ผลลัพธ์ คือ ....................
print ( (3 > 2) and (3 < 2) ) มีค่าเท่ากับ ( 1 and 0 ) คำตอบคือ .............................
ข) ออร์ ( | หรือ or ) คือ ประตูบานใดบานหนึ่งเปิด ผลลัพธ์มีค่าเป็นจริง ให้กลับไปดูเรื่อง OR Gate
a = 3 > 2
print(a) ผลลัพธ์ คือ ....................
b = 10 < 5
print(b) ผลลัพธ์ คือ ....................
c = a or b
print(c) ผลลัพธ์ คือ ....................
a = 3 > 2
print(a) ผลลัพธ์ คือ ....................
b = 10 < 5
print(b) ผลลัพธ์ คือ ....................
c = a | b
print(c) ผลลัพธ์ คือ ....................
ค) น็อต ( ~ หรือ not ) คือ ตรงข้าม ถ้าป้อน 1 ผลลัพธ์เป็น 0 ถ้าป้อน 0 ผลลัพธ์เป็น 1 เช่น
a = not True
print(a) # ผลลัพธ์ คือ ...............
b = True
print(a) # ผลลัพธ์ คือ ...............
c = ~True
print(a) # ผลลัพธ์ คือ ...............
d = True
print(a) # ผลลัพธ์ คือ ...............
คำสั่ง break และ continue
โดยปกติการวนรอบทำงานจะทำตามจำนวนรอบที่กำหนดไว้ แต่ในโปรแกรมภาษาคอมพิวเตอร์สามารถสั่งให้หยุดการทำงานเพื่อตรวจสอบอะไรบางอย่าง และนอกจากนั้นยังสามารถให้กลับมาทำตามจำนวนรอบที่กำหนดได้อีกด้วย โดยใช้คำสั่ง break และ continue
ระยะทาง = range(10)
ใบขับขี่ = False
print("วันนี้ฉันจะกลับบ้าน บ้านฉันห่างจากนี่ %d กม. วันนี้ใบขับขี่ฉันมีสถานะเป็น %d"%(ระยะทาง[-1], ใบขับขี่))
for i in ระยะทาง:
print(">> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : %d"%(i))
if i == 5:
print("\t>> ฉัน : ตายล่ะตำรวจ ๆ")
print("\t>> ตำรวจ : ขอตรวจใบขับขี่ด้วยครับ :)")
if ใบขับขี่ == True:
print("\t>> ฉัน : แป๊บนึงนะครับ นี่ครับ !!")
print("\t>> ตำรวจ : โอเค เดินทางกลับบ้านโดยสวัสดิภาพนะ !!")
continue
else:
print("\t>> ฉัน : อืม.. ลืมเอามาอะ !!")
print("\t>> ตำรวจ : งั้นวันนี้ไม่ต้องกลับบ้านนะ !!")
break
ถ้าใบขับขี่มีค่า เป็น True ผลลัพธ์ :
วันนี้ฉันจะกลับบ้าน บ้านฉันห่างจากนี่ 9 กม. วันนี้ใบขับขี่ฉันมีสถานะเป็น 1
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 0
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 1
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 2
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 3
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 4
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 5
>> ฉัน : ตายล่ะตำรวจ ๆ
>> ตำรวจ : ขอตรวจใบขับขี่ด้วยครับ :)
>> ฉัน : แป๊บนึงนะครับ นี่ครับ !!
>> ตำรวจ : โอเค เดินทางกลับบ้านโดยสวัสดิภาพนะ !!
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 6
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 7
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 8
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 9
ถ้าใบขับขี่มีค่า เป็น False ผลลัพธ์ :
วันนี้ฉันจะกลับบ้าน บ้านฉันห่างจากนี่ 9 กม. วันนี้ใบขับขี่ฉันมีสถานะเป็น 0
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 0
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 1
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 2
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 3
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 4
>> สบายใจฉันกำลังกลับบ้าน กี่โลเมตรที่ : 5
>> ฉัน : ตายล่ะตำรวจ ๆ
>> ตำรวจ : ขอตรวจใบขับขี่ด้วยครับ :)
>> ฉัน : อืม.. ลืมเอามาอะ !!
>> ตำรวจ : งั้นวันนี้ไม่ต้องกลับบ้านนะ !!
การวนรอบด้วยคำสั่ง while
คำสั่ง while เป็นการวนรอบแบบมีเงื่อนไข กล่าวคือ จะทำงานเมื่อเงื่อนไขเป็นจริง และจะหยุดการทำงานเมื่อเงื่อนไขเป็นเท็จ
q = 1000
while q > 50:
q = input("กรุณาป้อนตัวเลข :")
q = int(q)
print("ตัวเลขที่ป้อนเข้ามาคือ %d !!"%(q))
ประเภทของฟังก์ชั่น
ฟังก์ชั่นมี 2 อย่าง คือ
ก) ไลบรารี่ (Library) คือ ฟังก์ชั่นที่โปรแกรมเมอร์คนอื่นเขียนเอาไว้ให้เราใช้งาน มีเยอะมาก หากต้องการรู้ว่ามีไลบรารี่อะไรบ้างให้ค้นได้ที่ https://pypi.org/
ข) ฟังก์ชั่นที่เราเขียนขึ้นมาเองใช้เอง
ไลบราลี่ฟังก์ชั่น (Library Functions)
- ไลบรารี่ฟังก์ชั่น เป็นฟังก์ชั่นที่อยู่ภายในไลบรารี่ หรือ แพคเกจ เช่น หากต้องอ่านข้อมูลจาก wiki pedia สามารถใช้ไลบรารี่ wikipedia โดยต้องติดตั้งก่อนใช้งาน ด้วยคำสั่ง
!sudo pip install wikipedia
!sudo pip install wikipedia-api
- หลังจากติดตั้งไลบรารี่แล้วจึงสามารถใช้งานฟังก์ชั่นต่าง ๆ ในไลบรารี่นั้นได้ เช่น
import wikipedia as wiki
wiki.set_lang("th")
data = wiki.summary("โลก", sentences=1)
print(data)
ฟังก์ชั่นที่สร้างขึ้นโดยตัวท่านเอง (User Defined Functions)
การสร้างฟังก์ชั่นในภาษาไพธอน ใช้คำสั่ง def ในการประกาศ เช่น
def adder(a,b):
return a+b
m = adder(3,2)
print(m) # ผลลัพธ์ คือ ......................
print(adder(7,2)) # ผลลัพธ์ คือ ......................
n = adder(adder(1,2), adder(2,2))
print(n) # ผลลัพธ์ คือ ......................
o = adder(adder(adder(4,4),2), adder(2,adder(3,3)))
print(n) # ผลลัพธ์ คือ ......................
print(o) # ผลลัพธ์ คือ ......................
ตัวแปรแบบ Global และ Local
ในฟังก์ชั่นสามารถประกาศตัวแปรภายในได้แต่จะมีคุณสมบัติเป็น private คือ ใช้ภายในฟังก์ชั่นเท่านั้น
หากต้องการให้ตัวแปรภายนอกสามารถใช้งานภายในฟังก์ชั่นได้ ให้ประกาศคำสั่ง global ตามด้วยชื่อตัวแปร เช่น
def ฉันคือเอ1():
a = 7
print("ฉันชื่อ a : ฉันอยู่ในฟังก์ชั่น \"ฉันคือเอ()\" -> ฉันมีค่าเท่ากับ ",a)
return 7
def ฉันคือเอ2():
global a
print("ฉันชื่อ a : ฉันอยู่ในฟังก์ชั่น \"ฉันคือเอ()\" -> ฉันมีค่าเท่ากับ ",a)
return a
a = 20
z = ฉันคือเอ1()
z = ฉันคือเอ2()
ผลลัพธ์ :
ฉันชื่อ a : ฉันอยู่ในฟังก์ชั่น "ฉันคือเอ()" -> ฉันมีค่าเท่ากับ 7
ฉันชื่อ a : ฉันอยู่ในฟังก์ชั่น "ฉันคือเอ()" -> ฉันมีค่าเท่ากับ 20
การเขียนฟังก์ชั่นแบบไม่คืนค่า (โพรซีเดอร์)
Procedure (โพรซีเดอร์) คือ ฟังก์ชั่นแบบไม่คืนค่า ดังนั้น เรียกใช้แต่ไม่ต้องคืนค่ากลับมาหาตัวแปรที่เรียกใช้ ดังนั้น โพรซีเดอร์จึงไม่มีคำสั่ง return อยู่ภายในฟังก์ชั่น
ตัวอย่าง 1 : การเขียนโปรแกรมสูตรต่อไปนี้ด้วย for loop
$$ \sum_{i=1}^{n} x_{i}+2 $$
$$ x = [ 3 , 2 , 5 , 8 , 2 ] $$
$$ x_{new} = [ ... ,... , ... , ... , ... ] $$
def main():
x = [ 3 , 2 , 5 , 8 , 2 ]
x_new = []
for i in x:
b = i + 2
x_new.append(b)
z = sum(x_new)
print("x = ", x)
print("x_new = ", x_new)
print("z = %.2f"%(z))
main()
ผลลัพธ์ :
x = [3, 2, 5, 8, 2]
x_new = [5, 4, 7, 10, 4]
z = 30.00
คำอธิบาย :
บรรทัด 1 : ประกาศฟังก์ชั่น main()
บรรทัด 2 : ประกาศตัวแปร x มีค่า [ 3 , 2 , 5 , 8 , 2 ]
บรรทัด 3 : ประกาศตัวแปร x_new สำหรับเก็บค่า x ใหม่ ซึ่งจะมีค่าเปลี่ยนไปตามสูตร
บรรทัด 4 : วนเข้าไปในตัวแปร x ทีละรอบ ในรอบที่ 1 ค่า i มีค่าเท่ากับ 3 , รอบที่ 2 ค่า i มีค่าเท่ากับ 2 โดยวนรอบจนถึงรอบสุดท้าย ค่า i มีค่าเท่ากับ 2 ตามลำดับ
บรรทัด 5 : กำหนดให้ตัวแปร b มาเก็บค่าชั่วคราว โดย b = i + 2 ตามสูตรที่กำหนด
บรรทัด 6 : นำค่า b ที่คำนวณได้เพิ่มต่อท้ายตัวแปร x_new
บรรทัด 7 : เมื่อวนรอบจนเสร็จ สังเกตย่อหน้าบรรทัดใหม่จะถอยมาอยู่ในระดับเดียวกับ for จากนั้นให้นำผลรวมของ x_new มาเก็บไว้ในตัวแปร z
บรรทัด 8 : พิมพ์ค่าตัวแปร x ซึ่งมีผลลัพธ์ คือ x = [3, 2, 5, 8, 2]
บรรทัด 9 : พิมพ์ค่าตัวแปร x_new ซึ่งเป็นผลจากการคำนวณตามสูตร คือ x_new = [5, 4, 7, 10, 4]
บรรทัด 10 : พิมพ์ค่าตัวแปร z ซึ่งเป็นผลรวมของ x_new มีค่าคือ z = 30.0 โดยที่เครื่องหมาย %f มีการกำหนด %.2f คือทศนิยมสองตำแหน่ง ผลลัพธ์จึงมีค่า 30.00 (ทศนิยมสองตำแหน่ง)
บรรทัด 12 : เรียกใช้คำสั่ง main()
ตัวอย่าง 2 : การเขียนโปรแกรมสูตรต่อไปนี้ด้วย for loop
$$ \sum_{i=1}^{n} x_{i}^2 $$
def main():
tmp = []
x = [ 3 , 2 , 5 , 8 , 2 ]
for i in x:
b = i ** 2
tmp.append(b)
z = sum(tmp)
print("z = %f" % (float(z))
main()
ตัวอย่าง 3 : การเขียนโปรแกรมสูตรต่อไปนี้ด้วย for loop
$$ \frac{\sum_{i=1}^{n} x_{i}}{n} หรือเขียนได้ว่า \frac{\sum x_{i}}{n} $$
def main():
tmp = []
x = [ 3 , 2 , 5 , 8 , 2 ]
for i in x:
b = i ** 2
tmp.append(b)
z = sum(tmp)
print("z = %f" % (float(z))
main()
กิจกรรม 1 : การเขียนโปรแกรมสูตรคูณ
กิจกรรม 2 : การเขียนโปรแกรมสูตรคูณแบบกำหนดแม่ เลขเริ่มต้นและเลขสุดท้าย
กิจกรรม 3 : โปรแกรมตัดเกรดแบบ S/U
กิจกรรม 4 : โปรแกรมตัดเกรดแบบแบบ A,B,C,D,F
กิจกรรม 5 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = x_{i} - \bar{x} $$
กิจกรรม 6 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \frac{\sum_{i=1}^{n} = x_{i} - \bar{x}}{n} $$
กิจกรรม 7 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = x_{i}^2 - \bar{x} $$
กิจกรรม 8 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = (x_{i} - \bar{x})^2 $$
กิจกรรม 9 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = x_{i} + 3 $$
กิจกรรม 10 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = \frac{x_{i}}{2} $$
กิจกรรม 11 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = \sqrt{x_{i}} $$
กิจกรรม 12 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ \sum_{i=1}^{n} = \sqrt{x_{i}}^{5} $$
กิจกรรม 13 : ให้นิสิตเขียนโปรแกรมด้วยสูตรต่อไปนี้ด้วย for
$$ SD = \sqrt{ \sum \frac{|x - \bar{x} | ^2}{n} } $$
กิจกรรม 14 : ให้นิสิตเขียนโปรแกรมแสดงเครื่องหมาย * ด้วย for ดังนี้
*
**
***
****
หมายเหตุ : ทดลองพิมพ์คำสั่ง "*" * 1 และสังเกตผลลัพธ์ จากนั้นลองเปลี่ยนเลขจากเลข 1 เป็นเลขอื่น ๆ เช่น 2 3 4 5 เป็นต้น จากนั้นสังเกตผลลัพธ์ ให้ใช้หลักการดังกล่าวมาเขียนโปรแกรมกิจกรรมที่ 14
กิจกรรม 15 : ให้นิสิตเขียนโปรแกรมสร้างฟังก์ชั่นคำนวณค่าเบี่ยงเบนมาตรฐาน จากสูตรตัวอย่างที่ 13
การเรียกใช้งาน
def SD(x):
....
....
x = [3,2,1,6,3,2,5]
sd = SD(x)
print("ค่า sd มีค่าเท่ากับ %f"%(sd))
หมายเหตุ : กิจกรรม 15 จะเหมือนกิจกรรม 13 เพียงแต่ฟังก์ชั่น SD() จะต้องมีการกำหนดอาร์กิวเมนต์ด้วย และบรรทัดล่างสุดของฟังก์ชั่นจะมีคำสั่ง return ให้ดูตัวอย่างฟังก์ชั่น adder(a,b) เป็นตัวอย่าง
รายชื่อการเข้าเรียนและส่งงาน
» ไม่พบกิจกรรมการเรียนในสัปดาห์นี้ กรุณาตรวจสอบเวลา : วันนี้ คือ วันที่ 27-04-2024