เขียนตอบแต่ละข้อเริ่มด้วยเลขข้อในรูปแบบ <เลขข้อ>
(ต้องมีเครื่องหมายน้อยกว่าทางซ้าย และมากกว่าขวาของเลขข้อ) ตามด้วยคำตอบของข้อนั้นกี่บรรทัดก็ได้ เช่น
<1> E <2> isEven <3> def f(x): if x < 0: return return x**2และอย่าลืมกด SUBMIT ด้วย (ส่งได้หลายครั้ง จะตรวจครั้งล่าสุด)
<1> | จงเขียนคำสั่งแสดงข้อความสองบรรทัดข้างล่างนี้ทางจอภาพ หากข้าพเจ้าทุจริตหรือช่วยผู้อื่นในการสอบ ขอให้ข้าพเจ้าฝันร้ายทุกวันคู่ |
<2> | ข้อใดตั้งเป็นชื่อฟังก์ชันได้ A) ___________ (****) B) __-__-__-__ C) ._._._._._. D) 2_3_4_5_6_7 E) ไม่มีข้อใดถูก |
<3> | ข้อใดตั้งเป็นชื่อตัวแปรไม่ได้ A) for (****) B) print C) math D) input E) ตั้งเป็นชื่อไม่ได้หลายข้อ |
<4> | คำสั่งข้อใดมีโอกาสเกิด error ตอนทำงาน ให้ถือว่าตัวแปร b กับ c มีค่ากำหนดให้แล้ว A) a = b + c B) a = b / c C) a = b - c D) a = b * c E) มีโอกาสเกิด error ได้ทุกข้อ (****) |
<5> | คำสั่งในข้อใดทำงานแล้วไม่เกิด error ฟังก์ชัน f มีรายละเอียดแสดงข้างล่างนี้ def f(x, y): for e in x: y += e return y A) f('123', '456') (****) B) f({1,2,3}, {4,5,6}) C) f([1,2,3], [1,2,3]) D) f(123, 456) E) มีข้อที่ไม่เกิด error มากกว่า 1 ข้อ |
<6> | ให้ m เป็นจำนวนเต็ม ข้อใดแทนเงื่อนไขว่า m เก็บเลขเดือนของ เดือนที่มีชื่อลงท้ายด้วย ยน A) not(m%2==1 and 0<m<8 or m%2==0 and 7<m<13) and m!= 2 (****) B) 1<=m<=12 or m==2 or m==4 or m==6 or m==9 or m==11 C) 0<m<13 and not(m!=2 and m!=4 and m!=6 and m!=9 and m!=11) D) m is in [4,6,9,11] E) ถูกมากกว่า 1 ข้อ |
<7> | ข้อใดเป็นการเขียนนิพจน์บูลลีนที่ถูกต้อง เพื่อทดสอบว่า a เป็นจำนวนเต็มบวก มีค่าไม่เกิน 100 ที่มีค่าไม่ใช่ 10,11,12,13,14 A) 0 < a and a <= 100 and not (10 <= a and a <= 14) (****) B) 0 < a and a <= 100 or not (10 <= a <= 14) C) 0 < a or a <= 100 and not (10 <= a or a <= 14) D) 0 > a and a >= 100 and not (10 >= a and a <= 14) E) ไม่มีข้อใดถูก |
<8> | ให้ y เก็บเลขปี ค.ศ. เดือน ก.พ. มี 29 วัน เมื่อ y หารด้วย 4 ลงตัว แต่หารด้วย 100 ไม่ลงตัว ยกเว้นกรณีที่ y หารด้วย 400 ลงตัว ก็มี 29 วัน คำสั่งใดที่หาจำนวนวันในเดือนกุมภาพันธ์ของปี y ไม่ถูกต้อง A) d = 28 if y%400==0 or y%4==0 and y%100!=0: d = 29 B) d = 29 if (y%4!=0 or y%100==0) and y%400!=0: d = 28 C) if (y%4==0 and y%100!=0) or y%400==0: d = 29 else: d = 28 D) มีถูก 2 ข้อ ผิด 1 ข้อ E) ข้อ A, B และ C ถูกหมด (****) |
<9> | เครื่องหมายคณิตศาสตร์ใดถูกทำเป็นลำดับที่ 4 ในนิพจน์ 4*5-2%(5+2)/32 A) * B) - C) % D) + E) / (****) |
<9> | เครื่องหมายคณิตศาสตร์ใดถูกทำเป็นลำดับที่ 3 ในนิพจน์ 4*5-2%(5+2)/32 A) * B) - C) % (****) D) + E) / |
<9> | เครื่องหมายคณิตศาสตร์ใดถูกทำเป็นลำดับที่ 5 ในนิพจน์ 4*5-2%(5+2)/32 A) * B) - (****) C) % D) + E) / |
<10> | เมื่อโปรแกรมข้างล่างนี้ทำงาน จะแสดงผลอะไร x = [1,2]+[3,4,5]*1000 print(x.pop(len(x)-5)) A) 1 B) 2 C) 3 D) 4 (****) E) 5 |
<10> | เมื่อโปรแกรมข้างล่างนี้ทำงาน จะแสดงผลอะไร x = [[1,[2,[3,4]]],[5,[6,[7,8]]]] print(x.pop(1)[1][1]) A) 2 B) [3, 4] C) 6 D) 7 E) [7, 8] (****) |
<11> | พิจารณาโปรแกรมข้างล่าง ข้อใดเป็นเท็จ filename = input('Enter a file name: ') myfile = open(filename) text = myfile.readline() print(text) A) แฟ้มที่เปิดในบรรทัดที่ 2 สามารถอ่านได้อย่างเดียว B) ถ้าไม่พบแฟ้มขณะเปิดแฟ้มในบรรทัดที่ 2 ระบบจะสร้างแฟ้มใหม่ (****) C) ถ้า filename เก็บสตริง "data.txt" แฟ้ม data.txt ต้องปรากฏอยู่ในโฟลเดอร์เดียวกับโปรแกรมนี้ จึงจะเปิดแฟ้มได้ D) เมื่อทำคำสั่งที่ 3 ตัวแปร text จะเก็บสตริงเสมอ E) ทุกข้อเป็นจริงหมด |
<12> | ให้ x เก็บจำนวนเต็ม จงเขียนคำสั่งแสดงเลขหลักสิบใน x ถ้าไม่มีเลขที่หลักนี้ ก็แสดง 0 |
<12> | ให้ x เก็บจำนวนเต็ม จงเขียนคำสั่งแสดงเลขหลักร้อยใน x ถ้าไม่มีเลขที่หลักนี้ ก็แสดง 0 |
<12> | ให้ x เก็บจำนวนเต็ม จงเขียนคำสั่งแสดงเลขหลักพันใน x ถ้าไม่มีเลขที่หลักนี้ ก็แสดง 0 |
<12> | ให้ x เก็บจำนวนเต็ม จงเขียนคำสั่งแสดงเลขหลักหมื่นใน x ถ้าไม่มีเลขที่หลักนี้ ก็แสดง 0 |
<12> | ให้ x เก็บจำนวนเต็ม จงเขียนคำสั่งแสดงเลขหลักแสนใน x ถ้าไม่มีเลขที่หลักนี้ ก็แสดง 0 |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<13> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<14> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<15> | จงเขียนคำสั่งที่ทำงานตาม flowchart ข้างล่างนี้ ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<16> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<17> | จงเขียนคำสั่งที่คำนวณสูตรข้างล่างนี้ (มีตัวแปรทุกตัวให้ใช้แล้ว) ![]() |
<18> | ฟังก์ชัน f(x) ข้างล่างนี้ รับจำนวนเต็มบวก x คืนลิสต์จำนวนเฉพาะต่าง ๆ ที่เป็นตัวประกอบของ x เช่น f(63) คืน [3,3,7] จงเติมคำสั่งแทนที่ 1111 และ 2222 เพื่อให้ f ทำงานถูกต้อง def f(x): fac = [] k = 2 while 1111 : # <------ while 2222 : # <------ x = x//k fac.append(k) k += 1 return fac Solution: 1111 คือ k <= x 2222 คือ x%k == 0 |
<19> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นลิสต์เก็บ tuples แต่ละ tuple มีสองช่องเก็บสตริงทั้งสองช่อง ผลลัพธ์ที่ f คืนคือลิสต์ที่มีข้อมูลเหมือน x แต่เรียงลำดับจากน้อยไปมาก (ซ้ายไปขวา) ตามเงื่อนไขดังนี้ - เรียงน้อยไปมากตามจำนวนตัวสระอังกฤษที่มีซ้ำทั้งใน สตริงสองตัวใน tuple (ถ้าสระตัวเดียวกันมีซ้ำหลายครั้ง ให้นับครั้งเดียว) - ถ้าจำนวนนับในข้อที่แล้วเท่ากัน ให้เรียงตามลำดับที่ปรากฎใน x - ให้ถือว่า ไม่มีตัวอักษรพิมพใหญ่ในสตริงเลย เช่น x = [('au','ua'),('ede','ee'),('aa','xa')] ผลคือ [('ede','ee'),('aa','xa'),('au','ua')] เพราะ x[0] มี a กับ u เป็นตัวซ้ำ, x[1] มี e เป็นตัวซ้ำ และ x[2] มี a เป็นตัวซ้ำ x[1] กับ x[2] มีจำนวนซ้ำเท่ากัน แต่ x[1] อยู่ทางซ้ายของ x[2] ใน x ดังนั้น x[1] จึงต้องอยู่ทางซ้ายของ x[2] ในผลลัพธ์ |
<19> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นลิสต์เก็บ tuples แต่ละ tuple มีสองช่องเก็บสตริงทั้งสองช่อง ผลลัพธ์ที่ f คืนคือลิสต์ที่มีข้อมูลเหมือน x แต่เรียงลำดับจากน้อยไปมาก (ซ้ายไปขวา) ตามเงื่อนไขดังนี้ - เรียงน้อยไปมากตามจำนวนตัวเลขที่มีซ้ำทั้งใน สตริงสองตัวใน tuple (ถ้าตัวเลขตัวเดียวกันมีซ้ำ หลายครั้ง ให้นับครั้งเดียว) - ถ้าจำนวนนับในข้อที่แล้วเท่ากัน ให้เรียงตามลำดับที่ปรากฎใน x เช่น x = [('12','21'),('8d8','88'),('66','x6')] ผลคือ [('8d8','88'),('66','x6'),('12','21')] เพราะ x[0] มี 1 กับ 2 เป็นตัวซ้ำ, x[1] มี 8 เป็นตัวซ้ำ และ x[2] มี 6 เป็นตัวซ้ำ x[1] กับ x[2] มีจำนวนซ้ำเท่ากัน แต่ x[1] อยู่ทางซ้ายของ x[2] ใน x ดังนั้น x[1] จึงต้องอยู่ทางซ้ายของ x[2] ในผลลัพธ์ |
<19> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นลิสต์เก็บ tuples แต่ละ tuple มีสองช่องเก็บสตริงทั้งสองช่อง ผลลัพธ์ที่ f คืนคือลิสต์ที่มีข้อมูลเหมือน x แต่เรียงลำดับจากน้อยไปมาก (ซ้ายไปขวา) ตามเงื่อนไขดังนี้ - เรียงน้อยไปมากตามจำนวนสระอังกฤษในสตริงทั้งสอง ของ tuple (ถ้ามีสระซ้ำหลายตัว ให้นับครั้งเดียว) - ถ้าจำนวนนับในข้อที่แล้วเท่ากัน ให้เรียงตามลำดับที่ปรากฎใน x - ให้ถือว่า ไม่มีตัวอักษรพิมพใหญ่ในสตริงเลย เช่น x = [('aq','ae'),('ax','xsa'),('ai','sia')] ผลคือ [('ax','xsa'),('aq','ae'),('ai','sia')] เพราะ x[0] มี a กับ e, x[1] มี a และ x[2] มี a กับ i x[0] กับ x[2] มีจำนวนสระเท่ากัน แต่ x[0] อยู่ทางซ้ายของ x[2] ใน x ดังนั้น x[0] จึงต้องอยู่ทางซ้ายของ x[2] ในผลลัพธ์ |
<19> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นลิสต์เก็บ tuples แต่ละ tuple มีสองช่องเก็บสตริงทั้งสองช่อง ผลลัพธ์ที่ f คืนคือลิสต์ที่มีข้อมูลเหมือน x แต่เรียงลำดับจากน้อยไปมาก (ซ้ายไปขวา) ตามเงื่อนไขดังนี้ - เรียงน้อยไปมากตามจำนวนตัวเลขในสตริงทั้งสอง ของ tuple (ถ้ามีตัวเลขซ้ำหลายตัว ให้นับครั้งเดียว) - ถ้าจำนวนนับในข้อที่แล้วเท่ากัน ให้เรียงตามลำดับที่ปรากฎใน x เช่น x = [('1x','21'),('4x','qs4'),('25','5i2')] ผลคือ [('4x','qs4'),('1x','21'),('25','5i2')] เพราะ x[0] มี 1 กับ 2, x[1] มี 4 และ x[2] มี 2 กับ 5 x[0] กับ x[2] มีจำนวนตัวเลขเท่ากัน แต่ x[0] อยู่ทางซ้ายของ x[2] ใน x ดังนั้น x[0] จึงต้องอยู่ทางซ้ายของ x[2] ในผลลัพธ์ |
<20> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นจำนวนเต็ม แล้วคืนว่ามีตัวเลข (digit) กี่ตัวใน x ที่เป็น จำนวนคู่ เช่น f(123402) คืน 4 เพราะมีเลข 2, 4, 0 และ 2 เป็นจำนวนคู่ |
<20> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นจำนวนเต็ม แล้วคืนว่ามีตัวเลข (digit) กี่ตัวใน x ที่เป็น จำนวนคี่ เช่น f(12399) คืน 4 เพราะมีเลข 1, 3, 9 และ 9 เป็นจำนวนคี่ |
<20> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นจำนวนเต็ม แล้วคืนว่ามีตัวเลข (digit) กี่ตัวใน x ที่มีค่า เกิน 5 เช่น f(1639958) คืน 4 เพราะมีเลข 6, 9, 9 และ 8 มีค่าเกิน 5 |
<20> | จงเขียนฟังก์ชัน f(x) ที่รับ x เป็นจำนวนเต็ม แล้วคืนว่ามีตัวเลข (digit) กี่ตัวใน x ที่มีค่า น้อยกว่า 5 เช่น f(1633459) คืน 4 เพราะมีเลข 1, 3, 3 และ 4 มีค่าน้อยกว่า 5 |
<21> | source code ของภาษา Python ใช้เครื่องหมาย # เป็นตัวระบุจุดเริ่มต้นของ comment ในบรรทัด เราสามารถ เขียน # เป็นตัวแรกของบรรทัด (อาจนำหน้าด้วยช่องว่าง) เสมือนให้ทั้งบรรทัดเป็น comment จงเขียนโปรแกรมอ่านแฟ้ม prog.py เพื่อตัดบรรทัดที่เป็น comment ออกทั้งบรรทัด แล้วนำผลที่ได้บันทึกในแฟ้ม out.py เช่น prog.py มี code คือ # sample f = input() # user input for e in f: # a comment line print(e, "###") # done จะได้ out.py มี code คือ f = input() # user input for e in f: print(e, "###") |
<21> | แฟ้มหนึ่งชื่อ in.txt มีข้อความหลายบรรทัด บรรทัดไหนที่ขึ้นต้นด้วย -- (อาจมีช่องว่างนำหน้า) หมายความว่า ผู้สร้างแฟ้ม ไม่สนใจบรรทัดนั้น ตัดออกได้ จงเขียนโปรแกรมอ่านแฟ้ม in.txt เพื่อตัดบรรทัดที่ ขึ้นต้นด้วย -- ออกทั้งบรรทัด แล้วนำผลที่ได้บันทึกในแฟ้ม out.txt เช่น in.txt มีข้อมูลคือ this is the first line -- second line is not important -- so is the third line but this line is Okay จะได้ out.txt มีข้อมูล คือ this is the first line but this line is Okay |
<21> | แฟ้มหนึ่งชื่อ in.txt มีข้อความหลายบรรทัด นาย A ไม่ชอบบรรทัดที่มีคำ (หรือส่วนของคำ) ว่า Mr.A จงเขียนโปรแกรมอ่านแฟ้ม in.txt เพื่อตัดบรรทัดที่นาย A ไม่ชอบออกทั้งบรรทัด แล้วนำผลที่ได้บันทึกในแฟ้ม out.txt เช่น in.txt มีข้อมูลคือ This is the story of my boss whose name is Mr.A. I call him "Mr.A The dude". I don't like him. จะได้ out.txt มีข้อมูล คือ This is the story of my boss I don't like him. |
<22> | ฟังก์ชัน f(x) ข้างล่างนี้ทำอะไร อธิบายสั้น ๆ ไม่เกิน 30 คำ def f(x): if len(x)==0: return 0 y = sorted(x) c = y[0] k = 1 m = 1 for e in y[1:]: if e == c: k += 1 else: m = max(m, k) c = e k = 1 return m Solution: x มีตัวซ้ำกันมากสุดกี่ตัว f([1,3,1,1,2,1,1]) -> 5 |
<22> | ฟังก์ชัน f(x) ข้างล่างนี้ทำอะไร อธิบายสั้น ๆ ไม่เกิน 30 คำ def f(x): if len(x)==0: return 0 c = x[0] k = 1 m = 1 for e in x[1:]: if c < e: k += 1 if k > m: m = k else: k = 1 c = e return m Solution: x มีตัวที่ติดกันมีค่าเพิ่มขึ้นเรื่อย ๆ มากสุดกี่ตัว f([1,2,3,3,4,5,9,1]) --> 4 |
<22> | ฟังก์ชัน f(x) ข้างล่างนี้ทำอะไร อธิบายสั้น ๆ ไม่เกิน 30 คำ def f(x): if len(x)==0: return 0 c = x[0] k = 1 m = 1 for e in x[1:]: if c > e: k += 1 if k < m: m = k else: k = 1 c = e return m Solution: x มีตัวที่ติดกันมีค่าลดลงเรื่อย ๆ มากสุดกี่ตัว f([9,4,3,8,6,5,4,1,9]) -> 5 |
<22> | ฟังก์ชัน f(x) ข้างล่างนี้ทำอะไร อธิบายสั้น ๆ ไม่เกิน 30 คำ def f(x): if len(x)==0: return 0 c = x[0] k = 1 m = 1 for e in x[1:]: if c == e: k += 1 if k > m: m = k else: k = 1 c = e return m Solution: x มีตัวที่ติดกันเท่ากันมากสุดกี่ตัว f([2,3,1,1,1,2,2,2,2,1,3,1]) -> 4 |
<23> |