หน่วยที่ 1 - wordpress.com2)...

14
ตรรกะกับเซต ตรรกะกับการแก้ปัญหาด้วยคอมพิวเตอร์ 1. ตรรกะกับเซต 2. ตรรกะกับการแก้ปัญหาด้วยคอมพิวเตอร์ 1. บอกความหมายของตรรกะกับเซตได้ 2. บอกวิธีการแก้โจทย์ปัญหาด้วยคอมพิวเตอร์ได้ สาระการเรียนรู จุดประสงค์การเรียนรู หน่วยที่ 1

Upload: others

Post on 29-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกปญหาดวยคอมพวเตอร

1. ตรรกะกบเซต 2. ตรรกะกบการแกปญหาดวยคอมพวเตอร

1. บอกความหมายของตรรกะกบเซตได 2. บอกวธการแกโจทยปญหาดวยคอมพวเตอรได

สาระการเรยนร

จดประสงคการเรยนร

หนวยท 1

Page 2: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

23

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร

สาระส าคญ

การแกปญหาดวยคอมพวเตอร มกระบวนการทซบซอนตางๆมากมาย ซงผเขยนโปรแกรมตองเขาใจถงวธการทางคณตศาสตรและตรรกศาสตรเปนอยางด จงจะสามารถวเคราะหปญหาตางๆไดอยางสมเหตสมผล จนน าไปสขนตอนในการพฒนาโปรแกรมไดเปนอยางด

1. ตรรกะกบเซต

หมายถง วธการน าเอาคณตศาสตร ตรรกศาสตร มาชวยในการแกไขปญหาโจทยดวยคอมพวเตอร ประกอบดวยสวนส าคญดงน

1.1 เซต เปนค าทใช แทนกลมของสงของ จ านวน หรอสงมชวตทการกลาวถง เชน กลม กอง หม เหลา โขลง คณะ พวก ชด ฯลฯ เมอกลาวถงเซต สงทอยภายในเซตเรยกวา “สมาชกเซต” (Element) (ยพน พพธกล.2530 : 35) เชน

1. เซตของจ านวนคบวกทนอยกวา 10 สมาชกของเซตคอ 2, 4, 6 และ 8 2. เซตของสระในภาษาองกฤษ สมาชกเซต คอ a, e, i, o, และ u สญลกษณ แทนค าวา “เปนสมาชกของ” และนยมตงชอใหกบค าบอกเซต ซงชอเซตทตง

นยมใชตวอกษรภาษาองกฤษตวพมพใหญเปนชอของเซต เชน A, B, C, เปนตน กลาวคอ เซตของจ านวนคบวกทนอยกวา 10 ก าหนดใหชอเซตเปน A จะพจารณาไดวา

2 A ( อานวา 2 เปนสมาชกของเซต A ) 10 A ( อานวา 10 ไมเปนสมาชกของเซต A )

ตวอยาง 1 1. เซตของจ านวนนบทมากกวา 5 แตนอยกวา 10 2. เซตของจงหวดทขนตนดวยพยญชนะ “ข” 3. เซตของพยญชนะของค าวา “วทยาลย”

วธท า 1. เซตของจ านวนเตมทมากกวา 5 แตนอยกวา 10 สมาชกของเซต คอ 6, 7, 8, และ 9

2. เซตของจงหวดทขนตนดวยพยญชนะ “ข” สมาชกเซต คอ ขอนแกน 3. เซตของพยญชนะของคาวา “วทยาลย” สมาชกของเซต คอ ท, ย, ล และ ว

Page 3: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

24

1.1.1 การเขยนเซต การเขยนเซตใดๆ เมอก าหนดเซตโดยค าบอกเซต เราตองก าหนดชอเซตแลว

จงเขยนเซต เชน ก าหนดเซต A เปนเซตใดๆ จะเขยนเซต A ดงน A = {(สมาชกเซต)} อานวาเซต A เปนเซตซงประกอบดวยสมาชก...

