Giải bài tập Tin học 7 Bài 16: Thuật toán sắp xếp
Khởi động trang 78 Bài 16 Tin học lớp 7: Có hai chất lỏng khác màu là xanh và đỏ,
lần lượt được chứa trong hai chiếc cốc A và B (Hình 16.1a). Chúng ta cần đổi chỗ hai
chất lỏng này, sao cho cốc A đựng chất lỏng màu đỏ, còn cốc B đựng chất lỏng màu
xanh. Để thực hiện công việc này, chúng ta sử dụng thêm một chiếc cốc thứ ba (cốc C)
khơng đựng gì. Em hãy quan sát Hình 16.1b, Hình 16. 1c, Hình 16.1d để biết cách thực
hiện.
Trả lời:
Các bước thực hiện:
- Đổ nước trong cốc A (hoặc cốc B) sang cốc C.
- Đổ nước trong cốc B (hoặc A) còn lại sang cốc trống.
- Đổ nước trong cốc C vào cốc cịn trống.
1. Thuật tốn sắp xếp nổi bọt
Hoạt động 1 trang 80 Tin học 7: Mơ phỏng thuật tốn sắp xếp nổi bọt
Câu hỏi trang 80 Tin học lớp 7: Em hãy thực hiện thuật toán sắp xếp nổi bọt để sắp
xếp 5 số sau đây theo thứ tự tăng dần. Hãy mô phỏng các bước sắp xếp bằng hình vẽ
minh hoạ tương tự như Hình 16.2, Hình 16.3, Hình 16.4
3
5
Trả lời:
4
1
2
Vịng lặp thứ nhất
3
5
4
1
2
2 > 1 ⇒ KHƠNG hốn đổi
3
5
4
1
2
1 < 4 ⇒ hoán đổi
3
5
1
4
2
1 < 5 ⇒ hoán đổi
3
1
5
4
2
1 < 3 ⇒ hốn đổi
Kết quả vịng lặp thứ nhất
Vịng lặp thứ hai
1
3
5
4
2
1
3
5
4
2
2 < 4 ⇒ hoán đổi
1
3
5
2
4
2 < 5 ⇒ hốn đổi
1
3
2
5
4
2 < 3 ⇒ hốn đổi
Kết quả vịng lặp thứ hai
Vịng lặp thứ ba
1
2
3
5
4
1
2
3
5
4
4 < 5 ⇒ hốn đổi
1
2
3
4
5
4 > 3 ⇒ KHƠNG hốn đổi
1
2
3
4
5
3 > 2 ⇒ KHƠNG hốn đổi
1
2
3
4
5
2 > 1 ⇒ KHƠNG hốn đổi
Kết quả vịng lặp thứ ba
1
2
3
4
5
Câu hỏi 2 trang 80 Tin học lớp 7: Thuật toán sắp xếp nổi bọt sắp xếp danh sách bằng
cách
A. Chọn phần tử có giá trị bé nhất đặt vào đầu danh sách
B. Chọn phần tử có giá trị lớn nhất đặt vào đầu danh sách
C. Hoán đổi nhiều lần các phần tử liền kề nếu giá trị của chúng không đúng thứ tự
D. Chèn phần tử vào vị trí thích hợp để đảm bảo danh sách sắp xếp theo đúng thứ tự.
Trả lời:
Đáp án đúng là: C
Thuật toán sắp xếp nổi bọt sắp xếp danh sách được thực hiện bằng cách hoán đổi nhiều
lần các phần tử liền kề nếu giá trị của chúng khơng đúng thứ tự.
2. Thuật tốn sắp xếp chọn
Hoạt động 2 trang 82 Tin học 7:Sắp xếp chọn
Câu hỏi trang 82 Tin học lớp 7: Chọn năm học sinh, mỗi học sinh viết ra tờ giấy một
con số mà mình u thích. Các em đứng thành một hàng ngang và cầm tờ giấy có ghi
con số để cả lớp có thể quan sát được.
Ví dụ:
41
15
17
32
18
Học sinh thứ sáu thực hiện thuật toán sắp xếp chọn để sắp xếp các con số của năm bạn
theo thứ tự tăng dần.
Trả lời:
Vịng lặp thứ nhất
41
15
17
32
18
15 < 41 ⇒ hốn đổi
15
41
17
32
18
17 > 15 ⇒ KHƠNG hốn đổi
15
41
17
32
18
32 > 15 ⇒ KHƠNG hốn đổi
15
41
17
32
18
18 > 15 ⇒ KHƠNG hốn đổi
Kết quả vịng lặp thứ nhất
Vịng lặp thứ hai
15
41
17
32
18
15
41
17
32
18
17 < 41 ⇒ hốn đổi
15
17
41
32
18
32 > 17 ⇒ KHƠNG hốn đổi
15
17
41
32
18
18 > 17 ⇒ KHƠNG hốn đổi
Kết quả vịng lặp thứ hai
Vịng lặp thứ ba
15
17
41
32
18
15
17
41
32
18
32 < 41 ⇒ hoán đổi
15
17
32
41
18 < 32 ⇒ hoán đổi
18
15
17
18
41
32
Kết quả vòng lặp thứ ba
Vòng lặp thứ tư
15
17
18
41
32
15
17
18
41
32
32 < 41 ⇒ hốn đổi
Kết quả vịng lặp thứ tư
15
17
18
32
41
Đầu ra dãy các phần tử đã sắp xếp tăng dần:
15
17
18
32
41
Câu hỏi trang 82 Tin học lớp 7: Em hãy viết vào vở cụ thể các bước 2, 3, 4 được mô
tả trong Hình 16.5
Trả lời:
Vịng lặp thứ hai
1
4
3
5
2
3 < 4 ⇒ hốn đổi
1
3
4
5
KHƠNG hốn đổi
2
1
3
4
5
2
2 < 3 ⇒ hốn đổi
Kết quả vịng lặp thứ hai
1
2
4
5
3
Vịng lặp thứ ba
1
2
4
5
3
5 > 4 ⇒ KHƠNG hốn đổi
1
2
4
5
3
3 < 4 ⇒ hốn đổi
1
2
3
5
4
Kết quả vịng lặp thứ ba
Vịng lặp thứ tư
1
2
3
5
4
4 < 5 ⇒ hốn đổi
1
2
3
4
5
Kết quả vịng lặp thứ tư
3. Chia bài toán thành những bài toán nhỏ hơn
Câu hỏi trang 82 Tin học lớp 7: Chọn phương án đúng.
Tại sao chúng ta chia bài toán thành những bài toán nhỏ hơn?
A. Để thay đổi đầu vào của bài toán
B. Để thay đổi yêu cầu đầu ra của bài toán
C. Để bài toán dễ giải quyết
D. Để bài toán khó giải quyết hơn
Trả lời:
Đáp án đúng là: C
Chia một bài toán thành những bài toán nhỏ hơn giúp thuật toán dễ hiểu và dễ thực
hiện hơn.
Luyện tập
Luyện tập 1 trang 82 Tin học lớp 7: Em hãy liệt kê các bước của thuật toán sắp xếp
nổi bọt để sắp xếp các số 3, 2, 4, 1, 5 theo thứ tự tăng dần.
Trả lời:
Vòng lặp thứ nhất
3
2
4
1
5
5 > 1 ⇒ KHƠNG hốn đổi
3
2
4
1
5
1 < 4 ⇒ hốn đổi
3
2
1
4
5
1 < 2 ⇒ hốn đổi
Kết quả vịng lặp thứ nhất
3
1
2
4
5
1 < 3 ⇒ hốn đổi
1
3
2
4
5
Kết quả vịng lặp thứ nhất
Vịng lặp thứ hai
1
3
2
4
5
5 > 4 ⇒ KHƠNG hốn đổi
1
3
2
4
5
4 < 2 ⇒ KHƠNG hốn đổi
1
3
2
4
5
2 < 3 ⇒ hốn đổi
1
2
3
4
5
Kết quả vòng lặp thứ hai
Luyện tập 2 trang 82 Tin học lớp 7: Em hãy liệt kê các bước của thuật toán sắp xếp
chọn để sắp xếp các số 3, 2, 4, 1, 5 theo thứ tự tăng dần.
Trả lời:
Vòng lặp thứ nhất
3
2
4
1
5
2 < 3 ⇒ hốn đổi
2
3
4
1
5
KHƠNG hốn đổi
2
3
4
1
5
1 < 2 ⇒ hốn đổi
Kết quả vịng lặp thứ nhất
Vịng lặp thứ hai
1
3
1
3
4
4
2
2
5
5
KHƠNG hốn đổi
1
3
4
2
5
2 < 3 ⇒ hốn đổi
1
2
4
3
5
Kết quả vịng lặp thứ hai
Vịng lặp thứ ba
1
2
4
3
3 < 4 ⇒ hốn đổi
5
1
2
3
4
5
Kết quả vịng lặp thứ ba
Vịng lặp thứ tư
1
2
3
4
5
KHƠNG hốn đổi
1
2
3
4
5
Kết quả vòng lặp thứ tư
Vận dụng
Vận dụng trang 82 Tin học lớp 7: Em hãy ghi lại kết quả điểm học tập môn Tin học
của các bạn trong tổ. Thực hiện thuật toán sắp xếp chọn hoặc sắp xếp nổi bọt để sắp xếp
điểm theo thứ tự giảm dần. Dựa trên kết quả sắp xếp, hãy cho biết danh sách tên các bạn
tương ứng theo kết quả sắp xếp đó.
Trả lời:
- Bảng điểm mơn Tin học
Họ và tên
Điểm
Đỗ Ngọc Anh
7
Lê Mỹ Duyên
4
Trần Quốc Đạt
9
Lê Hà My
5
Nguyễn Bảo Trâm
6
- Thực hiện thuật tốn sắp xếp nổi bọt:
Vịng lặp thứ nhất
7
4
9
5
6
6 > 5 ⇒ hốn đổi
7
4
9
6
5
6 < 9 ⇒ KHƠNG hốn đổi
7
4
9
6
5
9 > 4 ⇒ hoán đổi
7
9
4
6
5
9 > 7 ⇒ hoán đổi
9
7
4
6
5
Kết quả vòng lặp thứ nhất
Vòng lặp thứ hai
9
7
4
6
5
5 < 6 ⇒ KHƠNG hốn đổi
9
7
4
6
5
6 > 4 ⇒ hốn đổi
9
7
6
4
5
7 < 9 ⇒ KHƠNG hốn đổi
9
7
6
4
5
Kết quả vịng lặp thứ hai
Vịng lặp thứ ba
9
7
6
4
5
5 > 4 ⇒ hốn đổi
9
7
6
5
4
5 < 6 ⇒ KHƠNG hốn đổi
9
7
6
5
4
7 < 9 ⇒ KHƠNG hốn đổi
9
7
6
5
4
7 < 9 ⇒ KHƠNG hốn đổi
9
7
6
5
4
Kết quả vòng lặp thứ hai
- Bảng điểm môn Tin học sau khi sắp xếp:
Họ và tên
Điểm
Trần Quốc Đạt
9
Đỗ Ngọc Anh
7
Nguyễn Bảo Trâm
6
Lê Hà My
5
Lê Mỹ Duyên
4
Xem thêm lời giải bài tập Tin học lớp 7 Kết nối tri thức với cuộc sống hay, chi tiết
khác:
Bài 1: Thiết bị vào - ra
Bài 2: Phần mềm máy tính
Bài 3: Quản lí dữ liệu trong máy tính
Bài 4: Mạng xã hội và một số kênh trao đổi thông tin trên internet
Bài 5: Ứng xử trên mạng