You are on page 1of 13

พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 7 ข้อถัดไป

1 data = [[3,2,6,1],[3,1,6,8],[6,8,3,1]]
2 x = y = z = ____
3 for i in range(len(data)):
4 for j in range(len(data[i])):
5 if z  data[i][j]:
6 z = data[i][j]
7 x = i
8 y = j
9 print(x,y,z)

1. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 0
 <
1) 2 3 1 2) 1 3 8 3) 0 0 0 4) 0 3 1

2. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 0
 >
1) 2 3 1 2) 1 3 8 3) 0 0 0 4) 0 3 1

3. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 9
 >
1) 2 3 1 2) 1 3 8 3) 0 0 0 4) 0 3 1

4. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 9
 >=
1) 2 3 1 2) 1 3 8 3) 0 0 0 4) 0 3 1

5. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 6
 ==
1) 6 6 6 2) 1 2 6 3) 0 2 6 4) 2 0 6

6. ถ้าข้อความที่เติมลงในช่องว่าง  และ  กาหนดตามตารางต่อไปนี้ ข้อใดคือการแสดงผลของบรรทัดที่ 9


 7
 ==
1) 7 7 7 2) 1 2 7 3) 0 2 7 4) 2 0 7

ส่วนที่ 1 หน้าที่ 1/13


7. การใช้คาสั่งต่อไปนี้ต่อท้ายโปรแกรมข้างต้น จะทาให้ newData มีค่าอะไร
newData = [x[2] for x in data]
1) Error 2) [6, 8, 3, 1]
3) 6 4) [6, 6, 3]

พิจารณาฟังก์ชันต่อไปนี้ ในการตอบคาถาม 6 ข้อถัดไป


1 def myFunction(data,n,m):
2 if len(data) > (n*m):
3 return -1
4 else:
5 newData = [[0 for i in range(m)] for i in range(n)]
6 for i in range(len(data)):
7 newData[i//m][i%m] = data[i]
8 return newData

8. คาสั่ง print(myFunction([1,2,3,4,5,6],2,3)) แสดงผลอะไร


1) [[1, 2, 3], [4, 5, 6], [0, 0, 0]] 2) [[1, 2], [3, 4], [5, 6]]
3) [[1, 2, 3], [4, 5, 6]] 4) -1
9. คาสั่ง print(myFunction([1,2,3,4,5,6],3,2)) แสดงผลอะไร
1) [[1, 2, 3], [4, 5, 6], [0, 0, 0]] 2) [[1, 2], [3, 4], [5, 6]]
3) [[1, 2, 3], [4, 5, 6]] 4) -1
10. คาสั่ง print(myFunction([1,2,3,4,5,6],2,2)) แสดงผลอะไร
1) [[1, 2, 3], [4, 5, 6], [0, 0, 0]] 2) [[1, 2], [3, 4], [5, 6]]
3) [[1, 2, 3], [4, 5, 6]] 4) -1
11. คาสั่ง print(myFunction([1,2,3,4,5,6],3,3)) แสดงผลอะไร
1) [[1, 2, 3], [4, 5, 6], [0, 0, 0]] 2) [[1, 2], [3, 4], [5, 6]]
3) [[1, 2, 3], [4, 5, 6]] 4) -1
12. คาสั่ง print(myFunction([[1,2,3],[4,5,6]],2,3)) แสดงผลอะไร
1) [[[1, 2, 3], [4, 5, 6]], [0, 0], [0, 0]] 2) [[[1, 2, 3], [4, 5, 6], 0], [0, 0, 0]]
3) [[1, 2, 3], [4, 5, 6]] 4) ไม่แสดงผลเนื่องจากมี Error
13. คาสั่ง print(myFunction([1,2,3,4,5,6],3)) แสดงผลอะไร
1) [[1, 2], [3, 4], [5, 6]] 2) -1
3) [[1, 2, 3], [4, 5, 6]] 4) ไม่แสดงผลเนื่องจากมี Error

พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 5 ข้อถัดไป


1 data = [5,-1,4,3,3,6,1,2,9,10,13,-3,6,3,1,2]
2 a = b = data[0]
3 for i in range(1,len(data)):
4 if data[i]>a:
5 a = data[i]
6 elif data[i]<b:
7 b = data[i]
8 print(a,b)

