1 หลักการเขยี นโปรแกรม 5th Feb 2019 www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน Input() 2 รับข้อมูลจากทางคยี บ์ อร์ด รบั คา่ มาเป็น String myName = input(\"Please enter your name: \") • ข้อความ ”Please enter your name: ” จะแสดงออกทางหนา้ จอเพ่ือ ถาม/แนะนาํ ผู้ใชง้ านในการกรอกข้อมูล • อย่างไรกต็ ามนกั ศึกษาสามารถใช้ % Formatter เพ่ือสรา้ งลกู เลน่ ได้ myAge = input(\"Hi %s, what about your age: \" %(myName)) www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน If Statement 3 ชุดคําสั่งเปรียบเทียบเงือ่ นไขพน้ื ฐาน If ... Then … Else if condition 1 is met: 1. elif ย่อมาจาก Else If do A 2. Python อนุญาตให้โปรแกรมเมอร์ elif condition 2 is met: ใช้คําสั่ง elif ได้ไมจ่ าํ กดั do B elif condition 3 is met: do C elif condition 4 is met: do D else: do E www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน For Loop 4 for loop คือคาํ สง่ั ทําหน้าทป่ี ระมวลชดุ คาํ ส่ังท่ีอย่ภู ายใตบ้ ริเวณ for loop ซา้ํ ไปเรอื่ ยๆ จนกวา่ เงอื่ นไขทใ่ี ชต้ รวจสอบของ for loop นนั้ จะไมเ่ ปน็ จริง (เท็จ) การประมวลจะส้ินสดุ ลง (ออกจาก Loop) for a in iterable: print(a) pets = ['cats', 'dogs', 'rabbits', 'hamsters’] for myPets in pets: print(myPets) www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน While Loop 5 while loop คือคําสั่งทําหนา้ ทปี่ ระมวลชุดคาํ สง่ั ท่อี ยภู่ ายใต้บรเิ วณ while loop ซ้าํ ไปเรื่อยๆ จนกวา่ เงื่อนไขท่ใี ช้ตรวจสอบของ while loop นน้ั จะไม่ เปน็ จรงิ (เท็จ) การประมวลจะส้นิ สุดลง (ออกจาก Loop) while condition is true: do A counter = 5 while counter > 0: print (\"Counter = \", counter) counter = counter - 1www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน Break 6 เมอ่ื กําลงั ประมวลผลอยภู่ ายใน Loop หากนกั ศกึ ษาตอ้ งการออกจากการ ทํางานทนั ที นกั ศึกษาสามารถกระทาํ ได้โดยใชค้ าํ สั่ง break ดูตัวอย่าง j=0 for i in range(5): j=j+2 print ('i = ', i, ', j = ', j) if j == 6: break www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ทบทวน Continue 7 เม่อื กําลังประมวลผลอยู่ภายใน Loop หากนักศึกษาตอ้ งการออกจาก รอบปจั จบุ ันทกี่ ําลังทาํ งานอยแู่ ละข้ามไปทาํ งานในรอบถัดไป นกั ศึกษา สามารถกระทาํ ได้โดยใชค้ ําส่ัง continue ดตู ัวอยา่ ง j=0 for i in range(5): j=j+2 print ('\\ni = ', i, ', j = ', j) if j == 6: continue print ('I will be skippwewwd.swko.asviaer if j=6') © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
ตอนนีน้ ักศกึ ษาอยรู่ ะดบั ไหน 8 Integration Integrate with others applications Etc. Algorithm Complex Algorithm Build on Performances การตัดสนิ ใจ พน้ื ฐาน Choices ขอบเขตและพ้นื ฐาน Decisions Making ตวั แปร ประเภทตัวแปร More Dynamic ฯลฯ Programmings www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
9 Functions and Modules Python swk.asia www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 10 ฟงั กช์ น่ั (Functions) คอื ชดุ คําสง่ั ท่ถี ูกเขียนไวแ้ ล้วเพอ่ื ใช้ในการทํางาน อยา่ งใดอยา่ งหนึง่ ใหน้ ักศกึ ษาคดิ ถึงสตู รคาํ นวณทางคณิตศาสตร์ที่ใชใ้ น โปรแกรม MS Excel ในการที่จะบวกเลขจากชอ่ งขอ้ มลู (Cells) จํานวนหา้ ชอ่ งได้แก่ A1, A2, A3, A4, และ A5 เรามกั ใชส้ ตู รคาํ นวณไดแ้ ก่ sum() เขียนคําส่ังไดว้ ่า sum(A1:A5) แทนท่จี ะใชว้ ิธีการบวกแบบตรงไปตรงมา A1+A2+A3+A4+A5 ฟงั กช์ ั่นสามารถมีการสง่ ผ่านตัวแปร (arguments) เขา้ ไปทํางานภายใน ได้ เพื่อความสะดวกและยืดหยุ่นในการเขียนโปรแกรมมากขนึ้ www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 11 ให้นักศึกษาศึกษา Code โปรแกรมตอ่ ไปนี้ print(\"Hello World\") จากตวั อย่างข้างบน เราเรียกใช้งานฟงั กช์ ่ันเพอ่ื พิมพ์ขอ้ ความแสดงผล ทางหนา้ จอ ฟังก์ช่ัน ไดแ้ ก่ print ข้อมลู สง่ ผ่าน ได้แก่ “Hello World” (Function) (Argument/Parameter) อยา่ งไรกต็ ามฟงั กช์ ่ัน print() เป็นฟงั กช์ ่ันมาตรฐานทีอ่ ยู่ในภาษาไพทอน อยู่แลว้ โปรแกรมเมอรจ์ งึ สามารถเรียกใชง้ านได้ทันที www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 12 ให้นักศกึ ษาศกึ ษา Code โปรแกรมตอ่ ไปนี้ newString = \"Hello World\".replace(\"World\", \"Universe\") ‘You’ll get Hello Universe จากตวั อยา่ งขา้ งบน เราเรียกใช้งานฟงั กช์ ัน่ replace เพ่ือเปลยี่ นขอ้ ความ จาก “World” เปน็ “Universe” • Function ได้แก่ replace • Argument ตวั ที่ 1 ได้แก่ “World” • Argument ตัวที่ 2 ไดแ้ ก่ “Universe” www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 13 Syntax ในการสร้างฟงั กช์ น่ั เพอื่ ใชง้ าน def ชื่อฟงั กช์ นั่ (พารามิเตอร์): ชุดคาํ ส่ัง return [ขอ้ มลู ส่งกลบั ] จาก syntax ดา้ นบนมคี ยี เ์ วิรด์ 2 คาํ ไดแ้ ก่ def และ return • def เป็นการบอกไพทอนว่าหลงั จากน้ีคอื บรเิ วณทีเ่ ป็นการทํางานของ ฟงั กช์ ่ัน (บริเวณโค้ดที่มยี อ่ หนา้ 1 TAB) • return เป็นจดุ ท่สี ิน้ สดุ การทาํ งานของฟงั กช์ ่ันและจะตอ้ งมคี ําตอบหลัง การทํางาน โดยคําตอบมไี ดม้ ากกว่า 1 คาํ ตอบ โปรแกรมเมอร์สามารถ ใช้คําส่ัง return none ได้ในกรณwwwีท.sw่ีฟk.asงั ia กช์ น่ั ไมม่ ขี อ้ มลู ส่งกลับ (คาํ ตอบ) © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 14 ให้นกั ศึกษาศึกษา Code ฟงั กช์ น่ั ต่อไปน้ี def findSumSeries (numberToSum): sum = 0 for x in range(1, numberToSum): sum += x return sum findSumSeries(5) ‘You’ll get 1+2+3+4 = 10 www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Functions 15 ใหน้ กั ศึกษาศกึ ษา Code ฟงั กช์ น่ั ตอ่ ไปน้ี for x in range(1, 5): sum += x รอบท่ี x sum + x sum = sum + x 1 1 0+1 1 2 2 1 +2 3 3 3 3+3 6 4 4 6+4 10 www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Scope Variables 16 ใหน้ ักศึกษาศกึ ษา Code ฟงั กช์ นั่ ตอ่ ไปนี้ www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Scope Variables 17 ใหน้ ักศึกษาศกึ ษา Code ฟงั กช์ นั่ ตอ่ ไปนี้ www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Default Parameter Values 18 ใหน้ กั ศกึ ษาศกึ ษา Code ฟงั กช์ ่นั ต่อไปน้ี def someFunction(a, b, c=1, d=2, e=3): print(a, b, c, d, e) someFunction(10, 20) someFunction(10, 20, 30, 40) www.swk.asia Default Parameters จะต้องวางอย่ทู ้ายสดุ เสมอ © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Variable Length Argument List 19 ให้นักศึกษาศึกษา Code ฟงั กช์ น่ั ต่อไปน้ี Default Parameters จะตอ้ งวางอย่ทู า้ ยสดุ เสมอ def someFunction(*abc): sum = 0 for i in abc: sum += i print(sum) someFunction(1,2,3,4,5) www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Variable Length Argument List 20 ให้นกั ศกึ ษาศกึ ษา Code ฟงั กช์ น่ั ตอ่ ไปน้ี def someFunction(**abc): sum = 0 for i,j in abc.items(): print(i) someFunction(Peter=5, John=7) www.swk.asia Default Parameters จะตอ้ งวางอย่ทู ้ายสุดเสมอ © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Modules 21 ในภาษาไพทอนมโี มดูล (Modules) ไลบารมี่ ากมายใหเ้ ลือกใช้ เช่น โปรแกรมเมอรต์ ้องการให้ไพทอนสุ่มตัวเลข ไพทอนมีโมดูลทีช่ ่อื วา่ randint() หรอื randrange() ให้เลอื กใช้ แต่โปรแกรมเมอร์จะตอ้ งประกาศ กอ่ นใช้งานว่าจะใช้งานโมดูประเภทนี้ import random #ประกาศใชโ้ มดูลชื่อ random #ซ่งึ เปน็ โมดลู ไลบารี่พน้ื ฐานของไพทอน print(random.randint(1, 10)) #สมุ่ เลข 1 … 10 print(random.randrange(1, 10)) #สุม่ เลข 1 … 10 www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Your Own Modules 22 ใหน้ ักศกึ ษาลองปฏิบตั ิ Workshop ต่อไปนี้ 1. บันทึกไฟล์ชอื่ วา่ findsum.py 2. เปดิ ไฟลใ์ หม่ บนั ทกึ ไฟลช์ ่อื ว่า callfindsum.wpwwy.swkแ.aลsiaะทําการรัน ให้สงั เกตุผลการรนั © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Workshop 23 1. เขียนฟงั กช์ ่ันเพ่ือตรวจสอบวา่ เลขจาํ นวนจรงิ ทรี่ ับค่าจากคยี ์บอร์ด เปน็ เลขค่หู รือเลขค่ี 2. เขียนฟงั กช์ ั่นเพอ่ื ตรวจสอบวา่ เลขจํานวนจริงบวกทร่ี บั ค่าจาก คียบ์ อร์ดเป็นจํานวนเฉพาะ (Prime Number) หรอื ไม่ จาํ นวนเฉพาะ คือจํานวนทีม่ ีแค่เลข 1 และ ตวั มันเองเท่านั้นทห่ี ารลงตัว (เหลือเศษเป็นศูนย์) 3. จากข้อ 2. ใหเ้ ขียนฟงั กช์ น่ั ดังกลา่ วตง้ั ช่อื วา่ checkIfPrime ภายใต้ โมดูลชอื่ ว่า prime (ไฟล์ชอ่ื prime.py) และสร้างไฟลไ์ พทอนใหมช่ ่อื ว่า usercheckifprime.py ในไฟล์ดงั กล่าวให้ทาํ การ import โมดูล prime และเรียกใช้งานฟงั กช์ น่ั checkIfPrime จากโมดูลดงั กลา่ ว www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
24 THANK YOU www.swk.asia © 2018 Sriworakarn College, Aj Krit Th. All Rights Reserved.
Search
Read the Text Version
- 1 - 24
Pages: