23
รหัสเทียม Psuedo Code โดย นาย ปณพล ดาดวง สคพ2. เลขที5

รหัสเทียม Psuedo code

  • Upload
    -

  • View
    1.878

  • Download
    0

Embed Size (px)

Citation preview

Page 1: รหัสเทียม Psuedo code

รหสเทยม Psuedo Codeโดยนาย ปณพล ดาดวง

สคพ2. เลขท 5

Page 2: รหัสเทียม Psuedo code

รหสเทยม หรอ ซโดโคด (Pseudo Code) เ ปนค ำส ง ทจ ำลองควำมคดเ ปนล ำดบข นตอนโดยใชสญลกษณเปน ประโยคภำษำองกฤษ ซงซโดโคดไมใชภำษำโปรแกรมทำงคอมพวเตอรจงไม สำมำรถน ำไปประมวลผลได คอ ไมสำมำรถสงใหคอมพวเตอรท ำงำนตำมค ำสง แตเปนกำรเขยนจ ำลองค ำสงจรงแบบยอๆ ตำมอลกอรทมของโปรแกรมระบบ เพอน ำไปพฒนำเปนกำรเขยนโปรแกรมภำษำคอมพวเตอรได

รหสเทยม (Pseudocode) คอ กำรเขยนโปรแกรมในรปแบบภำษำองกฤษทมขนตอนและรปแบบแนนอนกะทดรด และมองดคลำยภำษำระดบสงทใชกบเครองคอมพวเตอรซงไมเจำะจงภำษำใดภำษำหนง

Page 3: รหัสเทียม Psuedo code

ประโยชนของซโดโคด

เปนเครองมอในกำรก ำหนดโครงรำงกระบวนกำรท ำงำนของกำรเขยนโปรแกรมแตละโปรแกรม

เปนตนแบบในกำรทบทวน ปรบปรงแกไข และพฒนำโปรแกรมของโปรแกรมเมอร และนกวเครำะหระบบ

เปนตวก ำหนดงำนเขยนโปรแกรม เพอใหโปรแกรมเมอรน ำไปพฒนำเปนโปรแกรมคอมพวเตอร เพอสงให คอมพวเตอรท ำงำนตำมกระบวนกำรทไดจ ำลองกระบวนกำรจรงไวในซโดโคด

Page 4: รหัสเทียม Psuedo code

วธการเขยนซโดโคด

ประโยคค ำสง (Statement) จะอยในรปแบบของภำษำองกฤษอยำงงำย ในหนงบรรทด ใหเขยนประโยคค ำสงเพยงค ำสงเดยว ควรใชยอหนำ เพอแยกค ำเฉพำะ (Keywords) ไดชดเจน รวมถงจดโครงสรำงกำรควบคมใหเปนสดสวน ซงชวยใหอำนโคดไดงำย

แตละประโยคค ำสงใหเขยนล ำดบจำกบนลงลำง โดยมทำงเขำเพยงทำงเดยว และมทำงออกทำงเดยวเทำนน

กลมของประโยคค ำสงตำงๆ อำจจดรวมกลมเขำดวยกนในรปแบบของโมดล แตตองมกำรก ำหนดชอของโมดลดวย เพอใหสำมำรถเรยกใชงำนโมดลนนได

Page 5: รหัสเทียม Psuedo code

ตวอยางการเขยนรหสเทยม Pseudo

CodeAlgorithm Problem_1

Variables : mLoop, Sum, testScore, average

Begin

Input mLoop

Sum = 0

For I = 1 to mLoop

Input testScore

Sum = Sum + testScore

Next

average = Sum / mLoop

Print average

End Problem_1

Page 6: รหัสเทียม Psuedo code

รปแบบการเขยน Pseudo Code

1. การก าหนดคา และการค านวณname = expressionname คอ ชอตวแปรทใชส ำหรบเกบคำexpression คอ คำขอมลหรอนพจน

ตวอยำงsalary = 1000overTime = 2500tax = 125Income = salary + overTime - tag

