โรงเรียนวดั ทองศาลางาม
หนว่ ยการเรยี นรู้ท่ี 6 การเขยี นโปรแกรม การทางานของคอมพวิ เตอร์ โครงสรา้ งภาษาสาหรับ การเขียนโปรแกรม ระดบั ของภาษาในการ การออกแบบและเขียนโปรแกรม เขยี นโปรแกรม ที่มีการวนซาด้วยคาส่งั while ตัวแปร การออกแบบและเขียนโปรแกรม ทม่ี กี ารวนซาดว้ ยคาสัง่ do while
การทางานของคอมพิวเตอร์ ใชภ้ าษาระดบั สูง เขียนคาสง่ั เพื่อสงั่ งาน ตวั แปลภาษา แปลงคาสง่ั เป็น คอมพวิ เตอร์ ภาษาเคร่ือง คอมพวิ เตอร์เขา้ ใจ และปฏิบตั ิตามคาสงั่
การทางานของคอมพวิ เตอร์ประกอบด้วยองค์ประกอบพนื ฐาน 5 หนว่ ย ไดแ้ ก่ 1. หน่วยนาเขา้ (input unit) รับคาสง่ั ขอ้ มูลจากผใู้ ชค้ อมพิวเตอร์ ส่งตอ่ ไปยงั หน่วยประมวลผลกลาง คาสงั่ ขอ้ มูลจากผใู้ ชค้ อมพวิ เตอร์ หนว่ ยนาเข้า หน่วยประมวลผลกลาง 2. หน่วยประมวลผลกลาง (Central Processing Unit: CPU) ทาหนา้ ที่เปรียบเสมือน สมองของคอมพวิ เตอร์ โดยจะคอยประมวลผลคาสงั่ และทางานประสานกบั หน่วยอ่ืน หน่วยความจาหลกั หน่วยนาเขา้ คาสัง่ /ขอ้ มูล หน่วยประมวลผลกลาง หน่วยแสดงผล หน่วยความจาสารอง
การทางานของคอมพวิ เตอร์ประกอบด้วยองค์ประกอบพืนฐาน 5 หน่วย 3. หน่วยความจาหลกั (main memory unit) ทาหนา้ ที่เกบ็ ขอ้ มูลชุดคาสั่ง หรือโปรแกรมตา่ ง ท่ีคอมพิวเตอร์กาลงั ประมวลผล และยงั เป็นท่ีพกั ของขอ้ มูลระหวา่ งท่ีหน่วยประมวลผลกลาง กาลงั ประมวลผลอยู่ หน่วยประมวลผลกลาง คาสง่ั /ขอ้ มูล/โปรแกรม หนว่ ยความจาหลกั 4. หน่วยความจาสารอง (secondary memory unit) ทาหนา้ ท่ีเกบ็ ขอ้ มูลหรือสารองขอ้ มูล แบบถาวรบนคอมพิวเตอร์ อุปกรณ์ท่ีใชเ้ กบ็ ขอ้ มูลดงั กล่าว เช่น ฮาร์ดดิสก์ ซีดีรอม แฟลชไดร์ฟ ไฟลภ์ าพ โปรแกรม เกบ็ ไวท้ ่ี หนว่ ยความจา ถูกเรียกใช้ ไฟลเ์ อกสาร ไฟลเ์ กม สารอง โดย ไฟลห์ นงั หน่วยประมวลผลกลาง
การทางานของคอมพวิ เตอร์ประกอบด้วยองคป์ ระกอบพนื ฐาน 5 หนว่ ย 5. หน่วยแสดงผล (output unit) ทาหนา้ ท่ีแสดงผลหรือส่งออกขอ้ มูลท่ีไดจ้ ากการประมวลผล ของหน่วยประมวลผลกลางออกมาใหผ้ ใู้ ชค้ อมพวิ เตอร์ไดร้ ับทราบ หน่วยประมวลผลกลาง หนว่ ยแสดงผล ผใู้ ชค้ อมพิวเตอร์ สรุปภาพรวมการทางาน หน่วยความจาหลกั (main memory unit) นาเขา้ หน่วยแสดงผล (input unit) (output unit) หน่วยประมวลผลกลาง (Central Processing Unit: CPU) หน่วยความจาสารอง (secondary memory unit)
ระดบั ของภาษาในการเขียนโปรแกรม 1. ภาษาเคร่ือง (machine language) ใชต้ วั เลขเพยี ง 2 ตวั ( binary code) คือ 0 และ 1 เรียกวา่ เลขฐานสอง คอมพิวเตอร์สามารถเขา้ ใจและทางานตามโคดโปรแกรมท่ีเขียน ไม่ตอ้ งทาการแปลภาษา มีความซบั ซอ้ นและยากตอ่ การจดจา
2. ภาษาแอสเซมบลี (assembly language) เป็นภาษาที่พฒั นาข้ึนมาเพอื่ แกป้ ัญหาจากความยงุ่ ยากของภาษาเคร่ือง ใชค้ าส่งั ท่ีเป็นคาเฉพาะในภาษาองั กฤษที่มนุษยส์ ามารถเขา้ ใจไดม้ ากข้ึน คอมพิวเตอร์ไม่สามารถทางานดว้ ยภาษาแอสเซมบลีไดโ้ ดยตรงตอ้ งใชแ้ อสเซมเบลอร์ (assembler) แปลภาษาแอสเซมบลีใหเ้ ป็นภาษาเครื่อง Assembly source file assembler machine code file แผนภาพ การแปลงคาสง่ั จากแอสเซมบลีมาเป็นภาษาเคร่ือง
3. ภาษาระดับสูง (high-level language) เป็นภาษาที่พฒั นาข้ึนมาเพื่อแกป้ ัญหาจากความยงุ่ ยากของภาษาเคร่ือง และภาษาแอสเซมบลี เพือ่ ใหม้ ีความใกลเ้ คียงกบั ภาษามนุษยม์ ากข้ึน ใชค้ าสัง่ เป็นภาษาองั กฤษที่ง่ายตอ่ การส่ือสารและจดจา คอมพวิ เตอร์ไม่สามารถทางานดว้ ยภาษาระดบั สูงไดโ้ ดยตรงตอ้ งมีการใชค้ อมไพเลอร์ (compiler) หรืออินเทอร์พรีเตอร์ (interpreter) ในการแปลภาษาระดบั สูงให้เป็น ภาษาเครื่อง high-level source file compiler machine code file executer แผนภาพ การแปลงคาสงั่ จากภาษาระดบั สูงมาเป็นภาษาเครื่อง
ตัวแปร ตวั แปร (variable) คือ ส่ิงท่ีใชเ้ กบ็ คา่ เปรยี บเทียบชนดิ ของขอ้ มูลกบั หนว่ ยความจาที่ใชเ้ กบ็ (values) ท่ีสามารถเปล่ียนค่าในโปรแกรม ข้อมูลท่เี หมาะสม ไดใ้ นขณะประมวลผล ตวั แปรมีหลายชนิด แตล่ ะชนิดน้นั จะมีการจองหน่วยความจา ชนิดของขอ้ มลู ข้อกาหนด ขนาด หรือพ้นื ที่ในการจดั เกบ็ ที่ไม่เท่ากนั ท้งั น้ี ข้ึนอยกู่ บั ชนิดของขอ้ มูลที่เราตอ้ งการจดั เกบ็ boolean ค่าใช่หรือไม่ใช่ 1 บิต byte จานวนเตม็ 8 บิต short จานวนเตม็ 16 บิต int จานวนเตม็ 32 บิต long จานวนเตม็ 64 บิต เปรียบเทียบภาชนะท่ีเหมาะสม float ทศนิยม 32 บิต และไม่เหมาะสมในการเกบ็ ขอ้ มูล double ไม่เกิน 6 ตาแหน่ง 64 บิต char 8 บิต ทศนิยม ไม่เกิน 12 ตาแหน่ง อกั ขระ
โครงสร้างภาษาสาหรบั การเขยี นโปรแกรม 1. โครงสรา้ งของโคดภาษาจาวา (JAVA programming language) คือ ภาษาโปรแกรมเชิงวตั ถุ พฒั นาโดย เจมส์ กอสลิง (James Gosling) และคณะ เพ่อื ใชแ้ ทนภาษาซีพลสั พลสั (C++) การทางานของภาษาจาวามีจุดเด่น คือ เม่ือเขียนแลว้ สามารถนาไปใชไ้ ดก้ บั อุปกรณ์ท่ีหลากหลาย เช่น สมาร์ตโฟน แทบ็ เลต็ เคร่ืองคอมพิวเตอร์- ส่วนบุคคล โครงสร้างของโปรแกรมภาษาจาวาสามารถแสดงได้ ดงั น้ี public class Myclass { 1. คลาส (class) public static void main (string [ ] args) { 2. เมทอ็ ด (method) Statement 1; //comment 1 4. การอธิบาย Statement 2; //comment 2 โปรแกรม (comment) Statement 3; /*comment 3 } comment 4 */ } 3. ชุดคาสง่ั (statement)
โครงสรา้ งของโคดภาษาจาวา (JAVA programming language) 1. คลาส (class) ตอ้ งมีเครื่องหมาย การต้งั ช่ือคลาสจะข้ึนตน้ ปี กกาคู่ { } กากบั ดว้ ยตวั อกั ษรภาษาองั กฤษ คลาส (class) ตอ้ งมี 1 class เป็นอยา่ งนอ้ ย ตวั พมิ พใ์ หญ่ ช่ือของคลาสจะเป็ น public class Myclass { } ช่ือเดียวกบั ชื่อ โปรแกรม
โครงสร้างของโคดภาษาจาวา (JAVA programming language) 2. เมทอ็ ด (method) ภายใน method จะเขียนชุดคาสั่งซ่ึง เป็นการทางานหลกั ของโปรแกรม ใน 1 class จะตอ้ งมี method อยา่ งนอ้ ย 1 method public class Myclass { public static void main (string [] args) { } }
3. ชุดคาส่งั (Statement) ทุกคาส่งั จะปิ ดทา้ ยคาสั่งดว้ ย นิยมเขียน 1 คาสั่งต่อ เคร่ืองหมาย ; (Semicolon) 1 บรรทดั เป็นส่วนท่ีสัง่ งานใหโ้ ปรแกรม ทางานตามที่ตอ้ งการ 4. การอธิบายโปรแกรม (comment) เป็นส่วนที่ใชใ้ นการอธิบายเพิม่ เติม หรือจดบนั ทึกกนั ลืม ของผเู้ ขียนโปรแกรม ไม่มีผลใด ต่อการทางานของโปรแกรม การอธิบายโปรแกรมทาได้ 2 ลกั ษณะ (1) การอธิบายโปรแกรม 1 บรรทดั (2) การอธิบายโปรแกรมหลายบรรทดั โดยการใส่เครื่องหมาย // และใส่คาอธิบาย โดยการใส่เครื่องหมาย /* */ และจะใส่ โปรแกรมหลงั เคร่ืองหมาย คาอธิบายโปรแกรมระหวา่ ง /* กบั */
2. โครงสรา้ งของโคดภาษาซี (C programming language) ภาษาซี หรือ C programming language มีลกั ษณะการเขียนโปรแกรมแบบโครงสร้าง พฒั นาโดย เดนนิส ริชชี่ (Dennis Ritche) โดยมีจุดมุ่งหมายในการใชเ้ ป็นภาษาสาหรับใช้ ในการเขียนโปรแกรมปฏิบตั ิการระบบยนู ิกส์ ปัจจุบนั ภาษาซีเป็นภาษาหลกั ภาษาหน่ึงดา้ น programming ท่ีนิยมใชก้ นั ทว่ั โลก โครงสร้างของโปรแกรมภาษาซีสามารถแสดงได้ ดงั น้ี #include <stdio.h> 1. ส่วนหวั ฟังกช์ นั (Header file) หรือ Preprocessordirectives Main ( ) 2. ฟังกช์ นั หลกั (main function) { //comment 1 Statement 1; //comment 2 4. การอธิบาย Statement 2; //*comment 3 โปรแกรม (comment) Statement 3; comment 4 */ } 3. ชุดคาส่ัง(Statement)
โครงสรา้ งของโคดภาษาซี (C programming language) 1. หวั ฟังกช์ นั (Header file) หรอื พรโี ปรเซสเซอรไ์ ดเรกทีฟ (Preprocessordirectives) เป็นคาส่ังที่ใชบ้ อก compiler วา่ ตอ้ ง ใชอ้ ุปกรณ์นาเขา้ และแสดงผลพ้นื ฐาน นาเขา้ ส่วนใดจาก libraly และจะติดตอ่ คือ คียบ์ อร์ดและจอภาพ โดยใช้ header ท่ีชื่อ stdio.h และระบุตาแหน่ง directory ที่นาเขา้ กบั อุปกรณ์นาเขา้ และแสดงผลอะไรบา้ ง การสั่งจะดาเนินการบอกตาแหน่ง directory ดว้ ยเคร่ืองหมาย # และใส่ช่ือ header ในเคร่ืองหมาย < > ดงั น้ี #include <stdio.h> หมายถึง #include <conio.h> หมายถึง ไปคน้ หา header file ชื่อ stdio.h ไปคน้ หา header file ชื่อ conio.h ที่ตาแหน่ง directory include ที่ตาแหน่ง directory include
โครงสรา้ งของโคดภาษาซี (C programming language) 2. ฟงั กช์ ันหลกั (Main program) ใชป้ ระกาศใหต้ วั แปลคาสั่ง (compiler) รู้วา่ คาสัง่ ขา้ งในชุดปี กกา { } ของ main () เป็นชุดคาสัง่ เป็ นส่วนที่ภาษาซี ซ่ึงเป็นการทางานหลกั ของโปรแกรม ทุกโปรแกรมจะตอ้ งมี 3. ชดุ คาส่ัง (Statement) ทุกคาสง่ั จะปิ ดทา้ ยคาส่ังดว้ ย เคร่ืองหมาย ; (Semicolon) เป็นส่วนท่ีสั่งงานใหโ้ ปรแกรม ทางานตามที่เราตอ้ งการ นิยมเขียน 1 คาสั่งตอ่ 1 บรรทดั
โครงสร้างของโคดภาษาซี (C programming language) 4. การอธิบายโปรแกรม (comment) เป็นส่วนท่ีใชใ้ นการอธิบายเพิ่มเติม หรือจดบนั ทึกกนั ลืมของผเู้ ขียนโปรแกรม การอธิบายโปรแกรมจะไม่มีผลใด ต่อการทางานของโปรแกรม การอธิบายโปรแกรมทาได้ 2 ลกั ษณะ คือ (1) การอธิบายโปรแกรม 1 บรรทดั . (2) การอธิบายโปรแกรมหลายบรรทดั สามารถทาไดโ้ ดยการใส่เคร่ืองหมาย // สามารถทาไดโ้ ดยการใส่เครื่องหมาย /* */ และใส่คาอธิบายโปรแกรม และจะใส่คาอธิบายโปรแกรมระหวา่ ง /* กบั /* หลงั เครื่องหมาย
การออกแบบและเขียนโปรแกรมท่มี กี ารวนซาด้วยคาสงั่ while รูปแบบโปรแกรมวนซ้าดว้ ยคาสั่ง while จะมีการตรวจสอบเงื่อนไขก่อนการทางาน หากเหตุการณ์ยงั อยใู่ นเง่ือนไขกจ็ ะทางานท่ีกาหนดและวนซ้าเพ่ือทางานจนกวา่ เหตุการณ์ จะไม่เป็นไปตามเง่ือนไขแลว้ จึงออกจากการวนซ้า ซ่ึงสามารถแสดงไดด้ งั ผงั งาน เงื่อนไข (condition) ไมใ่ ช่ boolean expression ใช่ คาสง่ั ทางาน body loop
ตวั อยา่ งการออกแบบและเขยี นโปรแกรมทีม่ กี ารวนซาดว้ ยคาสง่ั while เหตุการณใ์ นชีวิตประจาวัน โปรแกรมวนซา เง่ือนไขทางาน เมื่อเราหิว เราส่ังอาหาร สงั่ อาหาร ไม่อิ่ม รับประทานในร้านและ ส่งั ไปเร่ือย จนกวา่ จะอ่ิม เราจึงจะหยดุ สั่งอาหาร ไม่อิ่ม ไม่ใช่ ใช่ ส่งั อาหาร
การออกแบบและเขยี นโปรแกรมท่ีมกี ารวนซาด้วยคาสั่ง do while โปรแกรมวนซ้าแบบมีเงื่อนไขดว้ ยคาส่ัง do while เป็นการทางานก่อน แลว้ จึงคอ่ ย ตรวจสอบเง่ือนไขการทางานภายหลงั ในการเขียนโปรแกรมเราตอ้ งการใหโ้ ปรแกรม ทางานก่อน 1 รอบ แลว้ จึงค่อยมาตรวจเงื่อนไข ตวั อย่าง คาสัง่ ทางาน body loop ส่ังอาหาร ใช่ ใช่ ไม่อ่ิม เงื่อนไข (condition) boolean expression ไม่ใช่ ไม่ใช่
แบบพฒั นาทกั ษะในการทาขอ้ สอบปรนยั เพอ่ื ประเมินผลตวั ช้ีวดั หนว่ ยการเรียนรทู้ ี่ 6 การเขียนโปรแกรม
1. การเขยี นโปรแกรมควรใช้กระบวนการในข้อใดจงึ จะเหมาะสมทส่ี ุด 1. กระบวนการทางวิทยาศาสตร์ 2. กระบวนการทางคณิตศาสตร์ 3. กระบวนการออกแบบเชิงวิศวกรรม 4. กระบวนการทางานของคอมพวิ เตอร์ เฉลย ข้อ 3. เพราะการเขียนโปรแกรม คือ กระบวนการ ต้งั แต่การมองเห็นปัญหา เกบ็ รวบรวมขอ้ มูล วเิ คราะห์ขอ้ มูล ออกแบบวางแผนการแกป้ ัญหา ทดสอบแกไ้ ขไปจนถึง การทาใหโ้ ปรแกรมน้นั ใชง้ านไดจ้ ริง ซ่ึงสามารถเปรียบเทียบ ไดก้ บั กระบวนการออกแบบเชิงวศิ วกรรม
2. ภาษาของคอมพวิ เตอรท์ ่มี จี ดุ เด่น คือ เมือ่ เขยี นแลว้ สามารถนาไปใช้ไดก้ ับอปุ กรณท์ ่ีหลากหลายคือภาษาใด 1. ภาษาซี 2. ภาษาจาวา 3. ภาษาแอสเซมบลี 4. ภาษาเอชทีเอม็ แอล เฉลย ข้อ 2. เพราะภาษาจาวา มีจุดเด่น คือ สามารถนาไปใช้ ไดก้ บั อุปกรณ์ที่หลากหลาย เช่น เคร่ืองคอมพวิ เตอร์ ส่วนบุคคล สมาร์ตโฟน แทบ็ เลต็
3. หากนกั เรียนต้องการเขียนโปรแกรมหาพืนทีข่ องรปู สเ่ี หล่ยี มผนื ผา้ และแสดงผลเปน็ ทศนยิ ม 2 ตาแหน่ง นักเรยี นควรประกาศตวั แปร เป็นชนดิ ใด จงึ จะเหมาะสมทสี่ ดุ 1. int 2. long 3. short 4. float เฉลย ข้อ 4 เพราะ float สามารถจดั เกบ็ จานวนจริง ทศนิยมไม่เกิน 6 ตาแหน่งได้
4. ในการเขยี นโปรแกรมภาษาจาวา ถ้านกั เรยี นเขียน class ขึนมา 5 class นักเรียนจะต้องสร้าง method ขึนมาอยา่ งนอ้ ยก่ี method 1. 5 method 2. 4 method 3. 3 method 4. 2 method เฉลย ข้อ 1. เพราะในการเขียนภาษาจาวา ขอ้ กาหนดวา่ ตอ้ งมี class อยา่ งนอ้ ย 1 class และภายในแต่ละ class จะตอ้ งมีอยา่ งนอ้ ย 1 method ดงั น้นั หากมี 5 class จะมี method อยา่ งนอ้ ย 5 method
5. ในการเขียนภาษาซไี มม่ ีฟังกช์ นั main () ได้หรือไม่ เพราะอะไร 1. ได้ เพราะเง่ือนไขของโปรแกรมไม่ไดร้ ะบุไว้ 2. ไม่ได้ เพราะจะทาใหโ้ ปรแกรมทางานไม่รู้จบ 3. ได้ เพราะสามารถเปลี่ยนชื่อหรือใชฟ้ ังกช์ นั อื่นทดแทนได้ 4. ไม่ได้ เพราะเป็นฟังกช์ นั หลกั ของโปรแกรมถา้ ขาดหายไป จะทาใหโ้ ปรแกรม error เฉลย ข้อ 4. เพราะโปรแกรมภาษาซี ไม่มีฟังกช์ นั main () ไม่ไดเ้ พราะเป็นฟังกช์ นั หลกั ตามกาหนดของผพู้ ฒั นาโปรแกรม หากไม่มีเวลาทาการคอมไพลจ์ ะทาใหโ้ ปรแกรมฟ้อง error
6. ในการแปลโปรแกรมดว้ ยคอมไพเลอร์ (compiler) ถา้ แปลไม่ผ่านจะเกิดอะไรขึน 1. โปรแกรมจะดบั และปิ ดตวั ไปเอง 2. โปรแกรมจะแจง้ error และใหผ้ ใู้ ชแ้ กไ้ ขโคดใหม่ 3. โปรแกรมจะสร้างไฟลว์ ตั ถุมาใหพ้ ร้อมกบั แจง้ error 4. โปรแกรมจะสร้างไฟลเ์ อก็ ซ์คิวตม์ าให้ และหยดุ การทางาน เฉลย ข้อ 2. เพราะคอมไพเลอร์ ทาหนา้ ท่ีแปลภาษาที่เราเขียน เป็นภาษาเครื่อง หากโปรแกรมไม่ผา่ นจะแจง้ error และใหผ้ ใู้ ช้ แกไ้ ขโคดใหม่ แต่หากโปรแกรมผา่ น คอมไฟเลอร์จะสร้าง ไฟลว์ ตั ถุ (.obj) มาใหแ้ ละจะเชื่อมโยงแฟ้มขอ้ มูลไฟลว์ ตั ถุ เขา้ กบั รหสั ตน้ ฉบบั สร้างเป็นไฟลเ์ อก็ ซ์คิวต์ (.exe) ข้ึนมา
พจิ ารณาการเขยี นโปรแกรมต่อไปนี แลว้ ตอบคาถามข้อ 7-9
7. จากการเขยี นโปรแกรมข้างต้น เปน็ การเขยี นโปรแกรมด้วยภาษาใด 1. ภาษาซี 2. ภาษาจาวา 3. ภาษาแอสเซมบลี 4. ภาษาเอชทีเอม็ แอล เฉลย ข้อ 1. เพราะจากการเขียนโปรแกรมขา้ งตน้ เป็นการเขียนโปรแกรมดว้ ยภาษาซี
8. หากโปรแกรมไม่มีสว่ น #include<stdio.h> จะเกดิ อะไรขึน 1. โปรแกรมจะคา้ ง 2. ไม่ส่งผลอะไร สามารถทางานไดต้ ามปกติ 3. โปรแกรมจะ error ไม่สามารถทางานได้ 4. โปรแกรมสามารถทางานได้ แต่ผลลพั ธ์ที่ไดจ้ ะไม่ถูกตอ้ ง เฉลย ขอ้ 3. เพราะหากไม่มีส่วน #include<stdio.h> จะทาใหโ้ ปรแกรม error ไม่สามารถทางานได้
9. เมื่อรันโปรแกรมเบืองตน้ ผลลพั ธ์ทีไ่ ดต้ รงตามข้อใด 1. sum = 1 2. sum = %d 3. sum = 55 4. sum = 10 เฉลย ข้อ 3. เพราะโปรแกรมขา้ งตน้ เป็นการเขียนโปรแกรม หาผลบวกของจานวนเตม็ ต้งั แต่ 1-10 ดงั น้นั ผลลพั ธ์ เม่ือทาการรันโปรแกรม คือ sum = 55
10. คาส่งั while กบั do while แตกตา่ งกนั อยา่ งไร 1. คาสง่ั while จะตรวจสอบเงื่อนไขก่อนแลว้ ถึงจะทางาน แต่คาสง่ั do while จะเลือกกรณีใหต้ รงเง่ือนไข แลว้ ไปทากรณีน้นั 2. คาสง่ั while จะตรวจสอบเง่ือนไขก่อนแลว้ ถึงจะทางาน แต่คาสงั่ do while จะทางานก่อน 1 รอบ จึงตรวจสอบเงื่อนไข 3. คาสง่ั while ใชก้ บั ภาษาจาวา แต่ do while ใชก้ บั ภาษาซี 4. คาสงั่ while ใชก้ บั ภาษาซี แต่ do while ใชก้ บั ภาษาจาวา เฉลย ข้อ 2. เพราะคาสงั่ while เป็นคาสง่ั วนซ้าที่จะตรวจสอบ เงื่อนไขก่อน ถา้ พบวา่ เง่ือนไขจริงจะทาคาสงั่ ท่ีอยภู่ ายในลูป หลงั จากน้นั จะกลบั มาตรวจสอบเง่ือนไขอีกคร้ัง วนซ้าไปเร่ือย แต่คาสงั่ do while จะทางานในลูป do while ก่อน 1 คร้ัง จึงจะตรวจสอบเง่ือนไข
Search
Read the Text Version
- 1 - 33
Pages: