งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

นิพจน์ ตัวแปร และฟังก์ชัน

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "นิพจน์ ตัวแปร และฟังก์ชัน"— ใบสำเนางานนำเสนอ:

1 นิพจน์ ตัวแปร และฟังก์ชัน

2 เนื้อหา การคำนวณบนคอมพิวเตอร์ นิพจน์ ตัวแปร และลำดับความสำคัญ
ประเภทตัวแปร การอ่านข้อมูลเข้า ตัวอย่างการคำนวณอย่างง่าย

3 Python Shell ใน Wing IDE
เครื่องคิดเลข เราสามารถใช้คอมพิวเตอร์เป็นเครื่องคิดเลขได้ พิมพ์ใน Python Shell Python Shell ใน Wing IDE

4 เครื่องคิดเลข ทดลองพิมพ์ >>> 10 * 5 50
ป้อนลงใน Python Shell >>> 10 * 5 50 >>> 10 >>> >>> 1 * ** 10 คำตอบที่ได้รับ ช่องว่างไม่มีผล คือการยกกำลัง

5 นิพจน์ สิ่งที่เราป้อนเข้าไปใน Console ของไพธอนเรียกว่านิพจน์ (expression) ที่ Console เมื่อคอมพิวเตอร์ได้รับนิพจน์จะนำไปประมวลผลโดยการคำนวณ แล้วพิมพ์ผลลัพธ์ออกมา

6 ทดลองคำนวณ วัตถุชิ้นหนึ่งเคลื่อนที่ด้วยความเร็วต้น 10 เมตรต่อวินาที มีความเร่ง 2 เมตร2/วินาที เมื่อเคลื่อนที่ไป 5 วินาที วัตถุจะอยู่ห่างจากจุดเริ่มต้นกี่เมตร? s = ut + at2/2 10 * * (5*5) / 2

7 ตัวดำเนินการ (1) ในการเขียนนิพจน์ ในการคำนวณข้างต้น เราได้ใช้ "ตัวดำเนินการ (Operator)" เช่น +, -, *, / เพื่อนำข้อมูลมาประมวลผล ตัวดำเนินการระบุการประมวลผลที่เกิดขึ้นกับตัวถูกดำเนินการ (Operand) ตัวถูกดำเนินการ 10 * 5 ตัวดำเนินการ

8 ตัวดำเนินการ (2) ตัวดำเนินการมีทั้งแบบ
ทวิภาค (binary) ที่ทำงานกับข้อมูลสองตัว เช่น +, -, * 5 * – *7 เอกภาค (unary) ที่ทำงานกับข้อมูลตัวเดียว เช่น – * 7

9 ตัวดำเนินการ (3) ตัวดำเนินการทางคณิตศาสตร์บางส่วนแสดงดังตารางต่อไปนี้
ความหมาย ตัวอย่าง + บวก 3+5 - ลบ 4-2 * คูณ 4.5*10 / หาร หน้าถัดไป % หารเอาเศษ ** ยกกำลัง 3**4

10 การหารในไพธอน ตัวดำเนินการหารมีหลัก ๆ สองแบบ หารเอาผลลัพธ์ หารเอาเศษ
นิพจน์ ผลลัพธ์ 4/2 2.0 3/2 1.5 10/7 4286 3.0/2 10/7.0 1.4286 นิพจน์ ผลลัพธ์ 4%2 3%2 1 10%7 3 3.0%2 1.0 10%7.0 3.0

11 ประเภทของจำนวนในไพธอน
ข้อมูลประเภทตัวเลขในไพธอนมี 2 แบบคือ จำนวนเต็ม (integer) กับ จำนวนจริง (floating point) จำนวนเต็ม ค่า จำนวนจริง 10 10.0 3-2 1 3.0-2 1.0 19*5 95 19*5.2 98.8

12 ทดสอบความเข้าใจ นิพจน์ ค่า 2 + 3 * 6 20 (2+3) *6 30 3/5*2 1.2 3*5.0/2
7.5

13 สรุป: จำนวนเต็ม - จำนวนจริง
ถ้าเขียนจำนวนโดยไม่ใส่จุดทศนิยม จะถือว่าเป็นจำนวนเต็ม ผลลัพธ์ การดำเนินการระหว่างจำนวนเต็มกับจำนวนเต็มได้ผลลัพธ์เป็นจำนวนเต็ม ยกเว้นการหาร การหารจะให้ผลลัพธ์เป็นจำนวนจริง การดำเนินการที่เกี่ยวข้องกับจำนวนจริง ได้ผลลัพธ์เป็นจำนวนจริง

