Thuật toán liệt kê sau có ý nghĩa gì? Bước 1: Nhập số nguyên dương N và dãy số A1 A2.... ; Bước 2: i 1; Bước 3: Nếu i > N thì kết thúc; Bước 4: Nếu Ai > 0 thì đưa ra giá trị i; Bước 5: i i+1, quay về bước 3;
2 câu trả lời
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:
Bước 4 : Nếu ai > 0 thì đưa ra giá trị i
- ai > 0 => ai là giá trị dương
- đưa ra giá trị i => đưa ra chỉ số phần tử có giá trị dương
=> Ý nghĩa : đưa ra chỉ số của các phần tử trong dãy có giá trị dương