Mục lục bài viết
1. Để tính tổng s của hai số 5 và 6, s thuộc kiểu dữ liệu nào?
Câu hỏi: Để tính tổng s của hai số 5 và 6, s thuộc kiểu dữ liệu:
A. int
B. float
C. bool
D. str
Trả lời:
Đáp án đúng là: A
Vì s = 5 + 6 = 11 là một số nguyên
2. Lý thuyết Tin học 10 Bài 22: Kiểu dữ liệu danh sách
2.1. Kiểu dữ liệu danh sách
- Trong Python, list là một kiểu dữ liệu đại diện cho danh sách các phần tử. Để tạo một danh sách, ta sử dụng lệnh gán và đặt các phần tử trong cặp dấu ngoặc [].
- Kiểu dữ liệu danh sách trong Python được khởi tạo như sau:
<tên list> = [<v1>, <v2>, …, <vn>]
Chú ý rằng các giá trị `<vk>` có thể thuộc các kiểu dữ liệu khác nhau như số nguyên, số thực, chuỗi kí tự, vv.
- Ta có thể truy cập từng phần tử trong danh sách bằng cách sử dụng chỉ số:
[<chỉ số>]
Ví dụ: Để tạo một danh sách rỗng (có độ dài 0) và thực hiện các phép toán ghép danh sách (+).
2.2. Duyệt các phần tử của danh sách
Bạn có thể duyệt từng phần tử của danh sách bằng cách sử dụng vòng lặp for kết hợp với vùng giá trị của lệnh range().
- Ví dụ 1: Để duyệt và in ra từng phần tử của danh sách:
Ở đây, biến i sẽ chạy qua các chỉ số từ 0 đến len(A) - 1.
- Ví dụ 2: Để duyệt và in ra một phần của danh sách.
2.3. Thêm phần tử vào danh sách
Trong Python, có một số phương thức đặc biệt được sử dụng cho kiểu dữ liệu danh sách.
Cú pháp chung là:
.<phương thức>
Một trong những phương thức phổ biến là .append(), được sử dụng để thêm một phần tử vào cuối danh sách. Ví dụ: để thêm một phần tử vào cuối danh sách.
Thực hành
Bài toán 1: Đầu tiên, nhập số nguyên n từ bàn phím, sau đó nhập danh sách gồm n tên của các bạn trong lớp và in ra danh sách này, mỗi tên trên một dòng.
Hướng dẫn: Sử dụng phương thức append() để thêm từng tên vào danh sách. Lưu ý, vì vùng giá trị của lệnh range(n) bắt đầu từ 0, nên trong thông báo nhập cần sử dụng str(i+1) để bắt đầu từ 1.
Bài toán 2: Nhập một dãy số từ bàn phím, tính tổng và trung bình của dãy, sau đó in dãy số trên một hàng ngang.
Hướng dẫn: Sử dụng hàm int() để chuyển đổi dữ liệu nhập thành số nguyên.
Chương trình:
3. Bài tập vận dụng liên quan
Câu 1. Chương trình sau thực hiện công việc gì?
A=[]
for i in range(1, 1001):
if(i % 7 == 0) and (i % 5 !=0):
A.append(str(i))
print(','.join(A))
A. Tìm tất cả các số chia hết cho 7 nhưng không phải bội số của 5, nằm trong đoạn 1 và 1000.
B. Tìm tất cả các số chia hết cho 7 nhưng không phải bội số của 5, nằm trong đoạn 1 và 1000 và chuỗi thu được in trên một dòng, có dấu “,” ngăn cách giữa các số.
C. Tìm tất cả các số chia hết cho 7 và là bội số của 5, nằm trong đoạn 1 và 1000.
D. Tìm tất cả các số không chia hết cho 7 nhưng là phải bội số của 5, nằm trong đoạn 1 và 1000.
Hướng dẫn giải:
Đáp án đúng là: B
Chương trình trên tìm tất cả các số từ 1 đến 1000 mà chia hết cho 7 nhưng không chia hết cho 5, sau đó in các số này trên cùng một dòng, phân tách bằng dấu ','.
Câu 2. Đối tượng dưới đây thuộc kiểu dữ liệu nào?
A = [1, 2, ‘3’]
A. list.
B. int.
C. float.
D. string.
Hướng dẫn giải:
Đáp án đúng là: A
Dữ liệu kiểu mảng list là tập hợp các phần tử có thứ tự và mỗi một phần tử trong mảng có thể có các kiểu dữ liệu khác nhau.
Câu 3. Phương thức nào sau đây dùng để thêm phần tử vào list trong python?
A. abs().
B. link().
C. append().
D. add().
Hướng dẫn giải:
Đáp án đúng là: C
Phương thức append() thêm phần tử vào cuối danh sách.
Câu 4. Danh sách A sẽ như thế nào sau các lệnh sau?
>>> A = [2, 3, 5, 6]
>>> A. append(4)
>>> del (A[2])
A. 2, 3, 4, 5, 6, 4.
B. 2, 3, 4, 5, 6.
C. 2, 4, 5, 6.
D. 2, 3, 6, 4.
Hướng dẫn giải:
Đáp án đúng là: D
Thêm phần tử 4 vào danh sách sau đó xoá phần tử ở vị trí thứ 2 + 1 = 3.
Câu 5. Kết quả của chương trình sau là gì?
A = [2, 3, 5, "python", 6]
A.append(4)
A.append(2)
A.append("x")
del(A[2])
print(len(A))
A. 5.
B. 6.
C. 7.
D. 8.
Hướng dẫn giải:
Đáp án đúng là: C
Hàm len() tính số phần tử trong danh sách A. Ban đầu số phần tử của A là 5 sau 3 lệnh append() và 1 lệnh del số phần tử là 5 + 3 - 1 = 7.
Câu 6. Đoạn lệnh sau làm nhiệm vụ gì?
A = []
for x in range(10):
1.append(int(input()))
A. Nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên.
B. Nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số thực.
C. Nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là xâu.
D. Không có đáp án đúng.
Hướng dẫn giải:
Đáp án đúng là: A
Hàm append() thêm phần tử vào cuối danh sách và hàm int(input()) chuyển kiểu dữ liệu nhập vào sang kiểu số nguyên.
Câu 7. Chọn phát biểu đúng khi nói về dữ liệu kiểu mảng(List) trong python.
A. Dữ liệu kiểu mảng là tập hợp các phần tử không có thứ tự và mọi phần tử có cùng một kiểu dữ liệu.
B. Dữ liệu kiểu mảng là tập hợp các phần tử có thứ tự và mỗi một phần tử trong mảng có thể có các kiểu dữ liệu khác nhau.
C. Dữ liệu kiểu mảng là tập hợp các phần tử có thứ tự và mọi phần tử phải có cùng một kiểu dữ liệu.
D. Tất cả ý trên đều sai.
Hướng dẫn giải:
Đáp án đúng là: B
List là kiểu dữ liệu mảng trong python và các phần tử của danh sách có thể có các kiểu dữ liệu khác nhau.
Câu 8. Cách khai báo biến mảng sau đây, cách nào sai?
A. ls = [1, 2, 3]
B. ls = [x for x in range(3)]
C. ls = [int(x) for x in input().split()]
D. ls = list(3).
Hướng dẫn giải:
Đáp án đúng là: D
Câu 9. Cho khai báo mảng sau:
A = list("3456789")
Để in giá trị phần tử thứ 2 của mảng một chiều A ra màn hình ta viết:
A. print(A[2]).
B. print(A[1]).
C. print(A[3]).
D. print(A[0]).
Hướng dẫn giải:
Đáp án đúng là: B
Trong mảng, các phần tử đánh số thứ tự từ 0 nên phần tử thứ hai trong mảng có chỉ số là 1.
Câu 10. Giả sử có một list: i = [2, 3, 4]. Nếu muốn in list này theo thứ tự ngược lại ta nên sử dụng phương pháp nào sau đây?
A. print(list(reversed(i))).
B. print(list(reverse(i))).
C. print(reversed(i)).
D. print(reversed(i)).
Hướng dẫn giải:
Đáp án đúng là: A
Sử dụng reversed() cho phép ta xử lý các mục theo thứ tự ngược lại chuỗi ban đầu, nhận chuỗi và trả về giá trị đảo ngược của chuỗi ban đầu truyền vào.
Câu 11. Cho arr = ['xuan', 'hạ', 1. 4, 'đông', '3', 4.5, 7]. Đâu là giá trị của arr[3]?
A. 1.4.
B. đông.
C. hạ.
D. 3.
Hướng dẫn giải:
Đáp án đúng là: B
Mảng đánh số từ 0 nên phần tử có chỉ số 3 nằm ở vị trí thứ tư của mảng.
Câu 12. Lệnh nào để duyệt từng phần tử của danh sách?
A. for.
B. while – for.
C. for kết hợp với lệnh range().
D. while kết hợp với lệnh range().
Hướng dẫn giải:
Đáp án đúng là: C
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().
Câu 13. Lệnh xoá một phần tử của một danh sách A có chỉ số i là:
A. list.del(i).
B. A. del(i).
C. del A[i].
D. A. del[i].
Hướng dẫn giải:
Đáp án đúng là: C
Cú pháp đúng:
del list[chỉ số].
Câu 14. Chương trình sau thực hiện công việc gì?
S = 0
for i in range(len(A)):
if A[i] > 0:
S = S + A[i]
print(S)
A. Duyệt từng phần tử trong A.
B. Tính tổng các phần tử trong A.
C. Tính tổng các phần tử không âm trong A.
D. Tính tổng các phần tử dương trong A.
Hướng dẫn giải:
Đáp án đúng là: D
Ở mỗi lần lặp nếu giá trị của phần tử A > 0 thì tổng sum cộng thêm phần tử đó. Kết quả cuối cùng sẽ ra được tổng các phần tử dương trong A.
Câu 15. Hoàn thiện chương trình tính tích các phần tử dương trong danh sách A.
S = (…)
for i in range(len(A)):
(…)
S = S * A[i]
print(S)
A. 1, if A[i] > 0:.
B. 0, if A[i] > 0:.
C. 1, if A[i] >= 0.
D. 0, if A[i] > 0.
Hướng dẫn giải:
Đáp án đúng là: A
Khởi tạo biến S bằng 1 sau đó kiểm tra điều kiện từng phần tử nếu dương biến S nhân với phần tử đó.
Bài viết liên quan: Ai vi phạm bản quyền trong những tình huống sau? Tin học lớp 10
Trên đây là toàn bộ nội dung bài viết của Luật Minh Khuê về bài tập: Để tính tổng s của hai số 5 và 6, s thuộc kiểu dữ liệu? Xin cảm ơn quý bạn đọc đã quan tâm theo dõi nội dung bài viết của chúng tôi!