Câu 6 trang 44 SGK Tin học 10


Đề bài

Cho N và dãy số a1... aN, hãy sắp xếp dãy số đó thành dãy số không tăng (số hạng trước lớn hơn hay bằng số hạng sau).

Lời giải chi tiết

• Xác định bài toán

-  Input: Dãy A gồm N số nguyên a1, a2..., aN.

-  Output: Dãy A được sắp xếp lại thành dãy không tăng:

• Ý tưởng:  Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước nhỏ hơn số sau ta đổi chỗ chúng cho nhau. Việc đó được lặp lại, cho đến khi không có sự đổi chỗ nào xảy ra nữa.

• Thuật toán theo cách liệt kê:

Bước 1. Nhập N, các số hạng a, a2, .., aN;

Bước 2: M  

Bước 3: Nếu M < 2 thì đưa ra dãy A đã được sắp xếp rồi kết thúc;

Bước 4: M

Bước 5: i

Bước 6: Nếu i > M thì quay lại bước 3

Bước 7: Nếu ai < ai+1 thì tráo đổi  ai và ai+1 cho nhau

Bước 8: Quay lại bước 5

• Sơ đồ khối:

Loigiaihay.com


Bình chọn:
4 trên 33 phiếu

Các bài liên quan: - Bài 4: Bài toán và thuật toán

>> Học trực tuyến Lớp 10 tại Tuyensinh247.com, Cam kết giúp học sinh học tốt, hoàn trả học phí nếu học không hiệu quả.


Hỏi bài