14 3/5*2 การคำนวณทั่วไปจะกระทำจากซ้ายไปขวา ((3/5)*2) ( 0.6 *2)

15 ลำดับความสำคัญของตัวดำเนินการ
แต่ตัวดำเนินการมีความสำคัญไม่เท่ากัน เช่น * หรือ / สำคัญกว่า + หรือ - 2+3*6 2+(3*6)

16 นี่มันก็แค่... คณิตศาสตร์ระดับประถมเท่านั้นเอง!

17 ความสำคัญของตัวดำเนินการ
ลำดับที่ ตัวดำเนินการ ตัวอย่าง 1 () (3+4) 2 ** 2**3 3 -,+ (เอกภาพ) -5, +10 4 *,/,% 3*4, 7%2 5 -,+ 2+7, 3-4 ตัวดำเนินการที่สำคัญเท่ากันจะทำจากซ้ายไปขวา ยกเว้นการยกกำลัง

18 ทดลองคำนวณ (1) 2+5*6/3+(7-2*3) ผลลัพธ์คือ? 13.0

19 ทดลองคำนวณ (2) 2 ** 2 ** 3 ผลลัพธ์คือ? 2 ** (2 ** 3) 28 = 256

20 การคำนวณซ้ำ ๆ ซ้ำ ซ้อน (2.5/2.0)*1*1/2 (2.5/2.0)*5*5/2
ก้อนหินมวล 2 kg เริ่มต้นหยุดนิ่ง มีแรงกระทำไปทางซ้าย 2.5 นิวตั้น อยากทราบว่าที่เวลา 1 วินาที, 5 วินาที และ 15 วินาที ก้อนหินจะอยู่ที่ตำแหน่งใด ซ้ำ ซ้อน (2.5/2.0)*1*1/2 (2.5/2.0)*5*5/2 (2.5/2.0)*15*15/2

21 ตัวแปร a = 2.5/2.0 a*1*1/2 a 1.25 a*5*5/2 a*15*15/2
เราสามารถใช้ตัวแปรในการอ้างถึงผลลัพธ์จากการคำนวณได้ a = 2.5/2.0 a*1*1/2 a 1.25 a*5*5/2 a*15*15/2

22 a = 2.5/2.0 ตัวแปร a 1.25 ตัวแปรเป็นสิ่งที่ใช้อ้างถึงข้อมูลต่าง ๆ
กำหนดให้ตัวแปรอ้างถึงข้อมูลโดยใช้เครื่องหมาย = หลังจากนั้นเมื่ออ้างตัวแปรก็จะได้ข้อมูลนั้นกลับมา

23 ตัวแปรเปลี่ยนค่าได้ (1)
a = 10 a * 5 b = 3 a + b a = 7 a + b a = b + 5 a a + b 50 13 10 8 11

24 ตัวแปรเปลี่ยนค่าได้ (2)
a = 10 a = a + 1 11

25 ตัวแปรเปลี่ยนค่าได้ (3)
x = 10 x = x * 2 20

26 ตัวแปรเปลี่ยนค่าได้ (4)
x = 10 x = x * 2 + 5 25

27 การทำงานบน Wing IDE Shell หรือ Console
พิมพ์คำสั่งหรือนิพจน์ Python จะคำนวณ แล้วแสดงผลลัพธ์ทันที เมื่อกด Enter

28 ป้อนโปรแกรมใน WingIDE
ส่วนพิมพ์/แก้ไขโปรแกรม คำสั่งในนี้จะถูกทำงานเมื่อสั่ง Run สามารถเขียนและแก้คำสั่ง ได้หลายบรรทัดก่อนสั่งให้ทำงาน

29 ทดลอง นำไปป้อนใน Wing IDE
โปรแกรม โปรแกรมคือรายการของคำสั่งที่เรียงต่อกัน a = 10 b = a + 5 a - b c = 12 b = a + c c = a*b a + b + c 1 + a - c ทดลอง นำไปป้อนใน Wing IDE

