67
บทท บทท 2 2 นตอนลดบควมคด นตอนลดบควมคด และกรแกปญหทง และกรแกปญหทง คอมพวเตอร คอมพวเตอร . . วราวฒ แขงขน วราวฒ แขงขน มหาวทยาลยราชภฏสวนดสต ศนยพษณโลก มหาวทยาลยราชภฏสวนดสต ศนยพษณโลก

Algorithm Flowchart

  • Upload
    warawut

  • View
    2.176

  • Download
    3

Embed Size (px)

DESCRIPTION

ขั้นตอนลำดับความคิดและการแก้ปัญหาทางคอมพิวเตอร์

Citation preview

บทท�� บทท�� 22ข��นตอนล �ด�บคว�มค�ดข��นตอนล �ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งและก�รแก�ป�ญห�ท�ง

คอมพ�วเตอร คอมพ�วเตอร

ออ..วราว�ฒ� แข�งข นวราว�ฒ� แข�งข นมหาว�ทยาล ยราชภ ฏสวนด�ส�ต ศ�นย�พ�ษณ�โลกมหาว�ทยาล ยราชภ ฏสวนด�ส�ต ศ�นย�พ�ษณ�โลก

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 2

ก�รท �ง�นของระบบคอมพ�วเตอร ก�รท �ง�นของระบบคอมพ�วเตอร

InputInput Process Output

หล�กการเขยนโปรแกรม (ท�กภาษา) ก�เช�นก�นเพยงแต�เราต�องสร�างล�าด�บเหต�การณ"ต�างๆ

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 3

ก�รว�เคร�ะห ก�รแก�ป�ญห�ท�งก�รว�เคร�ะห ก�รแก�ป�ญห�ท�งคอมพ�วเตอร คอมพ�วเตอร

ม� 3 ข�นตอน ค%อ ● ว�เคร�ะห!ผลล�พธ! (Output)● ว�เคร�ะห!ข�อม(ลน��เข�� (Input)● ว�เคร�ะห!กระบวนก�รแก�ป�ญห�หร%อก�รประมวลผล

ข�อม(ล (Process)

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 4

ว�เคร�ะห ผลล�พธ ว�เคร�ะห ผลล�พธ (Output)(Output)

● เป)นข�นตอนแรก● พ�จ�รณ�จ�กโจทย!● ต.ย. จงห�ผลล�พธ!จ�กก�รบวกเลข 2 จ��นวน

– Output ค%อ ผลล�พธ!● ต.ย. จงห�ผลรวมและค.�เฉล��ยจ�กต�วเลข 10 จ��นวน

– Output ค%อ ผลรวม และค.�เฉล��ย

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 5

ว�เคร�ะห ข�อม#ลน �เข�� ว�เคร�ะห ข�อม#ลน �เข�� (Input)(Input)

● พ�จ�รณ�ข�อม(ลท��เก��ยวข�อง หร%อจ�กโจทย!ท��ก��หนด● ต.ย. จงห�ผลล�พธ!จ�กก�รบวกเลข 2 จ��นวน

– Input ค%อ ต�วเลข 2 จ��นวน● ต.ย. จงห�ผลรวมและค.�เฉล��ยจ�กต�วเลข 10 จ��นวน

– Input ค%อ ต�วเลข 10 จ��นวน

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 6

ว�เคร�ะห กระบวนก�รแก�ป�ญห�หร$อว�เคร�ะห กระบวนก�รแก�ป�ญห�หร$อก�รประมวลผลข�อม#ล ก�รประมวลผลข�อม#ล (Process)(Process)

● เป)นข�นตอนส1ดท��ย● เป)นล��ด�บข�นตอนก�รท��ง�น โดยน�� Input และ

Output ม�ใช�● อ�ศ�ยหล�กก�รท��ง�นของระบบคอมพ�วเตอร!

InputInput Process Output

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 7

ว�เคร�ะห กระบวนก�รแก�ป�ญห�หร$อว�เคร�ะห กระบวนก�รแก�ป�ญห�หร$อก�รประมวลผลข�อม#ล ก�รประมวลผลข�อม#ล (Process)(Process)

● ต.ย. จงห�ผลล�พธ!จ�กก�รบวกเลข 2 จ��นวน– Process ค%อ ต�วเลขแรก + ต�วเลขท�� 2

