Bài tập củng cố Tin học 10 kết nối: bài 23 Một số lệnh làm việc với dữ liệu danh sách

Bài tập củng cố môn Tin học 10 kết nối tri thức: Bài 23 Một số lệnh làm việc với dữ liệu danh sách. Phần bài tập gồm 4 mức độ: Nhận biết, Thông hiểu, Vận dụng và Vận dụng cao bám sát với chương trình sách giáo khoa. Thông qua bài tập này, học sinh có thể ôn luyện kiến thức đã học từ cơ bản đến nâng cao.

Nội dung chi tiết

BÀI 23: MỘT SỐ LỆNH LÀM VIỆC VỚI DỮ LIỆU DANH SÁCH (15 CÂU)

I. NHẬN BIẾT (2 CÂU)

Câu 1: Toán tử in trong Python là gì? Nêu cú pháp để sử dụng toán tử in.

Trả lời:

Toán tử in là lệnh dùng để kiểm tra một phần tử có nằm trong danh sách đã cho hay không. Kết quả trả lại sẽ là True (Đúng) hoặc False (Sai).

Cú pháp để sử dụng toán tử in là: <giá trị> in <danh sách>

Câu 2: Kể tên các lệnh làm việc với dữ liệu danh sách.

Trả lời:

Để làm việc với dữ liệu danh sách sẽ có các lệnh như là: append(), insert(), clear() và remove().

II. THÔNG HIỂU (5 CÂU)

Câu 1: Nêu từng chức năng của các lệnh mà em liệt kê ở Câu 2 (Nhận biết)

Trả lời:

append(): Bổ sung phần tử vào cuối danh sách.

insert(): Chèn một phần tử vào một ví trí (được xác định) trong danh sách.

clear(): Xóa toàn bộ dữ liệu trong danh sách.

remove(): Xóa một phần tử (được xác định) trong danh sách.

Câu 2: Ngoài những lệnh kể trên em có thể biết thêm một số lệnh làm việc khác cùng với dữ liệu danh sách, hãy kể tên.

Trả lời:

Một số lệnh làm việc khác như là: index() dùng để lấy một vị trí của một phần tử trong danh sách, sort() để sắp xếp các phần tử trong danh sách, reverse() đảo ngược thứ tự các phần tử trong danh sách, count() dùng để đếm số lần xuất hiện của một phần tử có trong danh sách…

Câu 3: Cho một danh sách A rỗng. Hỏi có thể sử dụng lệnh remove() đối với danh sách A không? Vì sao.

Trả lời:

Có thể sử dụng lệnh remove() đối với danh sách A, nhưng nó dẫn đến lỗi. Lý do vì lệnh remove() là lệnh xóa phần tử yêu cầu phần tử cần xóa phải tồn tại trong danh sách, khi danh sách A rỗng, không có phần tử nào có thể xóa, do đó lệnh remove() sẽ báo lỗi.

Câu 4: Viết cú pháp của lệnh insert() và giải thích.

Trả lời:

Cú pháp của lệnh insert() là:

<danh sách>.insert(<index>, <object>)

Trong đó:

<danh sách> là tên của danh sách muốn chèn phần tử.

<index> là vị trí cần chèn phần tử.

<object> đối tượng hay phần tử cần chèn.

Câu 5: Khi nào thì lệnh A.append(1) và A.insert(0,1) có tác dụng giống nhau?

Trả lời:

Lệnh A.append(1) và A.insert(0,1) có tác dụng giống nhau khi danh sách A rỗng, chưa có phần tử nào.

III. VẬN DỤNG (6 CÂU)

Câu 1: Hãy dùng toán tử in để kiểm tra xem số 4, 7 và 10 có nằm trong danh sách A hay không. Viết kết quả của từng trường hợp.

A = [1, 2, 3, 4, 5, 6, 7, 8, 9]

Trả lời:

A = [1, 2, 3, 4, 5, 6, 7, 8, 9]

4 in A // True

7 in A // True

10 in A // False

Câu 2: Giả sử A = [“0”, “1”, “01”, “10”]. Các biểu thức sau trả về giá trị đúng hay sai?

a) 1 in A

b) “01” in A

Trả lời:

a) Sai. Vì 1 trong danh sách A là đang ở dạng str.

b) True.

Câu 3: Danh sách A trước và sau lệnh insert() là [1,4,10,0] và [1,4,10,5,0]. Lệnh đã dùng gì?

Trả lời:

Câu lệnh đã dùng là: A.insert(3,5)

Câu 4: Cho dãy số A = [0, 1, -5, -10, 4, 12, -987, -5]. Viết chương trình xóa đi các phần tử có giá trị nhở hơn 0 từ A.

Trả lời:

A = [0, 1, -5, -10, 4, 12, -987, -5]

i = 0

while i < len(A):

if A[i] < 0:

A.remove(A[i])

Else:

i = i + 1

print(A)

Câu 5: Cho dãy số A = [1,2,3,4,5,5]. Viết lệnh thực hiện:

a) Chèn số 1 vào ngay sau giá trị 1 của dãy.

b) Chèn số 3 và số 4 vào danh sách để dãy có số 3 và số 4 liền nhau hai lần.

Trả lời:

*Gợi ý:

a) Chèn số 1 vào ngay sau giá trị 1 của dãy: A.insert(1,1)

b) Chèn số 3 và số 4 vào danh sách để dãy có số 3 và số 4 liền nhau hai lần: A.insert(4,3), A.insert(5,4)

Câu 6: Cho trước dãy số A. Viết một chương trình thực hiện 2 công việc sau:

- Xoá đi một phần tử ở chính giữa dãy nếu số phần tử của dãy là số lẻ.

- Xoá đi hai phần tử ở chính giữa của dãy nếu số phần tử của dãy là số chẵn.

Trả lời:

*Gợi ý:

if (len(A) % 2 != 0):

A.delete(A[len(A) // 2])

else:

A.delete(A[len(A) / 2])

A.delete(A[len(A) // 2])

IV. VẬN DỤNG CAO (2 CÂU)

Câu 1: Viết chương trình nhập n từ bàn phím, tạo và in ra màn hình dãy số A bao gồm n số tự nhiên chẵn đầu tiên.

Trả lời:

n = int(input("Nhập số tự nhiên n: "))

i = 0

m = 0

while i < 100:

if (m % 2 == 0):

A.append(m)

m = m + 1

i = i + 1

print(A)

Câu 2: Dãy số Fibonacci được xác định như sau:

F0 = 0

F1 = 1

Fn = Fn - 1 + Fn – 2 (với n ≥ 2)

Viết chương trình nhập n từ bàn phím, tạo và in ra màn hình dãy số A bao gồm n số hạng đầu của dãy Fibonacci

Trả lời:

n = int(input("Nhập số tự nhiên n: "))

i = 2

A = [0,1]

F0 = 0

F1 = 1

while i < 100:

m = A[i - 1] + A[i – 2]

A.append(m)

i= i + 1

print(A)