Page 7: รหัสเทียม Psuedo code

2. การอาน/รบขอมล

กำรอำนขอมลสำมำรถใชค ำสง READ, INPUT หรอ GET ได โดยRead variables_1 ,variables_2, variables_3Input variables_1 ,variables_2, variables_3Get variables_1 ,variables_2, variables_3

READ ใชส ำหรบกำรอำนคำทมอยแลว มำเกบไวในตวแปร เชน กำรอำนขอมลจำกไฟล โดยจะท ำงำนรวมกบ OPEN (กำรเปดไฟล)

INPUT และ GET ใชส ำหรบกำรรบคำขอมลผำนทำงแปนพมพVariable คอ ตวแปรทใชเกบขอมลทอำนหรอรบเขำมำ ซงสำมำรถก ำหนดได

ตำมจ ำนวนตวแปรทตองกำร โดยใชเครองหมำย “,” คนระหวำงชอตวแปร

Page 8: รหัสเทียม Psuedo code

ตวอยาง

Input a, b, cAnswer = a + b + cGet current_dateexpire_date = current_date + 120Open student_fileRead Id, Name, Address, Sex

Page 9: รหัสเทียม Psuedo code

3. การแสดงผลขอมล

การแสดงผลขอมลสามารถใชค าสง Print , Prompt, Writeprint variables_1 ,variables_2, variables_3prompt variables_1 ,variables_2, variables_3write variables_1 ,variables_2, variables_3

PRINT และ PROMPT ใชส าหรบการพมพคาขอมล หรอขอความ

WRITE ใชส าหรบการบนทกขอมลลงในแฟมขอมล

Page 10: รหัสเทียม Psuedo code

ตวอยาง

Prompt " Enter 3 Value ==> "Input Value1 , Value2 , Value3Sum = Value1 + Value2 + Value3Print SumOpen Student _fileInput Id, Name, Address, SexWrite Id, Name, Address, Sex

Page 11: รหัสเทียม Psuedo code

4. การก าหนดเงอนไข

If < condition > ThenActivity 1

ElseActivity 2

Endif<condition> คอ เงอนไขทก ำหนด ซงหำกเงอนไขเปนจรง จะท ำ

กจกรรมหลง THEN (activity1) แตถำเงอนไขเปนเทจ กจะท ำกจกรรมหลง ELSE (activity2)

Page 12: รหัสเทียม Psuedo code

ตวอยางIF sex = “M” THEN

male = male + 1

ELSE

female = female + 1

ENDIF

IF score >= 80

grade = “A”

ELSEIF score >= 70

grade = “B”

ELSEIF score >= 60

grade = “C”

ELSEIF score >= 50

grade = “D”

ELSE

grade = “F”

ENDIF

Page 13: รหัสเทียม Psuedo code

5. ในกรณทมหลายเงอนไข

กำรใช IF อำจทำใหตรวจสอบโปรแกรมไดยำก สำมำรถใชคำสง CASE …. ENDCASE แทนไดตวอยำง

CASE score OF>= 80 : grade = “A”>= 70 : grade = “B”>= 60 : grade = “C”< 60 : grade = “F”ENDCASE

Page 14: รหัสเทียม Psuedo code

6. การท างานเปนรอบ (Loop)

กำรท ำงำนเปนรอบดวยลป WHILE … ENDWHILEWHILE<condition>activity1activity2activity3ENDWHILE

Page 15: รหัสเทียม Psuedo code

กำรท ำงำนของลป WHILE จะมกำรตรวจสอบเงอนไขกอน โดยหำกเงอนไขเปนจรง จะท ำกจกรรมภำยในลปซ ำไปเรอยๆ จนกระทงเงอนไขเปนเทจกจะออกจำกลปแตหำกเงอนไขทตรวจสอบครงแรกเปนเทจ กจะไมมกำรทำกจกรรมภำยในลปเลย

Page 16: รหัสเทียม Psuedo code

ตวอยำงnum = 1WHILE num <= 20

PRINT numnum = num + 1