ส่วนที่ 1 หน้าที่ 2/13


14. โปรแกรมนี้แสดงเอาต์พุตอะไร
1) 5 5 2) 13 -3 3) a, b 4) Error

15. การทางานของโปรแกรมนี้เข้าไปทางานบรรทัดที่ 5 กี่ครั้ง


1) 0 2) 2 3) 4 4) 15

16. การทางานของโปรแกรมนี้เข้าไปทางานบรรทัดที่ 6 กี่ครั้ง


1) 11 2) 14 3) 15 4) 16

17. การทางานของโปรแกรมนี้เข้าไปทางานบรรทัดที่ 7 กี่ครั้ง


1) 0 2) 2 3) 4 4) 16

18. การเปลี่ยนแปลงในข้อใด ที่ทาให้การแสดงผลจากคาสัง่ ในบรรทัดที่ 8 แตกต่างไปจากเดิม


1) เปลี่ยนบรรทัดที่ 1 เป็น data = [8, 11, 13, 3, -3, -5]
2) เปลี่ยนบรรทัดที่ 3 เป็น for i in range(len(data)):
3) เปลี่ยนบรรทัดที่ 4 เป็น if data[i]>=a:
4) เปลี่ยนบรรทัดที่ 6 เป็น if data[i]<b:
19. การกาหนดค่าของลิสต์ a ด้วยคาสั่งต่อไปนี้
a = [x**2 for x in range(5)]

จะมีผลให้ลิสต์ a มีค่าอะไร
1) [0, 1, 4, 9, 16] 2) [0, 1, 2, 3, 4]
3) [0, 2, 4, 6, 8] 4) Error
20. การกาหนดค่าของลิสต์ a ด้วยคาสั่งต่อไปนี้
a = [2*x for x in range(10,20) if x%2 != 0]

จะมีผลให้ลิสต์ a มีค่าอะไร
1) [11, 13, 15, 17, 19] 2) [20, 24, 28, 32, 36]
3) [22, 26, 30, 34, 38] 4) Error

พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 2 ข้อถัดไป


1 def A(a):
2 return a - 1
3
4 def B(b):
5 return b * 2
6
7 AB = A(B(1)) - B(A(1))
8 if AB < 0:
9 print("Foo")
10 elif AB > 0:
11 print("Bar")
12 else:
13 print("Baz")

ส่วนที่ 1 หน้าที่ 3/13


21. โปรแกรมนี้แสดงเอาต์พุตอะไร
1) Foo 2) Bar 3) Baz 4) ไม่แสดงเอาต์พุต

22. จากโปรแกรมนี้ ถ้ามีการเปลี่ยนบรรทัดที่ 7 เป็นดังนี้


AB = A(B(A(1)) - A(B(1)))

โปรแกรมนี้จะแสดงเอาต์พุตอะไร
1) Foo 2) Bar 3) Baz 4) ไม่แสดงเอาต์พุต

พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 4 ข้อถัดไป


1 x = 6
2 def function1(x):
3 x = x + 5
4 print(x, end=" ")
5 return x*3
6
7 def function2(x):
8 x = 10
9 print(x, end=" ")
10 return x
11
12 def function3(y):
13 x = y - 2
14 print(x, end=" ")
15
16 print(x, end=" ")
17 ____________________
18 print(x, end=" ")

23. ถ้าโปรแกรมนี้แสดงเอาต์พุต 6 11 6 ข้อใดเป็นคาสั่งที่เหมาะสมทีจ่ ะเติมในบรรทัดที่ 17


1) x = function1(x) 2) x = function2(x)
3) function1(x) 4) function3(x)
24. ถ้าโปรแกรมนี้แสดงเอาต์พุต 6 4 6 ข้อใดเป็นคาสั่งที่เหมาะสมที่จะเติมในบรรทัดที่ 17
1) x = function1(x) 2) x = function2(0)
3) function3(x) 4) function1(x)
25. ถ้าโปรแกรมนี้แสดงเอาต์พุต 6 10 10 ข้อใดเป็นคาสั่งที่เหมาะสมที่จะเติมในบรรทัดที่ 17
1) x = function1(5) 2) function1(5)
3) x = function2(5) 4) function3(5)
26. ถ้าโปรแกรมนี้แสดงเอาต์พุต 6 10 15 45 6 ข้อใดเป็นคาสั่งที่เหมาะสมที่จะเติมในบรรทัดที่ 17
1) x = function1(function2(x)) 2) print(function2(function1(x)),end= “ ”)
3) function3(function2(x)) 4) print(function1(function2(x)),end= “ ”)