● ต.ย. จงห�ผลรวมและค.�เฉล��ยจ�กต�วเลข 10 จ��นวน– Input ค%อ ต�วเลขแรก + ต�วเลขท�� 2 + … + ต�วเลขท��

10

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 8

ก�รจ�ดเก&บข�อม#ลในระบบก�รจ�ดเก&บข�อม#ลในระบบคอมพ�วเตอร คอมพ�วเตอร

● สร��งต�วแปรในก�รจ�ดเก5บข�อม(ล● ช%�อต�วแปร ควรจะส%�อส�รให�เข��ใจ● ต.ย. จงห�ผลล�พธ!จ�กก�รบวกเลข 2 จ��นวน

– Input ค%อ ต�วเลข 2 จ��นวน– Variable ค%อ number1, number2

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 9

ต�วด �เน�นก�ร ต�วด �เน�นก�ร (Operator)(Operator)

● Assign Operator● Arithmetic Operator● Compare Operator● Logic Operator

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 10

Assign OperatorAssign Operator

● ใช�เคร%�องหม�ย =● ใช�ก��หนดค.�ให�ก�บต�วแปร โดยน��ค.�ท��ได�จ�กท�ง

ด��นขว�ม�เก5บไว�ท�งด��นซ��ย (ต�วแปร)● ต.ย.

Number = 10 หม�ยถ9ง น��ค.� 10 ม�จ�ดเก5บไว�ต�วแปร Number

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 11

Arithmetic OperatorArithmetic Operator

● ใช�เคร%�องหม�ย +, -, *, /● ใช�ในก�รค��นวณ● ต.ย.

n = n + 1หม�ยถ9ง น�� (n + 1) ม�เก5บไว�ท��ต�วแปร n

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 12

ก�รค��นวณในระบบคอมพ�วเตอร!

ก�รค �นวณท��วไป● 5 + 3 * 2 = ?

ระบบคอมพ�วเตอร ● 5 + 3 * 2 = ?

16 30

ความแตกต�าง ค&อ ระบบคอมพ(วเตอร"ให�ล�าด�บความส�าค�ญของเคร&+องหมาย

ส�วนการค�านวณท�+วไปจะเรยงล�าด�บจากซ�ายไปขวา

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 13

Priority Arithmetic OperatorPriority Arithmetic Operator

1. เคร%�องหม�ย ( ) เป)นล��ด�บส(งส1ด

2. เคร%�องหม�ย * และ /3. เคร%�องหม�ย + และ - เป)นล��ด�บต���ส1ด

ถ�ามเคร&+องหมาย ( ) ซ�อนก�น ให�ท�าข�างในก�อนถ�าล�าด�บความส�าค�ญเท�าก�น ให�ท�าจากซ�ายไปขวา

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 14

Example Priority Arithmetic Example Priority Arithmetic OperatorOperator

● A + B + C(1) ==> A + B(2) ==> (1) + C

● A * B + C(1) ==> A * B(2) ==> (1) + C

● A + B * C(1) ==> B * C(2) ==> A + (1)

● (A + B) * C(1) ==> A + B(2) ==> (1) * C

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 15

Compare OperatorCompare Operator

● ใช�เคร%�องหม�ย =, <>, >, >=, <, <=● ใช�เปร�ยบเท�ยบระหว.�ง 2 ค.� หร%อต�วแปร ผลล�พธ!ท��

ได�ม�ค.�จร�ง (True) และค.�เท5จ (False) เท.�น�น● ระว�งเร%�องของเง%�อนไขในก�รเปร�ยบเท�ยบ

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 16

Example Compare OperatorExample Compare Operator

Operator Action Result= A = B FALSE

<> A <> B TRUE> A > B TRUE

>= A >= B TRUE< A < B FALSE

<= A <= B FALSE

A = 10 และ B = 5

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 17

Logic OperatorLogic Operator

● ใช�ค�� and, or, xor, not● ใช�ในก�รเช%�อมเง%�อนไขในก�รเปร�ยบเท�ยบท��ม�กกว.�

2 ข9นไป ใช� and, or, xor● not เป)นส.วนกล�บของค.�ท��ได�● ระว�งเร%�องของเง%�อนไขในก�รเปร�ยบเท�ยบ

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 18