30 ผลลัพธ์คือความว่างเปล่า!
เพราะว่าในโปรแกรมยังไม่มีคำสั่งที่สั่งให้แสดงผลลัพธ์ของการคำนวณ

31 print คำสั่งพิมพ์ ในการพิมพ์ค่าของข้อมูล สามารถใช้ฟังก์ชัน
ในการสั่งพิมพ์ได้

32 เพิ่มคำสั่ง print ให้แสดงผลลัพธ์ ของนิพจน์ที่ต้องการ
โปรแกรม โปรแกรมคือรายการของคำสั่งที่เรียงต่อกัน เพิ่มคำสั่ง print ให้แสดงผลลัพธ์ ของนิพจน์ที่ต้องการ a = 10 b = a + 5 print(a – b) c = 12 b = a + c c = a*b print(a + b + c) print(1 + a – c)

33 เมื่อสั่ง Run จะเห็นผลลัพธ์

34 อาร์กิวเมนท์ (argument)
การเรียกฟังก์ชัน print(10) ชื่อฟังก์ชัน อาร์กิวเมนท์ (argument)

35 การทำงานในการเรียกฟังก์ชัน
print(a + b * 2) 20 สมมติว่า a = 5 b = 10 25 print(25) จะมีการคำนวณนิพจน์ที่ถูกส่งให้กับฟังก์ชันให้เสร็จก่อนส่งค่าไปให้กับฟังก์ชันนั้น

36 มีเงินรวมทั้งสิ้นกี่บาท?
โปรแกรมง่าย ๆ เรามีเงินในกระเป๋าดังนี้ เหรียญบาท 5 เหรียญ เหรียญสิบบาท 7 เหรียญ ธนบัตรใบละ 20 บาท 2 ใบ ธนบัตรใบละ 100 บาท 3 ใบ มีเงินรวมทั้งสิ้นกี่บาท? sum1 = 1 * 5 sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 sum = sum1+sum5+sum20+sum100 print(sum)

37 โปรแกรมง่าย ๆ (2) หรือสามารถเขียนโดยไม่ต้องใช้ตัวแปร sum ก็ได้
sum1 = 1 * 5 sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 print(sum1+sum5+sum20+sum100)

38 ชื่อและความหมาย พิจารณาโปรแกรมสองโปรแกรมนี้
a = 1 * 5 b = 10 * 7 c = 20 * 2 d = 100 * 3 e = a + b + c + d print(e) โปรแกรมทั้งสองทำงานเหมือนกัน sum1 = 1 * 5 sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 sum = sum1+sum5+sum20+sum100 print(sum) โปรแกรมใด ที่อ่านแล้วเข้าใจเป้าหมายมากกว่า?

39 คำแนะนำ เขียนโปรแกรมให้คนอ่าน
เพราะอย่างน้อยก็คุณคนหนึ่งนั่นเอง ที่ต้องอ่านโปรแกรมที่คุณเขียน

40 การใส่หมายเหตุ (#) เพื่อทำให้โปรแกรมอ่านง่ายขึ้น เราสามารถใส่หมายเหตุ (comment) ที่เขียนอธิบายโปรแกรมได้ ทุกอย่างหลังเครื่องหมาย # จะถือว่าเป็นหมายเหตุ

41 โปรแกรมพร้อมหมายเหตุ
# โปรแกรมนี้คำนวณเงินรวม # จากจำนวนธนบัตรประเภทต่างๆ sum1 = 1 * # เงินรวมของธนบัตร 1 บาท sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 print(sum1+sum5+sum20+sum100)

42 ”Hello ข้อมูลประเภทข้อความ ”Hello, world”
คอมพิวเตอร์นอกจากจะคำนวณด้านตัวเลขได้แล้ว ยังสามารถประมวลผลข้อมูลแบบอื่น ๆ ได้มากมาย ข้อความ (string) ก็เป็นข้อมูลอีกประเภทหนึ่งที่สามารถประมวลผลได้ สตริงเป็นประเภทข้อมูลสำหรับลำดับของของอักขระ ”Hello ”Hello, world”

43 การระบุข้อมูลประเภทข้อความ
ระบุภายในเครื่องหมายคำพูดคู่ ”Hello” หรือภายในเครื่องหมายคำพูดเดี่ยว ’World’ เครื่องหมายคำพูดที่ใช้จะต้องเปิด-ปิดแบบเดียวกัน นอกจากนี้ยังสามารถใส่เครื่องหมายพิเศษภายในได้โดยขึ้นต้นด้วยเครื่องหมาย \ (ทับกลับข้าง)

44 ตัวอย่างข้อมูลประเภทข้อความ (1)
print("hello") hello print('hello') hello print("I'm 9") I'm 9 print('I'm 9') ผิดพลาด print('I\'m 9') I'm 9 print("I\'m 9") I'm 9