ส่วนที่ 1 หน้าที่ 4/13


พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 7 ข้อถัดไป
1 data = [3, 1, 6, 11, 5, 8]
2 for i in range(len(data)-1):
3 x = data[i]
4 y = i
5 for j in range(i+1,len(data)):
6 if data[j] < x:
7 x = data[j]
8 y = j
9 if i != y:
10 tmp = data[i]
11 data[i] = data[y]
12 data[y] = tmp
13 print(data)

27. การทางานของโปรแกรมนี้ เมื่อสิน้ สุดรอบการทางานของ for ลูปรอบที่ i = 0 แล้ว คาสั่ง print ในบรรทัดที่ 13 จะ
แสดงผลอะไร
1) [3, 1, 6, 11, 5, 8] 2) [1, 3, 6, 11, 5, 8]
3) [11, 1, 6, 8, 5, 3] 4) [1, 3, 5, 8, 6, 11]
28. การทางานของโปรแกรมนี้ เมื่อสิน้ สุดรอบการทางานของ for ลูปรอบที่ i = 2 แล้ว คาสั่ง print ในบรรทัดที่ 13 จะ
แสดงผลอะไร
1) [3, 1, 6, 8, 5, 11] 2) [11, 8, 6, 1, 5, 3]
3) [11, 1, 6, 8, 5, 3] 4) [1, 3, 5, 11, 6, 8]
29. เมื่อสิ้นสุดการทางานของโปรแกรมนี้ มีการเข้าไปทางานในบรรทัดที่ 7-8 รวมทั้งหมดจานวนกี่ครั้ง
1) 0 2) 4 3) 5 4) 7
30. เมื่อสิ้นสุดการทางานของโปรแกรมนี้ มีการเข้าไปทางานในบรรทัดที่ 10-12 รวมทั้งหมดจานวนกี่ครั้ง
1) 0 2) 4 3) 5 4) 7
31. ถ้าเปลี่ยนบรรทัดที่ 1 เป็น data = [5, 4, 3, 2, 1] เมื่อสิ้นสุดการทางานของโปรแกรมนี้ มีการเข้าไปทางานในบรรทัด
ที่ 10-12 รวมทั้งหมดจานวนกี่ครั้ง
1) 0 2) 2 3) 4 4) 5
32. การเปลี่ยนค่าลิสต์ data ในบรรทัดที่ 1 เป็นข้อใดที่จะทาให้โปรแกรมเข้าไปทางานในบรรทัดที่ 10-12 เป็นจานวนครั้ง
มากที่สุด
1) data = [0, 0, 0, 0, 0, 0] 2) data = [1, 3, 5, 8, 10, 16]
3) data = [12, 4, 11, 3, 1, 9] 4) data = [16, 10, 8, 5, 3, 1]

33. การเปลี่ยนแปลงจากโปรแกรมเริ่มแรกในข้อใด ที่ทาให้การแสดงผลบรรทัดสุดท้ายที่ไม่เหมือนเดิม


1) เปลี่ยนบรรทัดที่ 1 เป็น data = [8, 1, 3, 5, 11, 6]
2) เปลี่ยนบรรทัดที่ 5 เป็น for j in range(len(data)):
3) เปลี่ยนบรรทัดที่ 6 เป็น if data[j] <= x:
4) เปลี่ยนบรรทัดที่ 9 เป็น if True:

ส่วนที่ 1 หน้าที่ 5/13


พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 2 ข้อถัดไป
1 def myFunction(a, b, c):
2 temp = c[a]
3 c[a] = c[b]
4 c[b] = temp
5
6 a = [1, 5, 2, 4, 3]
7 b = 3
8 c = 4
9 myFunction(b, c, a)
10 print(a)