ส าหรบการเขยนสมาชกเซตนยมเขยนสมาชกเซต 2 แบบดงน 1) การเขยนสมาชกเซตแบบแจกแจงสมาชกเซต (ยพน พพธกล.2530 : 36) การเขยนสมาชกเซตจะเขยนแจงสมาชกเซตในวงเลบปกกาโดยใชเครองหมาย จลภาคคนระหวางสมาชกทกสมาชก เชน A = { 2, 4, 6, 8 } อานวา เซต A เปนเซตซงประกอบดวยสมาชก 2, 4, 6 และ 8 (มจ านวนสมาชก 4 ตว)

(1) ในกรณทเซตมจ านวนสมาชกมาก แตทราบสมาชกตวเรมตน ตวสดทายและสมาชกเซตเปนระเบยบใชสญลกษณ ... แทนสมาชกทละไวในฐานทเขาใจ เชน เซตของจ านวนนบ ตงแต 1 ถง 100 สมมตใหคอ B จะได B = { 1, 2, 3…, 100 } อานวา เซต B เปนซงประกอบดวยสมาชก 1, 2, 3 และตอไปเรอย ๆ โดยละไวในฐานทเขาใจจนถง 100 (มจ านวนสมาชก 100 ตว)

(2) ในกรณเซตมจ านวนสมาชกเซตมากไมจ ากด ทราบตวเรมตน เชน เซตของจ านวนคบวก สมมตให คอ C จะได

C = { 2, 4, 6, 8, … } อานวาเซต C เปนเซตซงประกอบดวยสมาชก 2, 4, 6, 8 และตอไปเรอยๆ ไมสนสด

(3) เซตทมจ านวนสมาชกไมจ ากด ไมทราบตวเรมตนและตวสดทาย เชน เซตของจ านวนเตมทหารดวย 5 ลงตว สมมตใหคอ D จะได

D = { …, -15, -10, -5, 0, 5, 10, 15, … } อานวาเซต D เปนเซตของจ านวนเตมลบทหาร ดวย 5 ลงตว จนถง -15, -10, -5, 0, 5, 10, 15 และตอไปเรอยๆ ไมสนสด ตวอยางท 2 จงเขยนเซตตอไปนแบบแจกแจงสมาชกเซต

1. เซตของสระในภาษาองกฤษ 2. เซตของจ านวนนบคทนอยกวา 20 3. เซตของจ านวนเตมทมากกวา 5 แตนอยกวา 9 4. เซตของจงหวดทขนตนดวยพยญชนะ “ช” 5. เซตของพยญชนะของค าวา “ วทยาลย” 6. เซตของจ านวนเตมบวกทเปนเลขค

Page 4: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

25

7. เซตของจ านวนเตมทหารดวย 5 ลงตว วธท า

1. สมมตให A คอ เซตของสระในภาษาองกฤษ ได A = { a, e, i, o, u } 2. สมมตให B คอ เซตของจ านวนนบคทนอยกวา 20 ได B = { 2, 4, 6, 8, 10, 12, 14, 16, 18 } 3. สมมตให C คอ เซตของจ านวนเตมทมากกวา 5 แตนอยกวา 9 ได C = { 6, 7, 8 } 4. สมมตให D คอ เซตของจงหวดทขนตนดวยพยญชนะ “ช” ได D = { ชยภม } 5. สมมตให E คอ เซตของพยญชนะของค าวา “วทยาลย” ได E = { ท, ย, ล, ว } 6. สมมตให F คอ เซตของจ านวนเตมบวกทเปนเลขค ได F = { 1, 3, 5, …} 7. สมมตให G คอ เซตของจ านวนเตมทหารดวย 5 ลงตว จะได G = { …, -15, -10, -5, 0, 5, 10, 15, … } 2) การเขยนเซตแบบบอกเงอนไข (ยพน พพธกล.2530 : 38) การเขยนเซตแบบบอกเงอนไขตองสมมตตวแปรอยางนอย 1 ตวใหแทนสมาชก