Example Logic OperatorExample Logic OperatorA B A and B A or B A xor B not A not BT T T T F F FT F F T T F TF T F T T T FF F F F F T T

m n m and n m or n m xor n(A > D) (B = C) F F F(A > B) (C = D) F T T

(A >= B) (C <= D) T T F

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 19

ร#ปแบบก�รประมวลผลร#ปแบบก�รประมวลผล

ม� 3 ร(ปแบบ ด�งน�● แบบเร�ยงล��ด�บ (Sequential)● แบบก�รต�ดส�นใจ (Decision) ● แบบท��ซ�� (Repetition)

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 20

แบบเร�ยงล �ด�บ แบบเร�ยงล �ด�บ (Sequential)(Sequential)

● เร�ยงล��ด�บก.อนและหล�งก�รท��ง�น● เร�ยงจ�กบนลงล.�ง หร%อจ�กซ��ยไปขว�

ต(ดเคร&+องยนต"

ออกเด(นทาง

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 21

แบบก�รต�ดส�นใจ แบบก�รต�ดส�นใจ (Decision) (Decision)

● ก�รเล%อกท�ศท�ง/เส�นท�งในก�รท��ง�น● ใช�ในก�รตรวจสอบค.�ต.�งๆ● ใช�แบบก�รเร�ยงล��ด�บร.วมด�วย

โลต สขนส�ง

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 22

แบบท �ซ� � แบบท �ซ� � (Repetition)(Repetition)

● ก�รท��ง�นซ�� จนกว.�จะต�ดส�นใจว.�ใช.หร%อไม.● ใช�แบบก�รเร�ยงล��ด�บร.วมด�วย

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 23

ก�รน �เสนอข��นตอนว�ธ�ก�รก�รน �เสนอข��นตอนว�ธ�ก�ร

น�ยม 2 ว�ธ� ค%อ● ซ(โดโค�ด / รห�สจ��ลอง (Pseudo Code)● ผ�งง�น (Flowchart)

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 24

Pseudo CodePseudo Code

● เป)นก�รอธ�บ�ยข�นตอนก�รท��ง�นของโปรแกรม โดยล�กษณะก�รเข�ยนเป)นก�รผสมผส�นระหว.�งถ�อยค��ท��เป)นภ�ษ�อ�งกฤษและภ�ษ�ก�รเข�ยนโปรแกรมแบบโครงสร��ง

● อ�จใช�ภ�ษ�ไทยก5ได� แต.น�ยมใช�ภ�ษ�อ�งกฤษ● Pseudo Code บ�งคร�งเร�ยกว.� Algorithm

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 25

Format Pseudo CodeFormat Pseudo Code

Algorithm <algorithm name>1. ..........2. ..........3. ....................End

แบบเร�ยงล �ด�บ แบบเร�ยงล �ด�บ (Sequential)(Sequential)

บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 27

Algorithm Algorithm ในช�ว�ตประจ �ว�นในช�ว�ตประจ �ว�น

Algorithm ล��งรถ

1. ป�ดฝ1?นรถ

2. ฉ�ดน��ล��งรถ

3. ผสมแชมพ(ล��งรถ

4. น��ฟองน��ช1บน��แชมพ(เช5ดท��คว�มรถ

5. ฉ�ดน��ล��งน��แชมพ(

6. ใช�ผ��ช�ม�วร!เช5ดน��ให�แห�ง

End

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 28

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงห�ผลรวมของต�วเลข 2 จ��นวน

Output● ผลรวมของต�วเลข 2 จ��นวน

Input● จ��นวนต�วเลข 2 จ��นวน

Process● ห�ผลรวมของต�วเลข 2 จ��นวน

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 29

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงห�ผลรวมของต�วเลข 2 จ��นวน (ต.อ)Variable● result ค%อ ผลรวมของต�วเลข 2 จ��นวน● num1 ค%อ ต�วเลขต�วท�� 1● num2 ค%อ ต�วเลขต�วท�� 2

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 30

Algorithm Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm ห�ผลรวมของต�วเลข 2 จ��นวน

1. ก��หนดให� num1 ม�ค.�เท.�ก�บ 102. ก��หนดให� num2 ม�ค.�เท.�ก�บ 203. น�� num1 บวกก�บ num2 เก5บไว�ท�� result4. แสดงผลล�พธ!ของ resultEnd

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 31

<or> Algorithm <or> Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm ห�ผลรวมของต�วเลข 2 จ��นวน

1. num1 = 102. num2 = 203. result = num1 + num24. Display resultEnd

แบบก�รต�ดส�นใจ แบบก�รต�ดส�นใจ (Decision) (Decision)

บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 33

Algorithm Algorithm ในช�ว�ตประจ �ว�นในช�ว�ตประจ �ว�น

Algorithm ก�รชงก�แฟ

1. เตร�ยมถ�วยก�แฟ

2. ใส.ก�แฟและน��ต�ล

3. ต�องก�รเต�มคร�มเท�ยมหร%อไม. ถ��เต�ม ท��ข�อ 3.1 3.1 เต�มคร�มเท�ยม

4. คนให�เข��ก�น

5. ร�บประท�น

End

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 34

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงแสดงผลล�พธ!ของต�วเลขเป)นเลขค(.หร%อเลขค��

Output● แสดงข�อคว�ม “เลขค(.” หร%อ “เลขค��”

Input● จ��นวนต�วเลข 1 จ��นวน

Process● เปร�ยบเท�ยบค.�จ��นวนต�วเลขท��ได�ห�รด�วย 2

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 35

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงแสดงผลล�พธ!ของต�วเลขเป)นเลขค(.หร%อเลขค�� (ต.อ)Variable● n ค%อ จ��นวนต�วเลข 1 จ��นวน

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 36

Algorithm Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm แสดงผลล�พธ!ของต�วเลขเป)นเลขค(.หร%อเลขค��

1. ร�บค.�จ�กแปCนพ�มพ! ม�เก5บไว�ในต�วแปร n2. ถ�� n ห�รด�วย 2 2.1 ห�รด�วย 2 ลงต�ว แสดงข�อคว�ม “เลขค(.”

2.2 ห�รด�วย 2 ไม.ลงต�ว แสดงข�อคว�ม “เลขค��”

End

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 37

<or> Algorithm <or> Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm แสดงผลล�พธ!ของต�วเลขเป)นเลขค(.หร%อเลขค��

1. Input n2. if n / 2 2.1 Equal zero display even number 2.2 Not equal zero display odd numberEnd

แบบท �ซ� � แบบท �ซ� � (Repetition)(Repetition)

บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 39

Algorithm Algorithm ในช�ว�ตประจ �ว�นในช�ว�ตประจ �ว�น

Algorithm เหล�ด�นสอ

1. น��ม�ดเหล�ด�นสอ

2. ด�นสอย�งไม.แหลมใช.หร%อไม. ถ��ใช. ท��ข�อ 2.1 ถ��ไม.

ใช.ท��ข�อ 3 2.1 เหล�ด�นสอ

2.2 กล�บไปท��ข�อ 23. ด�นสอแหลมเร�ยบร�อยแล�ว

End

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 40

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงห�ผลรวมของต�วเลข 1-10Output● ผลรวมของต�วเลข 1-10Input● ล��ด�บของจ��นวนต�วเลข 1-10Process● น��จ��นวนต�วเลขบวกรวมก�น ด�งน� 1+2+...+10

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 41

ตต..ยย. Algorithm . Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

จงห�ผลรวมของต�วเลข 1-10 (ต.อ)Variable● n ค%อ จ��นวนต�วเลข 1 จ��นวน● sum ค%อ ผลรวมของต�วเลข 1-10

42

Algorithm Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm ห�ผลรวมของต�วเลข 1-10

1. ก��หนดให� n ม�ค.�เท.�ก�บ 1

2. ก��หนดให� sum ม�ค.�เท.�ก�บ 0

3. ถ�� n น�อยกว.� 11 เป)นจร�งท��ข�อ 3.1 เป)นเท5จท��ข�อ 4

3.1 ให� sum บวกก�บ n เก5บไว�ท�� sum

3.2 เพ��มค.� n อ�ก 1 ค.�

3.3 กล�บไปท��ข�อ 3

4. แสดงผลล�พธ!ของ sumEnd

บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 43

<or> Algorithm <or> Algorithm ระบบคอมพ�วเตอร ระบบคอมพ�วเตอร

Algorithm ห�ผลรวมของต�วเลข 1-101. n = 12. sum = 03. if n < 11 then 3.1 else 4 3.1 sum = sum + n 3.2 n = n + 1 3.3 go to 34. Display sumEnd

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 44

FlowchartFlowchart

● เป)นเคร%�องม%อในแสดงก�รท��ง�นของคอมพ�วเตอร! ● ไม.ย9ดต�ดก�บไวย�กรณ! (Syntax) ของภ�ษ�

คอมพ�วเตอร!● ใช�ส�ญล�กษณ! (Symbol) แทนก�รอธ�บ�ยล��ด�บ

ข�นตอน

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 45

ประโยชน ของผ�งง�นประโยชน ของผ�งง�น

● มองเห5นร(ปแบบก�รท��ง�นได�ท�งหมด● น��ไปเข�ยนช1ดค��ส��งของภ�ษ�คอมพ�วเตอร!● ตรวจสอบข�อผ�ดพล�ดของโปรแกรม

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 46

ร#ปแบบก�รเข�ยนผ�งง�นร#ปแบบก�รเข�ยนผ�งง�น

● ผ�งง�นระบบ (System Flowchart)● ผ�งง�นโปรแกรม (Program Flowchart)

K.Warawut

ผ�งง�นระบบ ผ�งง�นระบบ (System Flowchart)(System Flowchart)

● ใช�แสดงข�นตอนก�รท��ง�นภ�ยในระบบง�นหน9�ง

● เข�ยนอย.�งกว��งขว�ง ไม.ส�ม�รถน��ม�เข�ยนโปรแกรมได�

K.Warawut

ผ�งง�นโปรแกรม ผ�งง�นโปรแกรม (Program Flowchart)(Program Flowchart)

● ใช�แสดงข�นตอนก�รท��ง�นของโปรแกรม

● เร�ยกอ�กอย.�งหน9�งว.� “ผ�งก�รเข�ยนโปรแกรม”

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 49

ส�ญล�กษณ ผ�งง�น ส�ญล�กษณ ผ�งง�น (Symbol Flowchart)(Symbol Flowchart)

Terminal

Manual Input

Monitor (Output)

Input/Output (I/O) Data

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 50

ส�ญล�กษณ ผ�งง�น ส�ญล�กษณ ผ�งง�น (Symbol Flowchart)(Symbol Flowchart)

Comment

Magnetic Disk

Decision

Process

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 51

ส�ญล�กษณ ผ�งง�น ส�ญล�กษณ ผ�งง�น (Symbol Flowchart)(Symbol Flowchart)

Preparation

Subroutine Processing

Document

Connector Off-Page Connector

Flow Direction Lines

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 52

หล�กก�รเข�ยนผ�งง�นโปรแกรมหล�กก�รเข�ยนผ�งง�นโปรแกรม

● ใช�ส�ญล�กษณ!ให�ถ(กต�อง ตรงก�บคว�มหม�ย● ม�ห�วล(กศรบอกท�ศท�งก�รไหลของข�อม(ล● ค��อธ�บ�ยใน Flowchart ควรส�น เข��ใจง.�ย และ

ได�ใจคว�ม● ส��หร�บส�ญล�กษณ!ท��อย(.ห.�งก�นม�กๆ ควรใช�

ส�ญล�กษณ!จ1ดเช%�อมต.อก�น (Connector) ช.วย● ทดสอบก�รท��ง�นก.อนเข�ยนโปรแกรมจร�ง

แบบเร�ยงล �ด�บ แบบเร�ยงล �ด�บ (Sequential)(Sequential)

K.Warawut 54

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บ

Algorithm ห�ผลรวมของต�วเลข 2 จ��นวน

1. num1 = 102. num2 = 203. result = num1 + num24. Display resultEnd

K.Warawut 55

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บ

Algorithm ค��นวณห�พ%นท��ส�มเหล��ยม

1. Input base, height2. Calculation area = ½ * base * height3. Display areaEnd

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 56

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บ

ก��หนดให�ผ(�ใช�ปCอนค.�เง�นเด%อน (Salary) แล�วเคร%�องจะท��ก�รค��นวณภ�ษ� (Tax) 10% ให�โดยอ�ตโนม�ต�และจะพ�มพ!ค.� Salary ก�บ Tax

K.Warawut 57

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บก�รเข�ยนผ�งง�นแบบเร�ยงล �ด�บ

Algorithm Print salary and tax1. Input salary2. Calculation tax = salary * 0.103. Display salary and taxEnd

แบบก�รต�ดส�นใจ แบบก�รต�ดส�นใจ (Decision) (Decision)

K.Warawut บทท�� 2 ข�นตอนล��ด�บคว�มค�ดและก�รแก�ป�ญห�ท�งคอมพ�วเตอร! 59

ร(ปแบบก�รต�ดส�นใจ

● ท�ศท�งเด�ยว● 2 ท�ศท�ง● หล�ยท�ศท�ง● ซ�อนก�น

K.Warawut 60

ตต..ยย. . ก�รเข�ยนผ�งง�นก�รเข�ยนผ�งง�นแบบก�รต�ดส�นใจท�ศท�งเด�ยวแบบก�รต�ดส�นใจท�ศท�งเด�ยว

Algorithm แสดงผลล�พธ!ของต�วเลขเป)นเลขค(.เท.�น�น

1. Input n2. if n / 2 2.1 Equal zero display even numberEnd

K.Warawut

Algorithm แสดงผลล�พธ!ของต�วเลขเป)นเลขค(.หร%อเลขค��

1. Input n2. if n / 2 2.1 Equal zero display even number 2.2 Not equal zero display odd numberEnd

ตต..ยย. . ก�รเข�ยนผ�งง�นก�รเข�ยนผ�งง�นแบบก�รต�ดส�นใจ แบบก�รต�ดส�นใจ 2 2 ท�ศท�งท�ศท�ง

K.Warawut

ตต..ยย. . ก�รเข�ยนผ�งง�นก�รเข�ยนผ�งง�นแบบก�รต�ดส�นใจหล�ยท�ศท�งแบบก�รต�ดส�นใจหล�ยท�ศท�ง

Algorithm แสดงส�ต�มต�วอ�กษร

1. Input c

2. if c = 'R' then display red go to end

3. if c = 'B' then display blue go to end

4. if c = 'Y' then display yellow go to end

5. if c not equal 'R', 'B' and 'Y' then display not color

End

K.Warawut

ตต..ยย. . ก�รเข�ยนผ�งง�นก�รเข�ยนผ�งง�นแบบก�รต�ดส�นใจซ�อนก�นแบบก�รต�ดส�นใจซ�อนก�น

Algorithm แสดงส�ต�มต�วอ�กษร

1. Input c

2. if c = 'R' then display red go to end

3. if c = 'B' then display blue go to end

4. if c = 'Y' then display yellow go to end

5. if c not equal 'R', 'B' and 'Y' then display not color

End

แบบท �ซ� � แบบท �ซ� � (Repetition)(Repetition)

K.Warawut 65

ร#ปแบบของก�รท �ซ� �ร#ปแบบของก�รท �ซ� �

● ตรวจสอบเง%�อนไขก.อนท��ซ��

● ตรวจสอบเง%�อนไขหล�งท��ซ��

66

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบท �ซ� �ก�รเข�ยนผ�งง�นแบบท �ซ� �ตรวจสอบเง$�อนไขก1อนท �ซ� �ตรวจสอบเง$�อนไขก1อนท �ซ� �

Algorithm พ�มพ!เลข 1-10

1. Assign n to 1

2. Check value n

2.1 if n less then or equal to 10

- Display value n

- Increment value n to 1

- go to 2

2.2 if n greater to 10 go to end

End

ตต..ยย. . ก�รเข�ยนผ�งง�นแบบท �ซ� �ก�รเข�ยนผ�งง�นแบบท �ซ� �ตรวจสอบเง$�อนไขหล�งท �ซ� �ตรวจสอบเง$�อนไขหล�งท �ซ� �

Algorithm พ�มพ!เลข 1-10

1. Assign n to 1

2. Display value n

3. Increment value n to 1

4. Check value n

4.1 if n less then or equal to 10 go to 2

4.2 if n greater to 10 go to end

End