Giải SGK Tin học 7 Bài 14: Thuật toán sắp xếp| Chân trời sáng tạo
Bài 14: Thuật toán sắp xếp sách Chân trời sáng tạo. Lời giải sách Tin học 7 được trình bày chi tiết, dễ hiểu, đầy đủ đáp án cho từng phần, từng mục trong SGK Tin học lớp 7 mới, cho các em học sinh tham khảo luyện giải Tin học 7, chuẩn bị cho các bài học trên lớp được tốt hơn.
Chủ đề: Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính (CTST)
Môn: Tin học 7
Sách: Chân trời sáng tạo
Thông tin:
Tác giả:
Preview text:
Khởi động trang 76 Bài 14 Tin học lớp 7:
Có 4 tấm thẻ, mỗi thẻ ghi một số và xếp thành một dãy dọc trên mặt bàn từ
trên xuống dưới như Hình 1. Em hãy trao đổi với bạn để chỉ ra cách sắp xếp
dãy thẻ theo thứ tự giá trị tăng dần của số ghi trên thẻ, với điều kiện chỉ có thể
di chuyển các thẻ bằng cách đổi chỗ các cặp thẻ liền kề. Hướng dẫn trả lời:
Bước 1. So sánh số ở vị trí số 1 với vị trí số 2 (19 >16). Nên ta đổi chỗ số 16 và
số 19. Dãy số sau khi sắp xếp: 16, 19, 18, 15.
Bước 2. So sánh số ở vị trí số 2 với vị trí số 3 (19 >18). Nên ta đổi chỗ số 18 và
số 19. Dãy số sau khi sắp xếp: 16, 18, 19, 15.
Bước 3. So sánh số ở vị trí số 3 với vị trí số 4 (19 >15). Nên ta đổi chỗ số 15 và
số 19. Dãy số sau khi sắp xếp: 16, 18, 15, 19.
Bước 4. So sánh số ở vị trí số 1 với vị trí số 2 (18 >16). Nên ta giữ nguyên vị trí.
Bước 5. So sánh số ở vị trí số 2 với vị trí số 3 (18 >15). Nên ta đổi chỗ số 15 và
số 18. Dãy số sau khi sắp xếp: 16, 15, 18, 19.
Bước 6. So sánh số ở vị trí số 3 với vị trí số 4 (19 >18). Nên ta giữ nguyên vị trí.
Bước 7. So sánh số ở vị trí số 1 với vị trí số 2 (16 >15). Nên ta đổi chỗ số 15 và
số 16. Dãy số sau khi sắp xếp: 15, 16, 18, 19.
Dãy số đã được sắp xếp theo vị trí tăng dần. Kết thúc quá trình sắp xếp.
1. Thuật toán sắp xếp nổi bọt
Khám phá 1 trang 79 Tin học lớp 7: Em hãy sắp xếp dãy chữ cái ở Hình 5 theo
thứ tự tăng dần bằng thuật toán sắp xếp nổi bọt (mô phỏng quá trình thực
hiện bằng hình vẽ tương tự như các Hình 2, 3, 4). Quy ước, trong bảng chữ
cái, chữ đứng trước "nhỏ hơn" chữ đứng sau Hướng dẫn trả lời:
Mô phỏng thuật toán sắp xếp nổi bọt
Đầu vào: dãy thẻ ghi các chữ cái sắp xếp từ trên xuống dưới là m, h, e, c, a.
Đầu ra: dãy thẻ ghi các chữ cái sắp xếp tăng dần là a, c, e, h, m. - Vòng lặp 1:
+ So sánh chữ thứ 5 với chữ thứ 4 a < c sai thứ tự ta tiến hành đổi chỗ thu được dãy m, h, e, a, c
+ So sánh chữ thứ 4 với chữ thứ 3 c < e sai thứ tự ta tiến hành đổi chỗ thu được dãy m, h, a, e, c
+ So sánh chữ thứ 3 với chữ thứ 2 a < h sai thứ tự ta tiến hành đổi chỗ thu được dãy m, a, h, e, c
+ So sánh chữ thứ 2 với chữ thứ 1 a < m sai thứ tự ta tiến hành đổi chỗ thu được dãy a, m, h, e, c - Vòng lặp 2:
+ So sánh chữ thứ 5 với chữ thứ 4 c < e sai thứ tự ta tiến hành đổi chỗ thu được dãy a, m, h, c, e
+ So sánh chữ thứ 4 với chữ thứ 3 c < h sai thứ tự ta tiến hành đổi chỗ thu được dãy a, m, c, h, e
+ So sánh chữ thứ 3 với chữ thứ 2 c < m sai thứ tự ta tiến hành đổi chỗ thu
được dãy a, c, m, h, e
+ So sánh chữ thứ 2 với chữ thứ 1 c > a đúng thứ tự ta tiến hành giữ nguyên thứ tự. - Vòng lặp 3:
+ So sánh chữ thứ 5 với chữ thứ 4 e < h sai thứ tự ta tiến hành đổi chỗ thu được dãy a, c, m, e, h
+ So sánh chữ thứ 4 với chữ thứ 3 e < m sai thứ tự ta tiến hành đổi chỗ thu được dãy a, c, e, m, h
+ So sánh chữ thứ 3 với chữ thứ 2 e > c đúng thứ tự ta tiến hành giữ nguyên thứ tự.
+ So sánh chữ thứ 2 với chữ thứ 1 c > a đúng thứ tự ta tiến hành giữ nguyên thứ tự. - Vòng lặp 4:
+ So sánh chữ thứ 5 với chữ thứ 4 h < m sai thứ tự ta tiến hành đổi chỗ thu được dãy a, c, e, h, m
+ So sánh chữ thứ 4 với chữ thứ 3 h > đúng thứ tự ta tiến hành giữ nguyên thứ tự.
+ So sánh chữ thứ 3 với chữ thứ 2 e > c đúng thứ tự ta tiến hành giữ nguyên thứ tự.
+ So sánh chữ thứ 2 với chữ thứ 1 c > a đúng thứ tự ta tiến hành giữ nguyên
thứ tự. Kết thúc vòng lặp ta thu được dãy cần sắp xếp là a, c, e, h, m.
Khám phá 2 trang 79 Tin học lớp 7: Thuật toán sắp xếp nổi bọt thực hiện sắp
xếp dãy số không giảm bằng cách nào dưới đây:
A. Đổi chỗ 2 số liền kề nhau nếu chúng đứng sai thứ tự cho đến khi dãy số được sắp xếp.
B. Di chuyển số nhỏ nhất về cuối danh sách.
C. Di chuyển số lớn nhất về đầu danh sách. Hướng dẫn trả lời: Đáp án: A
Thuật toán sắp xếp nổi bọt thực hiện lặp đi lặp lại việc đổi chỗ 2 số liền kề
trong một dãy số nếu chúng đứng sai thứ tự (số sau bé hơn số trước) cho đến
khi dãy thẻ số được sắp xếp theo thứ tự tăng dần.
2. Thuật toán sắp xếp chọn
Khám phá 1 trang 82 Tin học lớp 7: Em hãy xếp dãy chữ cái ở Hình 5 theo
hàng ngang rồi sử dụng thuật toán sắp xếp chọn (mô phỏng quá trình thực
hiện bằng hình vẽ như các Hình 7, Hình 8, Hình 9) thực hiện sắp xếp dãy theo thứ tự tăng dần.
Hướng dẫn trả lời:
Hình 2: Chữ nhỏ nhất chưa được sắp xếp ở vị trí đầu tiên
Hình 3: Dãy thứ tự đã được sắp xếp
Bước 1. Chọn vị trí đầu tiên của dãy (vị trí 1) là vị trí nhỏ nhất.
Bước 2. So sánh với Min số thứ 2, 3, 4, 5. Tìm Min nhỏ nhất và đổi chỗ với vị
trí 1, không có thì giữ nguyên vị trí. Thực hiện vòng lặp cho đến khi dãy được sắp xếp.
Khám phá 2 trang 82 Tin học lớp 7: Thuật toán sắp xếp chọn thực hiện sắp xếp
dãy số tăng dần bằng cách nào dưới đây?
A. Đổi chỗ 2 số liền kế nhau nếu chúng đứng sai thứ tự cho đến khi dãy số được sắp xếp.
B. Lặp lại quá trình chọn số nhỏ nhất trong dãy chưa sắp xếp và đưa số này về
vị trí đầu tiên của dãy đó. Hướng dẫn trả lời: Đáp án: B
Thuật toán sắp xếp chọn thực hiện sắp xếp dãy số tăng dần bằng cách lặp lại
quá trình chọn số nhỏ nhất trong dãy chưa sắp xếp và đưa số này về vị trí đầu tiên của dãy đó.
Luyện tập trang 82 Tin học lớp 7
Luyện tập 1 trang 82 Tin học lớp 7: Liệt kê các vòng lặp của thuật toán sắp xếp
nổi bọt, thuật toán sắp xếp các dãy sau theo thứ tự tăng dần: a) Dãy số: 9, 6, 11, 3, 7.
b) Dãy chữ cái: H, D, A, B, Y. Hướng dẫn trả lời: a) Dãy số 9, 6, 11, 3, 7
- Thuật toán sắp xếp nổi bọt: + Vòng lặp 1:
9, 6, 11, 3, 7 → 9, 6, 11, 3, 7 → 9, 6, 3, 11, 7 → 9, 3, 6, 11, 7 → 3, 9, 6, 11, 7 + Vòng lặp 2:
3, 9, 6, 11, 7 → 3, 9, 6, 7, 11 → 3, 9, 6, 7, 11 → 3, 6, 9, 7, 11 → 3, 6, 9, 7, 11 + Vòng lặp 3:
3, 6, 9, 7, 11 → 3, 6, 9, 7, 11 → 3, 6, 7, 9, 11 → 3, 6, 7, 9, 11 → 3, 6, 7, 9, 11 + Vòng lặp 4:
3, 6, 7, 9, 11 → 3, 6, 7, 9, 11 → 3, 6, 7, 9, 11 → 3, 6, 7, 9, 11 → 3, 6, 7, 9, 11
- Thuật toán sắp xếp chọn: + Vòng lặp 1:
9, 6, 11, 3, 7 → 3, 6, 11, 9, 7 + Vòng lặp 2:
3, 6, 11, 9, 7 → 3, 6, 11, 9, 7 + Vòng lặp 3:
3, 6, 11, 9, 7 → 3, 6, 7, 9, 11 + Vòng lặp 4:
3, 6, 7, 9, 11 → 3, 6, 7, 9, 11
b) Dãy chữ cái: H, D, A, B, Y.
- Thuật toán sắp xếp nổi bọt: + Vòng lặp 1:
H, D, A, B, Y → H, D, A, B, Y → H, D, A, B, Y → H, A, D, B, Y → A, H, D, B, Y + Vòng lặp 2:
A, H, D, B, Y → A, H, D, B, Y → A, H, B, D, Y → A, B, H, D, Y → A, B, H, D, Y + Vòng lặp 3:
A, B, H, D, Y → A, B, H, D, Y → A, B, D, H, Y → A, B, D, H, Y → A, B, D, H, Y + Vòng lặp 4:
A, B, D, H, Y → A, B, D, H, Y → A, B, D, H, Y → A, B, D, H, Y → A, B, D, H, Y
- Thuật toán sắp xếp chọn
+ Vòng lặp 1: H, D, A, B, Y → A, D, H, B, Y
+ Vòng lặp 2: A, D, H, B, Y → A, B, H, D, Y
+ Vòng lặp 3: A, B, H, D, Y → A, B, D, H, Y
+ Vòng lặp 4: A, B, D, H, Y → A, B, D, H, Y
Luyện tập 2 trang 82 Tin học lớp 7: Chỉ ra phương án sai.
Ý nghĩa của việc chia bài toán thành bài toán nhỏ hơn là:
A. Giúp công việc đơn giản hơn.
B. Giúp công việc dễ giải quyết hơn.
C. Làm cho công việc trở nên phức tạp hơn.
D. Giúp bài toán trở nên dễ hiểu hơn. Hướng dẫn trả lời: Đáp án: C
Việc chia bài toán thành bài toán nhỏ hơn giúp công việc đơn giản, dễ giải quyết, dễ hiểu hơn.
Vận dụng trang 82 Tin học lớp 7:
Sử dụng một thuật toán đã học để thực hiện sắp xếp các bạn trong tổ em theo
thứ tự chiều cao không giảm (ghi chiều cao của các bạn theo cùng đơn vị đo
là cm vào bảng theo mẫu Bảng 1 dưới đây).
Bảng 1. Chiều cao của các bạn trong tổ Hướng dẫn trả lời:
Bảng chiều cao của các bạn trong tổ Tên Chiều cao Hoa 153 Mai 147 Nam 161 Bích 156 Mạnh 159 Tiến 160
Sử dụng thuật toán sắp xếp chọn
- Vòng lặp 1: 153, 147, 161, 156, 159, 160 → 147, 153, 161, 156, 159, 160
- Vòng lặp 2: 147, 153, 161, 156, 159, 160 → 147, 153, 161, 156, 159, 160
- Vòng lặp 3: 147, 153, 161, 156, 159, 160 → 147, 153, 156, 161, 159, 160
- Vòng lặp 3: 147, 153, 156, 161, 159, 160 → 147, 153, 156, 159, 161, 160
- Vòng lặp 4 : 147, 153, 156, 159, 161, 160 → 147, 153, 156, 159, 160, 161