ของเซตทกสมาชกแลวใชสญลกษณเครองหมาย “ / ” แลวตามดวยเงอนไขของสมาชก เชน สมมตให A แทน เซตซงประกอบดวยสมาชกเซต x โดยท x เปนจ านวนนบคตงแต 1-100 หมายเหต เมอนกเรยนมความเขาใจเรองระบบจ านวนมากขน อาจเขยน A ไดดงน

A = { x / x = 2y ; y I ,1 ≤ y ≤ 50 } อานวาเซต A เปนเซตซงประกอบดวยสมาชก x โดยท x เทากบ 2y เมอ y เปนจ านวนเตม และ

y มคามากกวาหรอเทากบ 1 และนอยกวาหรอเทากบ 50 ขอสงเกต

1. เซตทมจ านวนสมาชกไมมากนยมเขยนสมาชกเซตแบบแจกแจงสมาชก 2. เซตทมจ านวนสมาชกเซตไมเปนระเบยบ เชน เซตทไมใชตวเลขจะไมนยมเขยนแบบ

แจกแจงสมาชก โดยจะเขยนเซตแบบบอกเงอนไขแทน ตวอยางท 3 จากตวอยาง 2 จงเขยนเซตแบบบอกเงอนไข

1. A = { x / x คอ สระในภาษาองกฤษ } 2. B = { y / y คอ จ านวนนบคทนอยกวา 20 } หรอ B = { x / x = 2y ; yI+ y < 10 } 3. C = { z / z คอ จ านวนเตมทมากกวา 5 แตนอยกวา 99 } หรอ C = { z / z I 5 < z < 99 } 4. D = { x / x คอ จงหวดทขนตนดวยพยญชนะ “ ช” } 5. E = { x / x คอ พยญชนะของค าวา “วทยาลย” } 6. F = { x / x = 2y - 1 ; y I+} หรอ F = { x / x เปนจ านวนเตมบวกทเปนเลขค } 7. G = { x / x = 5y ; y I } หรอ G = { x / x เปนจ านวนเตมทหารดวย 5 ลงตว }

Page 5: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

26

ขอสงเกต สมาชกเซตทเปนตวอกษรภาษาองกฤษจะเขยนดวยตวพมพเลก เชน a, b, c, …

1.2 ตรรกะกบระบบคอมพวเตอร (อ าภา กลธรรมโยธน.2550:5) ภายในหนวยประมวลผลกลาง ประกอบดวยหนวยควบคมและหนวยประมวลผลทาง

พชคณตและตรรกะ ซงหนวยประมวลผลทางพชคณตและตรรกะ ประกอบดวยกระบวนการทส าคญดงน

1.2.1 ตรรกะ (Logic) หมายถง เหตผลทใชในการแกปญหาตาง ๆ เกยวกบการใชคอมพวเตอรความรทางดานตรรกะเปนพนฐานของการท าความเขาใจเกยวกบการท างานของคอมพวเตอร เนองจากทงระบบซอฟตแวรและฮารดแวรจะท างานสมพนธกบความรทางดานตรรกะดงนน ผเขยนโปรแกรมหรอท างานรวมกบระบบคอมพวเตอร จงตองท าความเขาใจกบความรทางดานตรรกะ 1.2.2 ตวด าเนนการ (Operator) คอ สญลกษณทใชแทนการกระท าอยางใดอยางหนงทกระท ากบคาขอมลหนงหนวย หรอมากกวากได คาขอมลในทนเรยกวา ตวถกด าเนนการ (Operand) ซงเปนไดทง ตวแปร (variable) และ คาคงท (constant) นพจน (expression) (ปญญาพล หอระตะ.2545:64)

1.2.3 นพจน (Expression) คอ กลมของตวถกด าเนนการทน ามากระท ากน โดยใชตวด าเนนการหรอเครองหมายการกระท าในการเชอมตวถกด าเนนการแตละตวเขาดวยกนตวถกด าเนนการอาจจะอยในลกษณะของคาคงทหรอตวแปร

