Tìm số nhỏ nhất (MIN) của một dãy số nguyên Yêu cầu: xác định bài toán, viết thuật toán theo cả 2 cách đã học, mô phỏng thuật toán với dãy số: -6; 2; 9; 1

2 câu trả lời

input dãy `A_n` và Số nguyên N

output Giá trị nhỏ nhất trong dãy `A_n`

b1 nhập N 

b2 i←0

min←0

b3 nếu i≤N thì

b4 nhập `A_([i])`

b5 min←`A_([i])`

b6 nếu min>`A_([i])` thì min←`A_([i])`

b7 quay lại b3

b8 xuất min, kết thúc

mô phỏng

* Xác định bài toán :

- Input : nhập n và dãy a1, a2, ... , an

- Output : giá trị nhỏ nhất trong dãy

* Ý tưởng :

- Khởi tạo giá trị Min = a[1]

- Lần lượt với i từ 2 đến n, so sánh giá trị số hạng a[i] với giá trị Min, nếu ai < Min thì Min nhận giá trị mới là a[i]

* Viết thuật toán :

- Bước 1 : nhập n và dãy a1, a2, ... , an

- Bước 2 : i ← 2; min ← a[1] 

- Bước 3 : nếu i > n thì đưa ra giá trị  min rồi kết thúc

- Bước 4 :

- Bước 4.1 : nếu a[i] < min thì min ← a[i]

- Bước 4.2 : i ← i + 1 quay lại bước 3

Câu hỏi trong lớp Xem thêm