TopStudy

Đáp án và lời giải

Đề thi cuối kì 2 Tin học 10 Kết nối tri thức có đáp án - Đề 3

Về trang đề

Câu 1

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 2

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 3

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 4

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 5

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 6

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 7

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 8

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 9

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 10

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 11

Lời giải do TopStudy biên soạn

Đáp án: C

Đáp án đúng là: C

Câu 12

Lời giải do TopStudy biên soạn

Đáp án: D

Đáp án đúng là: D

Câu 13

Lời giải do TopStudy biên soạn

Đáp án: C

Đáp án đúng là: C

Câu 14

Lời giải do TopStudy biên soạn

Đáp án: D

Đáp án đúng là: D

Câu 15

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 16

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 17

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 18

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 19

Lời giải do TopStudy biên soạn

Đáp án: A

Đáp án đúng là: A

Câu 20

Lời giải do TopStudy biên soạn

Đáp án: B

Đáp án đúng là: B

Câu 21

Lời giải do TopStudy biên soạn

  • a) Đúng

  • b) Đúng

  • c) Sai

  • d) Sai

a) Đ, Các biến x, y, z là các biến cục bộ của chương trình, vì x, y, z được khai báo bên trong thân hàm.

b) Đ, vì x, y được khai báo ngoài hàm.

c) S. Ta có z=15;x=x*3=5*3=15;y=x+y=15+6=21; vì return x+y+z=15+15+21=51.

d) S, khi thực hiện lệnh >>>z thì máy sẽ báo lỗi vì biến z chỉ có tác dụng bên trong hàm Ham, gọi bên ngoài hàm này sẽ bị báo lỗi.

Câu 22

Lời giải do TopStudy biên soạn

  • a) Đúng

  • b) Sai

  • c) Sai

  • d) Đúng

a) Đ, vì trong hàm uscln(a, b) hay bscnn(a, b) thì các tham số đều là a, b. Nó được khai báo ngay sau tên hàm trong phần khai báo hàm.

b) S, vì chương trình sẽ báo lỗi, do các biến x, y chưa có giá trị.

c) S, vì lời gọi hàm lỗi do có 3 đối số 9, 6, 3 trong khi khai báo hàm chỉ khai báo 2 tham số a, b.

d) Đ, vì a, b nằm sau tên hàm trong lời gọi hàm.

Câu 23

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

n = int(input("Nhập số lượng phần tử N: "))

input_str = input("Nhập dãy gồm N số nguyên: ")

A = [int(x) for x in input_str.split()]

print("Các số dương trong dãy là: ")

found = False

for x in A:

if x > 0:

print(x, end=" ")

found = True

if not found:

print("Không có số dương nào trong dãy.")

Câu 24

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Có, chương trình này có sinh ra lỗi khi chạy.

Mã lỗi

Khi vòng lặp chạy đến giá trị cuối cùng của range, chương trình sẽ báo lỗi: IndexError: list index out of range.

Nguyên nhân gây ra lỗi

- Dãy A có 5 phần tử, nên len(A) = 5.

- Hàm range(1, len(A) + 1) sẽ tạo ra các giá trị cho k từ 1 đến 5 (bao gồm: 1, 2, 3, 4, 5)

- Trong Python, chỉ số (index) của danh sách (list) bắt đầu từ 0 đến len(A) - 1 (tức là từ 0 đến 4)

- Khi k = 5, câu lệnh print(A[k]) trở thành print(A[5]), lúc này chỉ số 5 nằm ngoài phạm vi cho phép của danh sách A.

Cách sửa lỗi: bạn có thể sửa lại hàm range() theo các cách sau: Nếu muốn in các phần tử từ vị trí chỉ số 1 đến hết danh sách (bỏ qua phần tử đầu tiên A[0])

Sửa range(1, len(A) + 1) thành range(1, len(A)) để k chỉ chạy từ 1 đến 4.