1.2.4 ล าดบของการกระท าของเครองหมายในนพจน นพจนสามารถประกอบดวย ตวถกด าเนนการหลายตว โดยใชตวด าเนนการมากกวาหนงตวด าเนนการ ล าดบของการกระท าหรอการค านวณของเครองหมายการกระท าของนพจน จะท าการค านวณตามล าดบของความส าคญ ของเครองหมาย จากล าดบความส าคญสงสดไปถงต าสด ล าดบความส าคญของตวด าเนนการมล าดบดงน

1. การกระท าภายในเครองหมายวงเลบ

2. NOT, เครองหมายตดลบ

3. AND,*, / ,DIV,MOD

4. OR,+,-

5. เครองหมายการกระท าเปรยบเทยบ

Page 6: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

27

กรณทนพจนประกอบไปดวยตวด าเนนการทความส าคญเทากน ล าดบของการกระท าจะกระท าตวด าเนนการทพบกอนจากซายไปขวา การเขยนตวด าเนนการหรอเครองหมายการกระท าหามเขยนสองเครองหมายตดกน

1.2.5 ตวด าเนนการทางคณตศาสตร ตวด าเนนการหรอเครองหมายการกระท าทางคณตศาสตรในระบบคอมพวเตอร มตวด าเนนการ ดงตอไปน (ดอนสน ปงผาบ.2543:35) + การบวก

- การลบ * การคณ / การหาร

% การหารโดยคดเฉพาะเศษ ++ เพมคาขน 1 - - ลดคาลง 1 เครองหมายการกระท าทางคณตศาสตร ส าหรบการคณ การหาร โดยคดเฉพาะจ านวนเตมและการหารโดยคดเฉพาะเศษ ตองใชตวถกด าเนนการจ านวน 2 ตวส าหรบใชในการกระท า ส าหรบเครองหมายบวกและเครองหมายลบ สามารถใชไดกบท งตวถกตวด าเนนการจ านวน 1 หรอ 2 ตว ตวอยางของกรณทตวถกด าเนนการจ านวน 2 ตว เชน 3 + 1 , 8 – 2 เปนตน กรณทตวถกด าเนนการ 1 ตว เชน +3, -5 เปนตน ใชในกรณส าหรบตองการบอกวา คานนมคาบวกหรอคาลบ

1.2.6 ตวด าเนนการทางตรรกศาสตร หรอเครองหมายการกระท าทางตรรกศาสตรในระบบคอมพวเตอรมตวด าเนนการทางตรรกศาสตรดงตอไปน OR การกระท า “หรอ”

AND การกระท า “และ” NOT การกระท า “นเสธ”

ตวด าเนนการทางตรรกศาสตร “OR” และ “AND” ใชส าหรบบอกการกระท าทางตรรกะระหวางตวถกด าเนนการทเปนขอมลชนดตรรกศาสตรจ านวน 2 ตว ส าหรบตวด าเนนการ “NOT” ใช ตวถกด าเนนการทเปนขอมลทางตรรกศาสตรจ านวน 1 ตว ผลลพธทไดจากการกระท าทางตรรกศาสตรจะเปนขอมลชนดตรรกศาสตร

ตารางท 2-1 แสดงผลทไดจากการกระท าทางตรรกะ (อ าภา กลธรรมโยธน.2550:6)

คาของตวแปร X คาของตวแปร Y NOT (X) X AND Y X OR Y TRUE TRUE FALSE TRUE TRUE

Page 7: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

28

TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE TRUE FALSE FALSE

1.2.7 ตวด าเนนการเปรยบเทยบ หรอเครองหมายเปรยบเทยบในระบบคอมพวเตอร ม ตวด าเนนการดงตอไปน (ปญญาพล หอระตะ.2545:18) = เครองหมาย เทากบ

> เครองหมาย มากกวา < เครองหมาย นอยกวา >= เครองหมาย มากกวาหรอเทากบ <= เครองหมาย นอยกวาหรอเทากบ <> เครองหมาย ไมเทากบ

