Giải bài tập tin học lớp 11 định hướng KHMT kết nối tri thức bài 17 Dữ liệu mảng một chiều và hai chiều
Giải bài 17 Dữ liệu mảng một chiều và hai chiều tin học lớp 11 kết nối tri thức. Phần đáp án chuẩn, hướng dẫn giải chi tiết cho từng bài tập có trong chương trình học của sách giáo khoa. Hi vọng, các em học sinh hiểu và nắm vững kiến thức bài.
Bài tập và hướng dẫn giải
Khởi động
Câu hỏi. Em được giao nhiệm vụ thiết lập và lưu trữ một danh sách các địa điểm là nơi các bạn trong lớp sẽ thường xuyên đến để tham quan và trải nghiệm thực tế. Mỗi địa điểm như vậy cần nhiều thông tin, nhưng thông tin quan trọng nhất là toạ độ (x. y) của thông tin đó trên bàn đồ. Em sẽ dụng cầu trúc dữ liệu gì để mô tả danh sách các địa điểm này?
1. Cấu trúc dữ liệu mảng một chiều
Hoạt động 1: Tìm hiểu cấu trúc dữ liệu mảng một chiều trong Python
Thực hiện các thao tác sau, quan sát, trao đổi và thảo luận, từ đó nhận biết về cấu trúc dữ liệu mảng một chiều trong Python.
Câu hỏi 1. Sử dụng hàm sum() tính tổng các số của một dãy. Hãy viết câu lệnh tính giá trị trung bình của dãy số A cho trước.
Câu hỏi 2. Có thể duyệt các phần tử của mảng theo chiều ngược lại, từ cuối về đầu, được không?
2. Cấu trúc dữ liệu mảng 2 chiều
Hoạt động 2: Mô hình danh sách trong danh sách của Python
Thực hiện các lệnh sau, sau sát, trao đổi và thảo luận, từ đó nhận biết về mô hình danh sách trong Python.
Câu hỏi 1. Thiết lập mảng bao gồm dữ liệu là toạ độ các điểm trên mặt phẳng, mỗi điểm P được cho bởi hai toạ độ (px, py).
Câu hỏi 2. Thiết lập màng bao gồm dãy các thông tin là danh sách học sinh và thông tin 3 điểm thi của học sinh tương ứng các bải thi số 1, 2, 3. Viết đoạn lệnh nhập bộ đữ liệu trên và chương trình in ra danh sách học sinh cùng với điểm trung bình của các bài thi
Hoạt động 3: Mô hình mảng hai chiều của Python
Đọc, trao đổi, thảo luận và cấu trúc dữ liệu mảng hai chiều trong Python
Câu hỏi 1. Câu lệnh sau sẽ tạo dữ liệu thuộc thể loại gì?
temp = [1 , 2, 3, 4]
A= [temp, temp]
Câu hỏi 2. Nếu A là bảng (ma trận) kích thước m X N thì đoạn chương trình sau sẽ in ra thông tin gì trên màn hình?
Luyện tập
Câu hỏi 1. Giả sử số đo chiều cao các bạn trong lớp được cho trong dãy số A. Hãy viết đoạn chương trình tính:
- Số đo chiều cao trung bình của cả lớp.
- Số bạn có chiều cao lớn hơn chiều cao trung bình của cả lớp.
Câu hỏi 2. Viết chương trình nhập từ bàn phím số tự nhiên m, sau đó lần lượt nhập m dòng, mỗi dòng bao gồm n số cách nhau bởi dấu cách, đưa dữ liệu đã nhập vào ma trận A, sau đó in ma trận A ra màn hình.
Vận dụng
Câu hỏi 1. Viết hàm số UnitMatrix(n) với n là số tự nhiên cho trước, hàm trả lại giá trị là ma trận bậc n như Hình 17.1.
Câu hỏi 2. Viết chương trình cho phép người dùng nhập từ bàn phim một dãy số tự nhiên, hãy đếm với mỗi giá trị của dây có bao nhiêu số lặp lại. Ví dụ nếu dãy ban đầu là:
0 1 5 7 0 2 5 1 1 2
thì chương trình cần thông báo như Hình 17.2.
Số 0 lặp lại 2 lân
Số 1 lặp lại 3 lần
Số 6 lặp lại 2 lần
Số 7 lặp lại 1 lần
Số 2 lặp lại 2 lần.
Câu hỏi 3. Em ghi số tiền điện gia đình em theo từng tháng vào một danh sách gồm 12 số. Mỗi năm lại ghi lại số tiền điện vào một danh sách và ghép với danh sách các năm trước. Như vậy em thu được một bảng kích thước n x 12, trong đó hàng thứ k là số tiễn điện của nãm thứ k, cột tương ứng số tiền điện theo tháng.
a) Thiết lập mảng mới tính số tiền điện trung bình của các năm, mối năm ghi một số.
b) Tính số tiền điện trung bình của tất cả các năm đã được ghi dữ liệu trong bảng.