45 ตัวอย่างข้อมูลประเภทข้อความ (2)
print("123") 123 print(123) 123 print("12" + "3") 123 print(12 + 3) 15 print("12" + '3') 123 print("12" + 3) ผิดพลาด

46 โปรแกรมคำนวณที่ดูดีขึ้น
sum1 = 1 * 5 sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 sum = sum1+sum5+sum20+sum100 print("The total is",sum) The total is 415

47 โปรแกรมคำนวณที่ดูดีขึ้น
sum1 = 1 * 5 sum10 = 10 * 7 sum20 = 20 * 2 sum100 = 100 * 3 sum = sum1+sum5+sum20+sum100 print("The total is",sum,"bath.") The total is 415 bath.

48 ของแถม: print ไม่ขึ้นบรรทัดใหม่
พิมพ์เสร็จจะขึ้นบรรทัดใหม่ ถ้าต้องการยกเว้นการขึ้นบรรทัดใหม่ ให้ระบุ option end เพิ่มเติม ดังตัวอย่างด้านล่าง print(10) print(20) print(10,end='') print(20) ส่วนนี้ระบุให้ฟังก์ชัน print พิมพ์สตริงว่างแทนการขึ้นบรรทัดใหม่ท้ายการพิมพ์

49 การรับข้อมูลจากผู้ใช้
เราสามารถอ่านข้อมูลจากผู้ใช้โดยใช้ฟังก์ชัน input ฟังก์ชันดังกล่าวจะคืนค่าเป็นข้อมูลประเภท string

50 ตัวอย่างการใช้งานใน Console
>>> name = input() Somchai >>> print("Hello", name) Hello Somchai >>> a = input() 10 >>> b = input() 100 >>> print(a+b) 10100

51 ข้อสังเกต พิจารณาคำสั่ง print(a+b)
เนื่องจากตัวแปร a และ b เก็บข้อมูลประเภท string ที่ได้รับจากฟังก์ชัน input การนำ string มาบวกกันจึงเป็นการนำข้อความมาต่อกันเฉย ๆ

52 ????? แล้วเราจะคำนวณค่าที่ได้รับจากผู้ใช้ได้อย่างไร ในเมื่อข้อมูลที่รับได้มีแค่ข้อมูลประเภทข้อความ (string) เท่านั้น

53 การแปลงประเภทข้อมูล เรามีฟังก์ชัน int, float, และ str สำหรับแปลงข้อมูลให้เป็นข้อมูลประเภทต่าง ๆ int("10") 10 float("10") 10.0 float(10) 10.0 int(10.6) 10

54 การแปลงประเภทข้อมูล int("10")+10 float("10")+10 float(10)+int(5)
20 float("10")+10 20.0 float(10)+int(5) 15.0 str(10)+str(5) 105

55 การแปลงระหว่าง float และ int
10 int(10.9) 10 int(-10.1) -10 ฟังก์ชัน int คืนจำนวนเต็มที่ได้หลังจากการตัดส่วนทศนิยมออก

56 Conversion between float and int (2)
เราสามารถใช้ฟังก์ชัน round ที่ปัดค่าให้เป็นจำนวนเต็มที่ใกล้ที่สุดได้ round(10.2) 10 round(10.9) 11 round(-10.1) -10

57 ฟังก์ชันที่สำคัญอีกสองฟังก์ชัน
ความหมาย abs(x) คืนค่าสัมบูรณ์ของ x pow(x,y) คืนค่า xy

58 โปรแกรมบวกเลข # This program adds two numbers astr = input() a = int(astr) bstr = input() b = int(bstr) print("The result is",a+b)

