1) ถ้านักเรียนต้องการเขียนโปรแกรมเพื่อคำนวณพื้นที่สี่เหลี่ยมผืนผ้า โดยให้ผู้ใช้ป้อนความกว้างและความยาว แล้วแสดงผลลัพธ์การออกแบบอัลกอริทึมโดยใช้ผังงาน ควรใช้สัญลักษณ์ใดในการแสดงการรับค่าความกว้างและความยาว (การนำไปใช้) a) สี่เหลี่ยมผืนผ้า (Rectangle) b) สี่เหลี่ยมขนมเปียกปูน (Rhombus) c) สี่เหลี่ยมด้านขนาน (Parallelogram) d) วงรี (Oval) 2) พิจารณาข้อความ Pseudocode จากรูปขั้นตอนที่ 3-7 มีวัตถุประสงค์หลักเพื่ออะไร a) เปรียบเทียบค่าและเลือกค่าที่น้อยที่สุด b) เปรียบเทียบค่าและเลือกค่าที่มากที่สุด c) บวกค่าตัวเลขสองจำนวน d) รับค่าตัวเลขสองจำนวน 3) ในการออกแบบอัลกอริทึมเพื่อหาผลรวมของตัวเลขตั้งแต่ 1 ถึง 100 นักเรียนสามารถใช้โครงสร้างใดเพื่อทำให้โค้ดมีความกระชับและมีประสิทธิภาพ a) โครงสร้างลำดับ (Sequence) b) โครงสร้างการตัดสินใจ (Decision) c) โครงสร้างการทำซ้ำ (Looping/Iteration) d) การเรียกใช้ซ้ำ (Recursion) 4) นักเรียนได้รับมอบหมายให้แก้ไขอัลกอริทึมเดิมที่มีการใช้เงื่อนไขแบบซ้อนกันหลายชั้น (nested IF-ELSE) ทำให้การตรวจสอบข้อผิดพลาดทำได้ยาก นักเรียนจะใช้วิธีใดในการวิเคราะห์อัลกอริทึมเดิมเพื่อทำความเข้าใจและหาจุดที่สามารถปรับปรุงได้ a) เริ่มเขียนผังงานใหม่ทั้งหมดตั้งแต่ต้น   b) สร้างตารางแสดงผลลัพธ์ที่เป็นไปได้ (Trace Table) สำหรับเงื่อนไขต่าง ๆ   c) ใช้เครื่องมืออัตโนมัติในการแปลงโค้ดจากภาษาโปรแกรมเป็นผังงาน   d) เพิ่มความคิดเห็น (Comments) ในทุกบรรทัดของโค้ดเดิม 5) พิจารณาผังงานที่ทำงานดังนี้: ถ้า x มากกว่า 100 ให้แสดง "Value is too high" ถ้า x น้อยกว่า 0 ให้แสดง "Value is too low" แต่ถ้าไม่อยู่ในเงื่อนไขใดเลยให้แสดง "Value is valid" ถ้านักเรียนป้อนค่า x = 50 ผลลัพธ์ที่ได้จากการวิเคราะห์ผังงานนี้คืออะไร a) “Value is too high” b) “Value is too low”   c) “Value is valid”   d) ไม่มีผลลัพธ์ใด ๆ 6) คุณต้องการออกแบบอัลกอริทึมที่สามารถคำนวณพื้นที่ของรูปทรงเรขาคณิตได้หลายชนิด (สามเหลี่ยม, สี่เหลี่ยม, วงกลม) โดยให้ผู้ใช้เลือกชนิดของรูปทรงก่อน การใช้โครงสร้างการตัดสินใจแบบใดที่เหมาะสมที่สุดสำหรับการออกแบบนี้ a) การตัดสินใจแบบ IF-THEN b) การทำซ้ำแบบ FOR-LOOP   c) การทำซ้ำแบบ WHILE-LOOP   d) การตัดสินใจแบบ IF-ELSE IF-ELSE (หรือ CASE) 7) คุณได้รับโจทย์ให้สังเคราะห์อัลกอริทึมใหม่เพื่อปรับปรุงประสิทธิภาพของการค้นหาข้อมูลในฐานข้อมูลขนาดใหญ่ โดยอัลกอริทึมเดิมใช้การค้นหาแบบวนซ้ำ (Linear Search) คุณควรพิจารณาใช้เทคนิคการค้นหาแบบใด a) การค้นหาแบบวนซ้ำ (Linear Search) เหมือนเดิม b) การเรียงลำดับข้อมูลก่อน แล้วจึงใช้การค้นหาแบบ Binary Search   c) การใช้โครงสร้างข้อมูลแบบ Linked List เพื่อเก็บข้อมูล d) การใช้การค้นหาแบบ Random Search 8) นักเรียนต้องการสังเคราะห์ Pseudocode ที่ใช้ในการนับจำนวนนักเรียนที่สอบผ่านเกณฑ์ (คะแนน >= 50) จากรายการคะแนนทั้งหมด ข้อใดถูกต้องและสมบูรณ์ที่สุด a) 1. SET count = 0, 2. FOR EACH score IN scores, 3. IF score >= 50 THEN count = count + 1, 4. END FOR, 5. PRINT count b) 1. SET count = 0, 2. IF score >= 50 THEN count = count + 1   c) 1. SET count = 0, 2. WHILE score >= 50 THEN count = count + 1, 3. END WHILE d) 1. READ score, 2. IF score >= 50 THEN PRINT “Pass” 9) อัลกอริทึม A ใช้ Bubble Sort และอัลกอริทึม B ใช้ Quick Sort ในการจัดเรียงข้อมูลชุดเดียวกัน โดยเปรียบเทียบตามประสิทธิภาพด้านความเร็วในการประมวลผล คุณจะประเมินค่าของอัลกอริทึม B เมื่อเทียบกับอัลกอริทึม A ได้อย่างไร a) อัลกอริทึม B มีความซับซ้อนมากกว่า แต่มีประสิทธิภาพต่ำกว่า b) อัลกอริทึม B มีความซับซ้อนน้อยกว่า แต่มีประสิทธิภาพสูงกว่า   c) อัลกอริทึม B มีความซับซ้อนมากกว่า แต่มีประสิทธิภาพสูงกว่า   d) อัลกอริทึม A และอัลกอริทึม B มีประสิทธิภาพเท่ากัน 10) พิจารณาอัลกอริทึม 2 แบบ สำหรับการหาค่าเฉลี่ยของตัวเลขจำนวนมาก นักเรียนจะประเมินค่าอัลกอริทึมแบบที่ 2 เมื่อเทียบกับแบบที่ 1 ได้อย่างไร a) อัลกอริทึม 2 มีความซับซ้อนมากกว่า และใช้หน่วยความจำมากกว่า b) อัลกอริทึม 2 มีความซับซ้อนน้อยกว่า แต่ใช้หน่วยความจำมากกว่า   c) อัลกอริทึม 2 ใช้หน่วยความจำน้อยกว่าและมีประสิทธิภาพมากกว่า   d) อัลกอริทึม 2 ใช้หน่วยความจำมากกว่าและมีประสิทธิภาพน้อยกว่า 11) หากนักเรียนต้องการเก็บชื่อนักเรียน 10 คนในโปรแกรมเพื่อใช้ในการแสดงผล นักเรียนควรเลือกใช้โครงสร้างข้อมูลชนิดใดที่เหมาะสมที่สุด a) ตัวแปร (Variable) b) ลิสต์/อาร์เรย์ (List/Array) c) ค่าคงที่ (Constant) d) ตัวแปรตรรกะ (Boolean Variable) 12) ถ้านักเรียนมีลิสต์ที่เก็บคะแนนสอบของนักเรียนไว้ และต้องการแสดงผลคะแนนของนักเรียนคนที่ 5 นักเรียนควรใช้คำสั่งใดในการเข้าถึงข้อมูลนั้น a) scores[5] b) scores(5) c) scores[4] d) scores(4) 13) พิจารณาโค้ด Pseudocode จากรูปภาพ หลังจากโค้ดนี้ทำงานเสร็จสิ้น ค่าของ pass_count จะเป็นเท่าไหร่ a) 2 b) 3 c) 4 d) 5 14) นักเรียนคนหนึ่งเขียนโปรแกรมเพื่อหาค่าเฉลี่ยของคะแนนในลิสต์ แต่ผลลัพธ์ที่ได้ผิดพลาด โดยโค้ดที่เขียนมีดังรูป  นักเรียนควรวิเคราะห์และแก้ไขโค้ดในบรรทัดสุดท้ายอย่างไรเพื่อให้ได้ค่าเฉลี่ยที่ถูกต้อง a) average = total * 4 b) average = total / 4 c) average = total / len(grades) d) average = grades[0] 15) โครงสร้างการทำซ้ำ (Loop) มีความสำคัญอย่างไรในการจัดการข้อมูลหลายรายการ a) ช่วยให้สามารถประกาศตัวแปรหลายตัวได้อย่างรวดเร็ว b) ช่วยให้สามารถเข้าถึงและประมวลผลข้อมูลแต่ละรายการโดยไม่ต้องเขียนโค้ดซ้ำ ๆ   c) ช่วยให้สามารถจัดเก็บข้อมูลในรูปแบบตารางได้ d) ช่วยให้โปรแกรมหยุดการทำงานเมื่อเกิดข้อผิดพลาด 16) ถ้านักเรียนต้องการเขียนโปรแกรมเพื่อหาคะแนนสูงสุดในลิสต์ scores = [85, 92, 78, 99, 88] นักเรียนควรออกแบบ Pseudocode อย่างไร a) กำหนดตัวแปร max_score = 0 และใช้ FOR Loop เพื่อตรวจสอบทุกคะแนนในลิสต์และถ้าคะแนนใดมากกว่า max_score ให้กำหนดค่านั้นเป็น max_score ตัวใหม่ b) ใช้คำสั่ง PRINT max(scores) c) ใช้ WHILE Loop เพื่อวนซ้ำจนกว่าจะเจอคะแนนสูงสุด d) เรียงลำดับคะแนนจากน้อยไปมาก แล้วเลือกคะแนนตัวสุดท้าย 17) หากนักเรียนมีข้อมูลเป็นชื่อนักเรียนและเกรดเฉลี่ยของพวกเขาใน 2 ลิสต์ที่แยกกัน (student_names และ gpa_scores) และต้องการแสดงผลเกรดของนักเรียนชื่อ "สมใจ" นักเรียนควรสังเคราะห์โค้ดอย่างไร a) ค้นหาชื่อ "สมใจ" ในลิสต์ student_names เพื่อให้ได้ตำแหน่ง (index) จากนั้นใช้ตำแหน่งนั้นเพื่อเข้าถึงเกรดในลิสต์ gpa_scores b) ค้นหาเกรดที่สูงที่สุดในลิสต์ gpa_scores แล้วจึงนำไปเปรียบเทียบกับชื่อในลิสต์ student_names  c) สร้างลูปเพื่อวนอ่านค่าในลิสต์ทั้งสองและแสดงผลทุกรายการ  d) ประกาศตัวแปรใหม่สำหรับชื่อและเกรดของสมใจโดยเฉพาะ 18) สมมติว่านักเรียนต้องเขียนโปรแกรมเพื่อสร้างลิสต์ของคะแนนสอบ 10 คน จากการรับข้อมูลจากผู้ใช้ทีละคน นักเรียนควรออกแบบขั้นตอนการทำงานด้วย Pseudocode อย่างไร a) รับค่าคะแนน 10 ครั้งและเก็บไว้ในตัวแปรที่แตกต่างกัน b) สร้างลิสต์เปล่า แล้วใช้ลูป FOR ที่ทำงาน 10 รอบ ในแต่ละรอบให้รับค่าคะแนนและเพิ่มเข้าไปในลิสต์ c) สร้างลิสต์ที่เก็บค่าคะแนน 10 ค่าไว้ล่วงหน้า แล้วแก้ไขค่าเหล่านั้นเมื่อผู้ใช้ป้อนข้อมูล d) ใช้ลูป WHILE เพื่อรับค่าคะแนนจนกว่าจะได้รับข้อมูลทั้งหมด 10 ค่า 19) การเก็บข้อมูลนักเรียนเป็น 2 ลิสต์ที่แยกกัน (ลิสต์ชื่อ และลิสต์คะแนน) และการเก็บในรูปแบบ [ ["สมชาย", 85], ["สมหญิง", 90] ] แบบใดดีกว่ากัน และเพราะเหตุใด a) แบบแรกดีกว่าเพราะดูเรียบง่ายกว่า   b) แบบที่สองดีกว่าเพราะข้อมูลแต่ละรายการ (ชื่อและคะแนน) ถูกจัดกลุ่มไว้ด้วยกัน ทำให้จัดการได้ง่ายกว่า c) แบบแรกดีกว่าเพราะสามารถเข้าถึงข้อมูลได้รวดเร็วกว่า   d) ทั้งสองแบบมีประสิทธิภาพเท่ากัน 20) หากนักเรียนมีลิสต์ของข้อมูลที่ไม่เรียงลำดับ การใช้อัลกอริทึมใดในการหาข้อมูลที่ต้องการมีความเหมาะสมกว่ากัน a) อัลกอริทึม A ดีกว่า เพราะเข้าใจง่ายและไม่ต้องเรียงข้อมูล   b) อัลกอริทึม B ดีกว่า เพราะค้นหาได้เร็วกว่ามาก c) อัลกอริทึม A และ B มีประสิทธิภาพเท่ากัน เพราะข้อมูลไม่ได้เรียงลำดับ   d) อัลกอริทึม A ดีกว่า เพราะเหมาะกับการใช้ในลูป 21) หากนักเรียนต้องการเขียนโปรแกรมเพื่อตรวจสอบว่าคะแนนของนักเรียนคนหนึ่งสอบผ่านเกณฑ์หรือไม่ (สมมติว่าคะแนนผ่านคือ 50 ขึ้นไป) คุณควรใช้โครงสร้างควบคุมใดในการตัดสินใจ a) โครงสร้างลำดับ (Sequence) b) โครงสร้างการทำซ้ำ (Loop) c) โครงสร้างเงื่อนไข (Conditional) d) ฟังก์ชัน (Function) 22) ถ้านักเรียนต้องการพิมพ์ชื่อนักเรียน 20 คนในลิสต์ โดยไม่ต้องการเขียนคำสั่งพิมพ์ 20 ครั้ง นักเรียนควรใช้โครงสร้างควบคุมใดที่เหมาะสมที่สุด a) IF-THEN-ELSE   b) WHILE Loop c) FOR Loop   d) CASE 23) พิจารณาโค้ด Pseudocode จากรูปภาพ ผลลัพธ์ที่ได้จากการทำงานของโค้ดนี้คืออะไร a) 1 2 3 4 b) 1 2 3 4 5 c) 5 d) 1 24) ในโปรแกรมที่ให้ผู้ใช้ป้อนรหัสผ่านซ้ำจนกว่าจะถูกต้อง โครงสร้างควบคุมแบบ การทำซ้ำ (Loop) มีหน้าที่สำคัญที่สุดคืออะไร a) เพื่อสร้างรหัสผ่านใหม่   b) เพื่อให้โค้ดส่วนที่รับข้อมูลและตรวจสอบรหัสผ่านทำงานซ้ำ ๆ c) เพื่อให้โปรแกรมหยุดทำงานเมื่อผู้ใช้ป้อนรหัสผิด   d) เพื่อแสดงข้อความต้อนรับเมื่อรหัสผ่านถูกต้อง 25) นักเรียนคนหนึ่งต้องการเขียนฟังก์ชันเพื่อคำนวณพื้นที่วงกลม สิ่งที่ฟังก์ชันนี้ทำคืออะไร a) รับค่า radius และส่งคืนค่า area b) รับค่า area และส่งคืนค่า radius  c) รับค่า radius และพิมพ์ค่า area ออกมา d) คำนวณค่าคงที่และส่งคืนค่าเดิม 26) นักเรียนต้องการเขียนโปรแกรมที่รับคะแนนจากผู้ใช้ 5 ครั้ง แล้วนับว่ามีกี่คะแนนที่มากกว่าหรือเท่ากับ 80 นักเรียนควรออกแบบ Pseudocode ที่ถูกต้องอย่างไร a) ใช้ FOR Loop เพื่อรับค่า 5 ครั้ง และใช้ IF เพื่อตรวจสอบคะแนนว่าผ่านเกณฑ์หรือไม่ b) ใช้ WHILE Loop เพื่อรับค่าและใช้ IF เพื่อตรวจสอบจนกว่าคะแนนจะครบ 5 ครั้ง c) ใช้ IF เพื่อตรวจสอบคะแนน 5 ครั้ง โดยไม่ต้องใช้ลูป d) ใช้ฟังก์ชันเพื่อรับค่าทีละครั้ง แล้วส่งคืนค่าที่ผ่านเกณฑ์ 27) หากนักเรียนมีโค้ดที่ต้องคำนวณภาษีมูลค่าเพิ่มซ้ำ ๆ ในหลายส่วนของโปรแกรม นักเรียนควรออกแบบโค้ดส่วนนี้อย่างไรเพื่อความสะดวกในการใช้งาน a) เขียนโค้ดคำนวณภาษีซ้ำ ๆ ในทุกส่วนของโปรแกรม b) สร้างฟังก์ชันที่รับราคาและส่งคืนราคารวมภาษี แล้วเรียกใช้ฟังก์ชันนี้ในจุดที่ต้องการ c) ใช้โครงสร้างการตัดสินใจเพื่อเลือกใช้โค้ดคำนวณภาษี d) ใช้การทำซ้ำเพื่อคำนวณภาษีในทุก ๆ รอบ 28) นักเรียนต้องออกแบบฟังก์ชันเพื่อตรวจสอบอายุของผู้ใช้และส่งคืนค่า TRUE ถ้าอายุมากกว่าหรือเท่ากับ 18 ปี และส่งคืนค่า FALSE ถ้าอายุน้อยกว่า นักเรียนควรเขียน Pseudocode อย่างไร a) FUNCTION check_age(age): IF age >= 18 THEN RETURN TRUE ELSE RETURN FALSE b) FUNCTION check_age(age): IF age < 18 THEN PRINT FALSE ELSE PRINT TRUE c) FUNCTION check_age(age): PRINT TRUE d) FUNCTION check_age(age): RETURN age 29) นักเรียนต้องการเขียนโปรแกรมเพื่อสร้างเมนูให้ผู้ใช้เลือกทำสิ่งต่าง ๆ และเมนูจะแสดงซ้ำจนกว่าผู้ใช้จะเลือกตัวเลือก "ออก" การใช้ WHILE Loop กับ FOR Loop แบบใดเหมาะสมกว่ากัน และเพราะเหตุใด a) FOR Loop เหมาะสมกว่าเพราะรู้จำนวนตัวเลือกที่แน่นอน b) WHILE Loop เหมาะสมกว่า เพราะไม่รู้จำนวนครั้งที่แน่นอนว่าจะต้องทำงานซ้ำกี่ครั้ง c) ทั้งสองแบบเหมาะสมเท่ากันเพราะทำงานซ้ำเหมือนกัน d) FOR Loop เหมาะสมกว่าเพราะทำงานได้เร็วกว่า 30) หากนักเรียนมีโค้ด 10 บรรทัดที่ทำงานเหมือนกันในหลายส่วนของโปรแกรม นักเรียนควรจัดระเบียบโค้ดนั้นในรูปแบบฟังก์ชันหรือไม่ จงให้เหตุผลประกอบ a) ควรจัดเป็นฟังก์ชัน เพื่อให้โค้ดอ่านง่ายขึ้นและลดการเขียนโค้ดซ้ำ b) ไม่ควรจัดเป็นฟังก์ชัน เพราะทำให้โปรแกรมทำงานช้าลง c) ไม่ควรจัดเป็นฟังก์ชัน เพราะทำให้โค้ดซับซ้อนขึ้น d) ควรจัดเป็นฟังก์ชัน แต่จะใช้เฉพาะเมื่อโค้ดมีความยาวมากกว่า 20 บรรทัดเท่านั้น

Clasament

Stilul vizual

Opţiuni

Comutare șablon

Restaurare activitate salvată automat: ?