ตวด าเนนการหรอเครองหมายเปรยบเทยบ ใชส าหรบการเปรยบเทยบคาระหวางตวถกด าเนนการ 2 ตว ผลทไดจากการเปรยบเทยบออกมาเปนผลทางตรรกศาสตร คอ เปนจรง หรอเปนเทจ เทานน

1.2.8 นพจนทางคณตศาสตร คอ นพจนทใชตวด าเนนการหรอเครองหมายการกระท าทางคณตศาสตร เปนตวบอกการกระท าของตวถกด าเนนการ ตวถกด าเนนการท ใชในนพจนทางคณตศาสตรจะเปนขอมลทเปนตวเลข อาจจะเปนตวเลขทเปนคาคงทหรอตวแปร ผลลพธทไดจากนพจนทางคณตศาสตรจะออกมาเปนขอมลตวเลข

ตวอยางท 3.1 จากนพจนทางคณตศาสตร 3+10/5*4 ผลลพธทไดจากนพจนน คอ นพจนทางคณตศาสตร นพจนทางคณตศาสตรในคอมพวเตอร น า 10 หารดวย 5 = 3 + 2 * 4 น าผลทไดจากการคณดวย 4 = 3 + 8 น าผลทไดจากการคณบวกดวย 3 = 11 ผลลพธทไดจากนพจนน คอ 11

ตวอยาง 3.2 จากนพจนทางคณตศาสตร 3 + 10 / (5*4) ผลลพธทไดจากการกระท า คอ จากนพจน ล าดบของการกระท าคอ น า 5 คณดวย 4 = 3 + 10 / 20 น าผลทไดจากการคณไปหาร 10 = 3 + 0.5

Page 8: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

29

น าผลทไดจากการหารบวกดวย 3 = 3.5 ผลลพธทไดจากนพจนน คอ 3.5

1.2.9 นพจนทางตรรกศาสตร คอ นพจนทใชตวด าเนนการหรอเครองหมายการกระท าทางตรรกศาสตรใชในการเปรยบเทยบ เปนตวบอกการกระท าของตวด าเนนการ ตวถกด าเนนการทใชในนพจนทางตรรกศาสตร ถาตวด าเนนการทางตรรกศาสตร ตวถกด าเนนการจะเปนขอมลทเปนขอมลทางตรรกศาสตร ถาตวด าเนนการเปนการเปรยบเทยบ ตวถกด าเนนการจะเปนขอมลทเปนตวเลข โดยตวถกด าเนนการเปนไดทงตวเลขและคาคงท ผลลพธทไดจากนพจนทางตรรกศาสตร คอ เปนจรงหรอเปนเทจเทานน นพจนทางตรรกศาสตรน ามาใชในสวนของซอฟตแวร กรณทใชเปนเงอนไขส าหรบการตดสนใจในการท างานวา จะเลอกท าค าสงใดเปนค าสงถดไปหรอยอนกลบไปท าในค าสงใด

ตวอยางท 3.3 จากนพจน ( 3 > 5) and (2<10) or (4 <0) ผลลพธจากนพจนน คอ ล าดบของการกระท าของนพจน เปนดงน (3 > 5) and (2 < 10) or (4 < 0) = False and True or False = False or False = False ผลลพธทไดจากนพจนน คอ False

ตวอยางท 3.4 จากนพจน (3 > 5) and ((2<10) or (4 <0)) ผลลพธจากนพจนน คอ ล าดบของการกระท าของนพจน เปนดงน (3 > 5) and ((2 < 10) or (4 < 0)) = False and (True or False) = False and True = False ผลลพธทไดจากนพจนน คอ False

1.2.10 ตรรกะกบซอฟตแวร การน าตรรกะมาใชกบการเขยนโปรแกรม ใชส าหรบกรณ ทตองการใหการท างานของโปรแกรมเลอกท างานตามทตองการ หรอท างานใหเหมาะสมกบขอมล