34. ผลลัพธ์จากการรันโค้ดโปรแกรมข้างต้นออกทางหน้าจอจะเป็นอย่างไร
1) [1, 5, 2, 4, 3] 2) [1, 5, 2, 3, 4]
3) [5, 4, 3, 2, 1] 4) Error
35. หากแก้ไขบรรทัดที่ 2 เป็น temp = c[b] ผลลัพธ์จากการรันโค้ดโปรแกรมข้างต้นออกทางหน้าจอจะเป็นอย่างไร
1) [1, 2, 2, 4, 3] 2) [1, 2, 5, 4, 3]
3) [1, 5, 2, 3, 3] 4) Error

พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 2 ข้อถัดไป


1 def xoxo(c):
2 e = 0
3 for d in c:
4 e+=d*2
5 return e
6
7 f = input().split()
8 g = [int(h) for h in f]
9 print(xoxo(g))

36. หากผู้ใช้ป้อน input เป็น 3 ผลลัพธ์จากการรันโค้ดโปรแกรมข้างต้นจะเป็นอย่างไร


1) 0 2) 3 3) 6 4) 9
37. หากผู้ใช้ป้อน input เป็น 3 2 1 ผลลัพธ์จากการรันโค้ดโปรแกรมข้างต้นจะเป็นอย่างไร
1) 0 2) 3 3) 6 4) 12

พิจารณาโปรแกรมที่ทางานกับข้อมูล 2 มิติขนาด 3 x 3 ต่อไปนี้ ในการตอบคาถาม 3 ข้อถัดไป


1 def check(tbl):
2 if tbl[0][1]==tbl[1][1]==tbl[2][1]==tbl[1][0]==tbl[1][2]:
3 return tbl[1][1]
4 else:
5 return -1
6
7 x = [[1, 0, 1], [0, 0, 0], [1, 0, 2]]
8 y = check(x)

ส่วนที่ 1 หน้าที่ 6/13


38. ฟังก์ชัน check() ข้างต้น หน้าทีต่ รงกับข้อใด
1) ตรวจสอบข้อมูลในแถวที่ 1 (แถวกลาง) ทั้งหมดว่าเหมือนกันหรือไม่ และมีค่าเท่าใด
2) ตรวจสอบข้อมูลในคอลัมน์ที่ 1 (คอลัมน์กลาง) ทั้งหมดว่าเหมือนกันหรือไม่ และมีค่าเท่าใด
3) ตรวจสอบข้อมูลในแถวที่ 1 (แถวกลาง) และคอลัมน์ที่ 1 (คอลัมน์กลาง) ทั้งหมดว่าเหมือนกันหรือไม่ และมีค่า
เท่าใด
4) ตรวจสอบข้อมูลทั้งหมดว่าเหมือนกันหรือไม่ และมีค่าเท่าใด
39. เมื่อรันโปรแกรมนี้เสร็จสิ้น ค่า y จะมีค่าเป็นอะไร
1) -1 2) 0 3) 1 4) 2
40. ถ้า บรรทัดที่ 7 เปลี่ยนเป็น x = [[0,2,1],[2,2,2],[0,1,2]] ค่า y จะมีค่าเป็นอะไร
1) -1 2) 0 3) 1 4) 2

พิจารณาส่วนต้นของโปรแกรมต่อไปนี้ ในการตอบคาถาม 2 ข้อถัดไป


1 import matplotlib.pyplot as plt
2 x = [1, 5, 3, 0, 1, 2]
3 y = [3, 5, 1, -1, 4, 6]
4 z = [0, 4, 6, 1, 6, 8]

41. คาสั่งในข้อใด ที่จะทาให้ผู้ใช้สามารถสร้างแผนภาพดังต่อไปนีไ้ ด้

1) plt.plot(x) 2) plt.plot(y)
3) plt.plot(x,y) 4) plt.plot(y,x)
42. คาสั่งในข้อใด ที่จะทาให้ผู้ใช้สามารถสร้างแผนภาพดังต่อไปนีไ้ ด้

1) plt.plot(x,y,y,z) 2) plt.plot(x,y,x,z)
3) plt.plot(y,x,y,z) 4) plt.plot(y,x,x,z)

ส่วนที่ 1 หน้าที่ 7/13


43. คาสั่งในข้อใด ทีเ่ ป็นส่วนหนึ่งในการสร้างแผนภาพดังต่อไปนี้ได้

