Bài toán tìm số abc 16 ab 256 năm 2024

Bài 23. Một số lệnh làm việc với dữ liệu danh sách SGK TIn học 10 Kết nối tri thức

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

Lựa chọn câu để xem lời giải nhanh hơn

Khởi động

Trả lời câu hỏi mở đầu trang 115 SGK Tin học 10

Trong bài trước chúng ta đã biết dùng lệnh append để thêm phần tử vào cuối một danh sách.

Vậy Python có lệnh nào dùng để:

- Xóa nhanh một danh sách

- Chèn thêm một phần tử vào đầu hay giữa danh sách?

- Kiểm tra một phần tử có nằm trong một danh sách không?

Phương pháp giải:

Dựa vào lý thuyết trong bài 23

Lời giải chi tiết:

- Xóa nhanh một danh sách: clear()

- Chèn phần tử x vào vị trí k của danh sách: insert(k,x)

- Kiểm tra một phần tử có nằm trong một danh sách không: Câu lệnh dùng toán tử in. Nếu có trả lại True, nếu không thì trả về False.

Hoạt động 1

Trả lời câu hỏi Hoạt động 1 trang 115 SGK Tin học 10

Quan sát ví dụ sau để biết cách dùng toán tử in để duyệt một danh sách.

Bài toán tìm số abc 16 ab 256 năm 2024
Bài toán tìm số abc 16 ab 256 năm 2024

Phương pháp giải:

Quan sát ví dụ

Lời giải chi tiết:

- Toán tử in dùng để kiểm tra một phần tử có nằm trong danh sách đã cho không. Kết quả trả lại True hoặc False: in

- Có thể duyệt nhanh từng phần tử của danh sách bằng toán tử in và lệnh for mà không cần sử dụng range

? mục 1

Trả lời câu hỏi mục 1 trang 116 SGK Tin học 10

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

  1. 1 in A
  1. “01” in A

Phương pháp giải:

Toán tử in dùng để kiểm tra một phần tử có nằm trong danh sách đã cho không. Kết quả trả lại True hoặc False: in

Lời giải chi tiết:

  1. False
  1. True

2. Hãy giải thích ý nghĩa của từ khoá in trong câu lệnh sau:

Bài toán tìm số abc 16 ab 256 năm 2024

Phương pháp giải:

Có thể duyệt lần lượt các phần tử của danh sách bằng lệnh for kết hợp với vùng giá trị của lệnh range()

Lời giải chi tiết:

Khi thực hiện lệnh này, biến i lần lượt nhận các giá trị từ 0, 1, …, 8, 9

Hoạt động 2

Trả lời câu hỏi Hoạt động 2 trang 116 SGK Tin học 10

Tìm hiểu một số lệnh làm việc với danh sách

Quan sát ví dụ sau để tìm hiểu một số lệnh làm việc với dữ liệu kiểu danh sách.

Phương pháp giải:

Quan sát ví dụ để tìm hiểu

Lời giải chi tiết:

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

insert(k, x): chèn phần tử x vào vị trí k của danh sách

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

remove(x): Xóa phần tử x từ danh sách

? mục 2

Trả lời câu hỏi mục 2 trang 117 SGK Tin học 10

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

Phương pháp giải:

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

insert(k, x): chèn phần tử x vào vị trí k của danh sách

Lời giải chi tiết:

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

  1. 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 là gì?

Phương pháp giải:

insert(k, x): chèn phần tử x vào vị trí k của danh sách

Lời giải chi tiết:

Lệnh đã dùng insert(3,5)

Luyện tập

Trả lời câu hỏi Luyện tập trang 118 SGK Tin học 10

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

  1. Chèn số 1 vào ngay sau giá trị 1 của dãy
  1. 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

Phương pháp giải:

insert(k, x): chèn phần tử x vào vị trí k của danh sách

Lời giải chi tiết:

  1. Chèn số 1 vào ngay sau giá trị 1 của dãy: A.insert(1,1)
  1. 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(3,4), A.insert(5,4)

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

- Xóa đ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ẻ.

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

Phương pháp giải:

Dựa vào kiến thức đã học để viết chương trình

A = [11, 50, 26, 87, 59]

C = len(A)

if C%2 != 0:

  1. remove (A[C//2])

else:

  1. remove (A[C//2])

C = C - 1

  1. remove(A[C//2])

print (A)

Bài toán tìm số abc 16 ab 256 năm 2024

Vận dụng

Trả lời câu hỏi Vận dụng trang 118 SGK Tin học 10

  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.

Phương pháp giải:

Dựa vào kiến thức đã học để viết chương trình

Lời giải chi tiết:

A = []

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

if n<1:

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

for i in range (0,n):

A.append(i*2)

print ("Dãy số A là:", A)

Bài toán tìm số abc 16 ab 256 năm 2024

  1. 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.

Phương pháp giải:

Dựa vào kiến thức đã học để viết chương trình

Lời giải chi tiết:

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

if n<1:

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

if n == 1 or n == 2:

if n == 1:

A = [0]

else:

A = [0,1]

else:

A = [0,1]

for i in range (n-2):

A.append(A[i]+A[i+1])

print("Dãy số A là:", A)

Bài toán tìm số abc 16 ab 256 năm 2024

  • Bài 24. Xâu kí tự SGK Tin học 10 Kết nối tri thức Các xâu kí tự sau có hợp lệ không? a) “123&*()+-ABC” b) “1010110&0101001” c) “Tây Nguyên” d) 11111111 = 256
  • Bài 25. Một số lệnh làm việc với xâu kí tự SGK Tin học 7 Kết nối tri thức Quan sát các ví dụ sau để tìm hiểu cách kiểm tra xâu con và tìm kiếm vị trí xâu con trong xâu kí tự.
  • Bài 26. Hàm trong Python SGK Tin học 10 Kết nối tri thức Em có thể kể tên một số hàm trong số các lệnh đã học không? Các hàm đó có những đặc điểm chung gì?
  • Bài 27. Tham số của hàm SGK Tin học 10 Kết nối tri thức Quan sát các lệnh sau và cho biết sự khác nhau giữa các tham số (parameter) và đối số (argument). Bài 28. Phạm vi của biến SGK Tin học 10 Kết nối tri thức

Một biến được định nghĩa trong chương trình chính (bên ngoài các hàm) thì sẽ được sử dụng như thế nào bên trong các hàm?