ENDWHILEPRINT “STOP RUN”

Page 17: รหัสเทียม Psuedo code

7. การท างานเปนรอบ (Loop)

กำรท ำงำนเปนรอบดวยลป DO … UNTILDO

activity1activity2activity3

UNTIL <condition>กำรท ำงำนของลป DO … UNTIL จะท ำกจกรรมภำยในลปกอนหนงรอบ

จำกนนจะทำกำรตรวจเงอนไข โดยจะวนซำไปเรอยๆ จนกวำเงอนไขจะเปนจรง จงหลดออกจำกลป และถงแมเงอนไขทตรวจสอบเปนจรงต งแตแรก แตลป DO…UNTIL กจะมกำรทำกจกรรมภำยในลปอยำงนอยหนงรอบเสมอ

Page 18: รหัสเทียม Psuedo code

ตวอยำงnum = 0DO

PRINT “HELLO…”num = num + 1

UNTIL num > 20

Page 19: รหัสเทียม Psuedo code

8. การท างานเปนรอบ (Loop)

กำรท ำงำนเปนรอบดวยลป FOR … NEXTFOR i=1 to n

activity1activity2activity3

Next

Page 20: รหัสเทียม Psuedo code

ตวอยางการเขยนรหสเทยมและผงงาน

หลกในการเขยน Pseudocode1. ค ำสงทเขยนใชภำษำทเขำใจงำย ไมตองค ำนงถงภำษำคอมพวเตอร2. ในหนงบรรทด ใหมเพยงหนงค ำสงเทำนน3. ใชยอหนำในกำรแสดงกลมของค ำสง ทเปนค ำสงยอยในค ำสงพวกเงอนไข เชน if-else, while, for ฯลฯ4. ในกำรเขยนแตละค ำสงใหเรยงกำรท ำงำนจำกบนลงลำง และมทำงออกหรอจดสนสดเพยงจดเดยว5. กลมค ำสงอำจจะเขยนรวมกนเปนโมดล และเวลำเรยกใชกเรยกใชผำนชอโมดล (คลำยกบกำรเรยกใชฟงกชน)

Page 21: รหัสเทียม Psuedo code

ตวอยำงท 1 จงเขยน Pseudocode จำกโปรแกรมหำผลรวมของตวเลข 2 คำ แลวแสดงผลรวมออกมำทำงหนำจอ1. read x , y2. calculate sum = x + y3. print sumตวอยำงท 2 จงเขยน Pseudocode จำกโปรแกรมรบตวเลข 1 คำแลวตรวจสอบวำเปนเลขคหรอเลขค1. read x2. if x % 2 = 0 <– ตรวจสอบวำเศษจำกกำรหำร x ดวย 2 เทำกบ 0 หรอไม1. then1. print “even”2. else1. print “odd”

Page 22: รหัสเทียม Psuedo code

ตวอยำงท 3 จงเขยน Pseudocode จำกโปรแกรมหำคำเฉลยของตวเลข 10 คำ แลวแสดงคำเฉลยออกมำทำงหนำจอ1. for i = 1 to 10 <– เปนค ำสงวนรอบจ ำนวน 10 รอบ1. read num2. calculate sum = sum + num2. calculate mean = sum / 103. print meanตวอยำงท 4 จงเขยน Pseudocode จำกโปรแกรมหำคำเฉลยของตวเลข n คำ แลวแสดงคำเฉลยออกมำทำงหนำจอ1. read n

2. for i = 1 to n <– เปนค ำสงวนรอบจ ำนวน n รอบ1. read num2. calculate sum = sum + num3. calculate mean = sum / n4. print mean

Page 23: รหัสเทียม Psuedo code

ตวอยำงท 5 จงเขยน Pseudocode จำกโปรแกรมเปรยบเทยบตวเลข 2 คำ แลวแสดงควำมสมพนธออกมำ1. read x , y2. if x > y1. then1. print “x > y”2. else if x < y1. then1. print “x < y”

2. else1. print “x = y”