1) plt.xlabel(‘x vs y’) 2) plt.ylabel(‘x vs y’)


3) plt.title(‘x vs y’) 4) plt.legend(‘x vs y’)

44. หากต้องการแสดงแผนภาพหลายๆ แผนภาพในรูปเดียวกัน ผู้ใช้สามารถที่จะใช้ฟังก์ชัน subplot() ในการกาหนด


ตาแหน่งแผนภาพว่าควรจะอยู่ที่ตาแหน่งใด หากต้องการให้แผนภาพที่สนใจอยู่ตาแหน่งตามลูกศรชี้ ดังรูป ผู้ใช้จะ
เรียกใช้ฟังก์ชัน subplot() อย่างไร

1) subplot(2, 4, 7) 2) subplot(4, 2, 7)
3) subplot(7, 2, 4) 4) subplot(7, 4, 2)

ส่วนที่ 1 หน้าที่ 8/13


พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 3 ข้อถัดไป
1 def sma(price, k):
2 result = []
3 for i in range(len(price)):
4 if _____(A)_____:
5 summ = 0
6 for j in range(k-1,0,-1):
7 summ += price[_____(B)_____]
8 result.append(summ/k)
9 else:
10 result.append(None)
11 return result
12
13 price = [100, 110, 150, 140, 100, 90, 60]
14 output = sma(price, 5)

Output ของโค้ดนี้คือ
[None, None, None, None, 120.0, 118.0, 108.0]

45. โค้ดโปรแกรมข้างต้นทาหน้าที่คานวณค่า SMA ของราคาสินทรัพย์ ตามสูตรที่เรียนในชั้นเรียน ซึ่งหมายถึงผลรวมของ


ค่าราคาที่เวลาปัจจุบันและราคาในอดีตอีก k-1 ตัว (รวมเป็น k ตัว) แล้วหารด้วย k เพื่อให้ได้ค่าเฉลี่ย SMA จง
พิจารณาว่าส่วนของโปรแกรม (A) ที่หายไปคือข้อใด ที่จะทาให้ฟังก์ชันดังกล่าวทางานได้ถูกต้อง
1) i >= k - 1 2) i >= k 3) i < k-1 4) i > k+1

46. โค้ดโปรแกรมข้างต้นทาหน้าที่คานวณค่า SMA ของราคาสินทรัพย์ ตามสูตรที่เรียนในชั้นเรียน จงพิจารณาว่าส่วนของ


โปรแกรม (B) ที่หายไปคือข้อใด ที่จะทาให้ฟังก์ชันดังกล่าวทางานได้ถูกต้อง
1) i + j 2) i – k + 1 3) i - j 4) i + j – k + 1
47. หากแก้ไขบรรทัดที่ 14 เป็น output = sma(price, 8) เมื่อทาการรันโปรแกรม output จะมีค่าอะไร
1) None
2) []
3) [None, None, None, None, None, None, None]
4) [‘None’, ‘None’, ‘None’, ‘None’, ‘None’, ‘None’, ‘None’]
48. กาหนดให้ A เป็นอาเรย์ 2 มิติ ที่แต่ละแถวเก็บชุดความยาวของด้านประกอบมุมฉากคู่หนึ่ง หากกาหนดให้ B เป็น
อาเรย์ที่เก็บค่าความยาวของด้านตรงข้ามมุมฉาก ข้อใดเป็นโปรแกรมที่คานวณอาเรย์ B จากอาเรย์ A โดยใช้ทฤษฎีบทพี
ทาโกรัสได้ถูกต้อง โดยผลลัพธ์ที่คาดหวังในกรณีที่ A = np.array([[3,4],[5,12],[24,7]]) คือ B = np.array([ 5,
13, 25])
1) import numpy as np 2) import numpy as np
A = np.array([[3,4],[5,12],[24,7]]) A = np.array([[3,4],[5,12],[24,7]])
B = np.sqrt(np.sum(A**2)) B = np.sqrt(np.sum(A**2, axis=0))

3) import numpy as np 4) import numpy as np


A = np.array([[3,4],[5,12],[24,7]]) A = np.array([[3,4],[5,12],[24,7]])
B = np.sqrt(np.sum(A**2, axis=1)) B = np.sqrt(np.sum(A**2, axis=2))

ส่วนที่ 1 หน้าที่ 9/13