ในขณะนน ขอมลตรรกะจะใชเปนเงอนไขทใชในการตรวจสอบวาเปนจรงหรอเปนเทจ เพอน าไปใชส าหรบเลอกลกษณะการท างานของซอฟตแวร ลกษณะการน าตรรกะไปใชงานรวมกบการเขยนโปรแกรมสามารถแสดงไดดงน

การน าตรรกะไปใชรวมกบซอฟตแวรส าหรบการเลอกท างาน โดยใชตรรกะเปนเงอนไขทใชส าหรบการตรวจสอบการเลอกท า ถาผลทไดจากการกระท าทางตรรกะเปนจรงจะเลอกท างาน

Page 9: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

30

ภาพท 2-2 ตรรกะกบซอฟตแวรส าหรบการท างานแบบวนรอบ

(ทมา : อรรณพ ทองธรกล.2555)

Y

N

Y

N

อยางหนง แตถาผลทไดจากการกระท าทางตรรกะเปนเทจจะเลอกท างานในอกลกษณะหนง ดงภาพท 2-1

การน าตรรกะไปใชรวมกบซอฟตแวรส าหรบการท างานแบบวนรอบโดยใชตรรกะเปนเงอนไขทใชส าหรบการทดสอบการวนรอบการท างานจะม 2 ลกษณะ คอ ทดสอบเงอนไขกอนการวนรอบ และอกกรณหนง คอ วนรอบกอนจงทดสอบเงอนไข

Input Sex

Sex =’m’ You are Male

You are Female

ภาพท 2-1 ตรรกะกบซอฟตแวรส าหรบการเลอกท างาน (ทมา : อรรณพ ทองธรกล.2555)

sum < 30000

i = i + 1,

sum = sum + i

i , sum

Stop

Start

i=0 , sum=0

Start

Stop

Page 10: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

31

2. ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร (ปญญาพล หอระตะ.2545:11)

การแกโจทยปญหาดวยคอมพวเตอร คอ การน าขนตอนการพฒนาโปรแกรม ขนตอนท 1 การนยามปญหา ขนตอนท 2 การวเคราะหปญหา ขนตอนท 3 การออกแบบอลกอรธมหรอออกแบบขนตอนวธแกปญหา ขนตอนท 4 การพฒนาโปรแกรมเพอน ามาประยกตใชท าใหผเรยนไดรบการฝกฝนอยางมระบบ มกระบวนการในการวเคราะหและออกแบบพฒนาโปรแกรมตอไป

หลกการและขนตอนการแกปญหาโจทยดวยคอมพวเตอร มดงน 2.1 สงทโจทยตองการ วเคราะหหาวา โจทยตองการอะไรเขยนเปนรายขอวา งานทตองการใหคอมพวเตอรท ามอะไรบาง 2.2 รปแบบของผลลพธ วเคราะหรปแบบของรายงานทตองการใหคอมพวเตอรแสดงผล มรปแบบอยางไร มรายละเอยดอะไรบาง 2.3 ขอมลน าเขา พจารณาวา ควรมขอมลน าเขาอะไรบาง โดยพจารณาจากรปแบบผลลพธและขนตอนการประมวลผล 2.4 ตวแปรทใชเพอความสะดวกในการอางถงขอมลในการเขยนโปรแกรม ควรตงชอตวแปรใหเขาหลกเกณฑของภาษาคอมพวเตอรนนๆ 2.5 การประมวลผล เพอแสดงล าดบกอนหลงในการท างานของโปรแกรม ผเขยนโปรแกรมจะตองรถงกระบวนการท างานตงแตรบขอมลเขา การประมวลผล และการแสดงผลลพธตามทตองการ

ตวอยางท 4 ตองการหาพนทของรปสเหลยมผนผา โดยก าหนดดานกวางและดานยาว วธท า 1. สงทโจทยตองการ พนทของรปสเหลยมผนผา 2. รปแบบของผลลพธทตองการ ขนาดของพนทมคาเปนตารางหนวย 3. ขอมลน าเขา ขนาดของความกวาง ขนาดของความยาว 4. ตวแปรทใช width : ขนาดของความกวาง