59 การส่งค่าต่อเนื่องในฟังก์ชัน (1)
พิจารณาส่วนของโปรแกรม เราใช้ตัวแปร astr เพื่อรับสตริงจากผู้ใช้แล้วนำมาแปลงเป็นจำนวนเต็มเก็บไว้ที่ตัวแปร a เท่านั้น เราสามารถละตัวแปร astr ออกได้โดยเขียนเป็น astr = input() a = int(astr) a = int(input())

60 การส่งค่าต่อเนื่องในฟังก์ชัน (2)
พิจารณาการทำงานของส่วนของโปรแกรม a = int(input()) input() "12345" int 12345 a a = 12345

61 โปรแกรมคำนวนเงิน (ปรับปรุง)
# This program calculates total amount # of money from numbers of bank notes p1 = int(input()) sum1 = 1 * p1 p5 = int(input()) sum5 = 10 * p5 p20 = int(input()) sum20 = 20 * p20 p100 = int(input()) sum100 = 100 * p100 sum = sum1+sum5+sum20+sum100 print("The total is",sum,"bath.")

62 การระบุข้อความนำ เราสามารถระบุให้ฟังก์ชัน input แสดงข้อความนำก่อนจะอ่านข้อมูลได้ โดยส่งค่าสตริงให้กับฟังก์ชัน input x = int(input("Enter X: ")) print(x+10) Enter X: 100 110

63 มุมนักคิด มีวัตถุชิ้นหนึ่ง เคลื่อนที่จากสถาพหยุดนิ่งด้วยความเร่ง a m/s2 เป็นเวลา t วินาที เขียนโปรแกรมรับความเร่งและเวลา จากนั้นคำนวณระยะที่วัตถุเคลื่อนที่ไปได้

64 เฉลย a = float(input("Enter a: ")) t = float(input("Enter t: ")) print("Total distance =", a*t*t/2)

65 มุมนักคิด: การกระจายหน่วย
Enter length in inch: 320 It is 26 feet, 8 inch. x = int(input("Enter length in inch")) xf = int(x/12) xi = x – xf * 12 print("It is", xf, "feet,",xi,"inch.")

66 คำนวณปริมาตร คำนวณปริมาตรของทรงกระบอก r r2 x h h

67 3.141592653589793 ค่า  เราสามารถใช้ค่าประมาณ 22/7
เราอาจจะใช้ค่าคงที่ที่ละเอียดกว่าได้ ซึ่งอยู่ในโมดูล math

68 โมดูล math ภาษาไพธอนมีการแบ่งคำสั่งมาตรฐานออกเป็นกลุ่ม ๆ เป็นหมวดหมู่ เรียกว่า โมดูล (module) ก่อนใช้ต้องมีการประกาศขอใช้ก่อน ด้วยคำสั่ง import จากนั้นฟังก์ชัน รวมถึงค่าคงที่ต่าง ๆ ใน โมดูลสามารถเรียกใช้ได้โดยระบุชื่อโมดูลนำหน้า import math print("Pi is", math.pi)

69 มุมนักคิด เขียนโปรแกรมรับค่า r และ h จากนั้นคำนวณปริมาตรของทรงกระบอก r r2 x h h

70 เฉลย import math r = float(input("Enter r: ")) h = float(input("Enter h: ")) print("Volume =", math.pi*r*r*h)

71 ฟังก์ชันในโมดูล math ฟังก์ชัน ความหมาย คืนค่าสัมบูรณ์ของ x
fabs(x) คืนค่าสัมบูรณ์ของ x sin(x), cos(x), tan(x) ฟังก์ชันตรีโกณมิติของ x (มุมเป็นหน่วยเรเดียล) pi ค่าพาย e ค่า e log(x),log10(x) ค่า log ฐานธรรมชาติ, ค่า log ฐาน 10 exp(x) ค่า ex sqrt(x) รากที่สองของ x

72 ตัวอย่างการใช้ฟังก์ชันคณิตศาสตร์
การแตกแรง # อย่าลืม import math # ถ้ามุมเป็นองศา ต้องแปลงก่อน r = t * math.pi/180 fy = f * math.sin(r) fx = f * math.cos(r) # อย่าลืม import math # กรณีมุมเป็นเรเดียล fy = f * math.sin(t) fx = f * math.cos(t) t f


ดาวน์โหลด ppt นิพจน์ ตัวแปร และฟังก์ชัน

งานนำเสนอที่คล้ายกัน


Ads by Google