พิจารณาโปรแกรมต่อไปนี้ ในการตอบคาถาม 3 ข้อถัดไป
1 def recommend(a, b):
2 result = ['H']
3 if a[0] < b[0]:
4 ab = -1
5 elif a[0] > b[0]:
6 ab = 1
7 else:
8 ab = 0
9 for i in range(1, len(a)):
10 if a[i]-b[i] > 0 and ab == -1:
11 result.append('B')
12 ab = 1
13 elif a[i]-b[i] < 0 and ab == 1:
14 result.append('S')
15 ab = -1
16 else:
17 result.append('H')
18 return result
19 a = [2, 1, 3, 4, 6, 4, 2, 2, 1]
20 b = [5, 4, 3, 2, 1, 2, 2, 4, 5]
21 c = recommend(a, b)

49. จากโปรแกรมข้างต้นนี้ ค่า c[2] มีค่าเป็นอะไร


1) ‘B’ 2) ‘S’ 3) ‘H’ 4) None
50. จากโปรแกรมข้างต้นนี้ ค่า c[7] มีค่าเป็นอะไร
1) ‘B’ 2) ‘S’ 3) ‘H’ 4) None
51. หากแก้ไขบรรทัดที่ 21 เป็น c = recommend(a, a) เมื่อทาการรันโปรแกรม c จะมีค่าอะไร
1) [‘H’]
2) [‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’]
3) [‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’, ‘H’]
4) Error
52. กาหนดโค้ดตั้งต้นคือ import numpy as np และ x = np.array([[1,2],[3,4],[5,6]]) ข้อใดต่อไปนีไ้ ม่ถูกต้อง
1) y = x + np.array([1,2]) 2) y = x + np.array([[1],[2]])
3) y = x.T + np.array([[1],[2]]) 4) y = x.T + np.array([[1,2]]).T
53. โปรแกรมต่อไปนี้ให้ค่า y เท่ากับเท่าไร
1 import numpy as np
2 x = np.array([[0],[1]])
3 a = np.array([1,2])
4 y = a * (2**(x+1))

1) [[2 4] 2) [2 4]
[4 8]]
3) [2 8] 4) มีข้อผิดพลาดในโปรแกรม

ส่วนที่ 1 หน้าที่ 10/13


54. กาหนดข้อมูลจานวนผู้โดยสารที่ใช้บริการรถไฟฟ้าที่แต่ละสถานี แจกแจงตามวันที่และเส้นทางการเดินรถ ดังตาราง
ต่อไปนี้
สายที่ 1 สายที่ 3
วันที่ สถานีหลัก หน้ามอ สถานีหลัก หอสมุด
1 7 1 6 5
2 5 3 2 11
3 6 2 3 1
4 8 0 3 3
หากเก็บข้อมูลในตารางด้วยตัวแปรอาเรย์
A = np.array([[1,7,1,6,5],[2,5,3,2,11],[3,6,2,3,1],[4,8,0,3,3]])

ข้อใดคือโค้ดที่คานวณผลรวมทั้งหมดของจานวนผู้โดยสารทีใ่ ช้บริการรถทั้ง 2 สายเฉพาะที่สถานีหลักในวันคู่


1) x = (A[:,0] % 2 == 0) 2) print(np.sum(A[1::2,1::2]))
print(np.sum(A[x, 1::2]))
3) x = np.sum(A[1::2], axis=0) 4) ถูกทุกข้อ
print(np.sum(x[1::2]))

55. โปรแกรมต่อไปนี้พิมพ์ค่าใดออกมา
1 import numpy as np
2
3 A = np.array([[1.0, 2.0, 3.0]])
4
5 def compute():
6 X = np.array([[2.0], [3.0], [4.0]])
7 B = np.dot(A,X)
8 B += np.ones(B.shape)
9 return B
10
11 print(compute())

1) [[21.]] 2) [[ 3. 7. 13.]]
3) [[ 3. 5. 7.] 4) โปรแกรมมีข้อผิดพลาดเนื่องจากฟังก์ชัน
[ 4. 7. 10.]
[ 5. 9. 13.]]
compute() ไม่รู้จักตัวแปร A