i , sum

Page 11: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

32

length : ขนาดของความยาว area : ขนาดของพนท 5. วธประมวลผล 5.1 รบคา width, length 5.2 ค านวณ area = width * length 5.3 พมพผลลพธ width, length, area 5.4 หยดการท างาน

ตวอยางท 5 บรษทตองการหาจ านวนเงนเดอนของพนกงานแตละคน หลงจากหกภาษและเงนรวมของพนกงานทงหมด โดยคดภาษตามเงอนไข ดงน ถาเงนเดอนไมเกน 10,000 บาท ไมตองหกภาษ ถาเงนเดอนสวนท 10,001-15,000 บาท หกภาษ 5% ของเงนเดอนสวนทเกน 10,000 ถาเงนเดอนสวนท 15,001-20,000 บาท หกภาษ 10% ของเงนเดอนสวนทเกน 15,000 ถาเงนเดอนสวนตงแต 20,001 บาท หกภาษ 15% ของเงนเดอนสวนทเกน 20,000 วธท า 1. สงทโจทยตองการ 1.1 ค านวณเงนเดอนทพนกงานแตละคนไดรบหลงจากหกภาษ 1.2 ค านวณเงนรวมของพนกงานทงหมด 2. รปแบบของผลลพธทตองการ 2.1 รหสพนกงาน ชอพนกงาน เงนเดอน ภาษ เงนสทธ 2.2 เงนรวมของพนกงานทงหมด 3. ขอมลน าเขา 3.1 รหสพนกงาน 3.2 ชอพนกงาน 3.3 เงนเดอน 4. ตวแปรทใช 4.1 i : ตวนบจ านวนพนกงานแตละคน 4.2 n : จ านวนพนกงานทงหมด 4.3 id : รหสพนกงาน 4.4 name : ชอพนกงาน 4.5 sal : เงนเดอน

Page 12: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

33

4.6 tax : ภาษ 4.7 net : เงนสทธของพนกงานแตละคน 4.8 sum : เงนรวมพนกงานทงหมด

5. วธการประมวลผล 5.1 ก าหนดคาเรมตนใหตวนบจ านวนคน และ เงนรวม เปน 0 ( i = 0, sum = 0) 5.2 รบคา n 5.3 รบคา id, name, sal 5.4 เงอนไข sal < 10,000 tax = sal * 0 sal <= 15,000 tax = (sal-10,000) * 5% sal <= 20,000 tax = (sal-15,000) * 10%+250 sal > 20,000 tax = (sal-20,000) * 15%+750 5.5 net = sal – tax 5.6 sum = sum + net 5.7 i = i + 1 5.8 พมพ i, name, sal, tax, net 5.9 เปรยบเทยบ ถา i < n ใหกลบไปท าขอ 5.3 5.10 พมพคา sum 5.11 หยดการท างาน

ตวอยางท 6 จงวเคราะหโจทยเพอหาผลรวมและคาเฉลยของเลขจ านวนนบจาก 1 – n วธท า 1. สงทโจทยตองการ ผลรวมและคาเฉลยของเลขจ านวนนบจาก 1 – n 2. รปแบบของผลลพธทตองการ sum of 1 – n = ****** avg = ****** 3. ขอมลน าเขาตวเลข n 4. ตวแปรทใช 4.1 i = ตวนบจ านวนรอบการท างาน 4.2 sum = ผลรวม 4.3 avg = คาเฉลย 5. วธการประมวลผล

Page 13: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

34

5.1 ก าหนดคาเรมตนใหตวนบจ านวนรอบการท างานและ ผลรวมเปน 0 (i = 0,sum = 0) 5.2 ก าหนดคาคงทใหกบ n (เลขจ านวนนบจาก 1 – n) 5.3 ค านวณ i = i + 1 5.4 ค านวณ sum = sum + i 5.5 พมพคา i,sum 5.6 เปรยบเทยบวา ถา i < n ใหกลบไปท าขอ 5.3 5.7 ค านวณหาคาเฉลย avg = sum / n 5.8 พมพผลรวม,คาเฉลย sum of 1 – n = ****** avg = ****** 5.9 หยดการท างาน

ตวอยางท 7 จงวเคราะหโจทยเพอคดเกรดของนกเรยน ชน ปวช. 2 ซงมขอมลน าเขา ดงน จ านวนนกเรยน ชอนกเรยน คะแนนสอบกลางภาค คะแนนสอบปลายภาค น าคะแนนรวม มาตดเกรดตามเงอนไขดงน ถาคะแนนรวม ตงแต 80 ขนไป ไดเกรด 4 ถาคะแนนรวมตงแต 75 ขนไป ไดเกรด 3.5 ถาคะแนนรวมตงแต 70 ขนไป ไดเกรด 3 ถาคะแนนรวมตงแต 65 ขนไป ไดเกรด 2.5 ถาคะแนนรวมตงแต 60 ขนไป ไดเกรด 2.0 ถาคะแนนรวมตงแต 55 ขนไป ไดเกรด 1.5 ถาคะแนนรวมตงแต 50 ขนไป ไดเกรด 1 ถาคะแนนต ากวา 50 ลงมา ไดเกรด 0 วธท า 1. สงทโจทยตองการ คอ เกรดของนกเรยนแตละคน 2. รปแบบของผลลพธทตองการ ตารางท 2-2 คะแนนสอบของนกเรยน ชน ปวช. 2

Code Name Midterm Final Total Grade 5530001 Somsak 39 47 86 4 5530002 Baulai 35 34 69 2.5

3. ขอมลน าเขา 3.1 จ านวนนกเรยน 3.2 รหสของนกเรยนแตละคน

Page 14: หน่วยที่ 1 - WordPress.com2) การเขียนเซตแบบบอกเงื่อนไข (ยุพิน พิพิธกุล.2530 : 38) การเขียนเซตแบบบอกเงื่อนไขต้องสมมติตวัแปรอย่างนอ้ย

ตรรกะกบเซต ตรรกะกบการแกโจทยปญหาดวยคอมพวเตอร โดย อรรณพ ทองธรกล

35

3.3 คะแนนสอบกลางภาค 3.4 คะแนนสอบปลายภาค 4. ตวแปรทใช 4.1 n = จ านวนนกเรยน 4.2 i = ตวนบจ านวนนกเรยนในแตละรอบ 4.3 code = รหสนกเรยน 4.4 name = ชอนกเรยน 4.5 midterm = คะแนนสอบกลางภาค 4.6 final = คะแนนสอบปลายภาค 4.7 total = คะแนนรวม 4.8 grade = เกรดของนกเรยนแตละคน 5. วธการประมวลผล 5.1 ก าหนดคาเรมตนให i เปน 0 5.2 รบคา n ซงหมายถง จ านวนนกเรยนทงหมด 5.3 รบ code , name , midterm , final ซงหมายถง รหส ชอ คะแนนสอบของแตละคน 5.4 ค านวณหาคะแนนรวม total = midterm + final 5.5 ตดเกรดตามเงอนไข ถา total ตงแต 80 ขนไป ได grade = 4 ถา total ตงแต 75 ขนไป ได grade = 3.5 ถา total ตงแต 70 ขนไป ได grade = 3 ถา total ตงแต 65 ขนไป ได grade = 2.5 ถา total ตงแต 60 ขนไป ได grade = 2.0 ถา total ตงแต 55 ขนไป ได grade = 1.5 ถา total ตงแต 50 ขนไป ได grade = 1 ถา total ต ากวา 50 ลงมา ได grade = 0 5.6 แสดงผล code , name , midterm , final , total , grade ของแตละคน 5.7 i = i + 1 เพมคาของ i รอบละ 1 หมายถง การเพมคาเขามารอบละคน 5.8 เปรยบเทยบ ถา i < n ใหกลบไปท าขอ 3 ถา i >= n ใหท าขอ 9 5.9 หยดการท างาน