56. ข้อใดคือผลลัพธ์ของโปรแกรมต่อไปนี้
1 import numpy as np
2 x = [[x, x**2] for x in range(0,4)]
3 x = np.array(x)
4 print(x[:,0] + x[:,1])

1) [6, 14] 2) [10, 30]


3) [0, 2, 6, 12] 4) [0, 2, 6, 12, 20]

ส่วนที่ 1 หน้าที่ 11/13


57. โปรแกรมต่อไปนี้พิมพ์ค่าใดออกมา
1 import numpy as np
2 x = np.array([[1,2,3],[4,5,6]])
3 y = x.T
4 y[0,0] = 10
5 print(x)
6 print(y)

1) x = [[10 2 3] และ y = [[10 4]


[ 4 5 6]] [ 2 5]
[ 3 6]]
2) x = [[1 2 3] และ y = [[10 4]
[4 5 6]] [ 2 5]
[ 3 6]]
3) x = [[1 4] และ y = [[10 4]
[2 5] [ 2 5]
[3 6]] [ 3 6]]
4) x = [[10 4] และ y = [[10 4]
[ 2 5] [ 2 5]
[ 3 6]] [ 3 6]]

58. โปรแกรมต่อไปนี้รับค่า x ที่เป็นลิสต์ 2 มิติที่แต่ละแถวมีจานวนสมาชิกเท่ากัน ข้อใดถูกต้องเกี่ยวกับผลลัพธ์สุดท้ายที่ถูก


พิมพ์ออกมา
1 x = [[1,2,4],[2,1,3],[3,4,2],[4,3,1]]
2
3 output = []
4 for i in range(len(x[0])):
5 tempA = 9999
6 tempB = None
7 for j in range(len(x)):
8 if x[j][i] < tempA:
9 tempA = x[j][i]
10 tempB = j
11 output.append(tempB)
12
13 print(output)

1) ผลลัพธ์ที่ได้เป็นลิสต์ 1 มิติ ที่เก็บตาแหน่งของค่าต่าสุดของแต่ละแถวของ x


2) ผลลัพธ์ที่ได้เป็นลิสต์ 1 มิติ ที่เก็บตาแหน่งของค่าต่าสุดของแต่ละคอลัมน์ของ x
3) ผลลัพธ์ที่ได้เป็นลิสต์ 1 มิติ ที่เก็บตาแหน่งของค่าสูงสุดของแต่ละแถวของ x
4) ผลลัพธ์ที่ได้เป็นลิสต์ 1 มิติ ที่เก็บตาแหน่งของค่าสูงสุดของแต่ละคอลัมน์ของ x

ส่วนที่ 1 หน้าที่ 12/13


59. โปรแกรมต่อไปนี้พิมพ์ข้อความอะไรออกมา
1 def addtwo(x):
2 x += 2
3 return x
4
5 def addtwo_and_sum(x):
6 x = [i+2 for i in x]
7 return x
8
9 a = 8
10 addtwo(a)
11 print('a =', a, end=', ')
12
13 b = [1, 2, 3]
14 print('b =', addtwo_and_sum(b))

1) a = 8, b = [1, 2, 3] 2) a = 8, b = [3, 4, 5]
3) a = 16, b = [1, 2, 3] 4) a = 16, b = [3, 4, 5]

60. พิจารณาฟังก์ชัน number_to_words ต่อไปนี้


1 def number_to_words(n):
2 s = ['A','D','H','P','Y','G','L']
3 for i in range(_______(1)_________):
4 print(________(2)________, end='')
5 print()

จะต้องเติมช่องว่าง (1) และช่องว่าง (2) ด้วยคาสั่งอะไร จึงจะทาให้เมื่อส่งลิสต์ [5,6,0,1] เข้าไป จะทาให้ฟังก์ชันนี้


พิมพ์คาว่า GLAD ออกมา และหากส่งลิสต์ [2,0,3,3,4] เข้าไป จะทาให้ฟังก์ชันพิมพ์คาว่า HAPPY ออกมา
1) เติม len(s) และ n[s[i]] ตามลาดับ 2) เติม len(n) และ n[s[i]] ตามลาดับ
3) เติม len(s) และ s[n[i]] ตามลาดับ 4) เติม len(n) และ s[n[i]] ตามลาดับ

ส่วนที่ 1 หน้าที่ 13/13

You might also like