Các bước để giải một bài toán trên máy tính.
7.1.2 Khái niệm thuật toán:
Một dãy hữu hạn các bước.
Các thao tác được sắp xếp theo một trình tự xác định.
Sau khi thực hiện dãy thao tác đó, từ giả thiết ta tìm được kết quả của bài toán.
Từ “Thuật toán" (Algorithm)? Xuất phát từ tên một nhà toán học người Trung Á là Abu Abd - Allah ibn Musa al’Khwarizmi, thường gọi là al’Khwarizmi. Ông là tác giả một cuốn sách về số học, trong đó ông đã dùng phương pháp mô tả rất rõ ràng, mạch lạc cách giải những bài toán. Sau này, phương pháp mô tả cách giải toán của ông đã được xem là một chuẩn mực và được nhiều nhà toán học khác tuân theo. Từ algorithm ra đời dựa theo cách phiên âm tên của ông.
Bên cạnh 3 đặc trưng chính là xác định, hữu hạn và đúng, thuật toán còn có thêm 3 đặc trưng phụ khác.
Ðầu vào và đầu ra (input/output) : mọi thuật toán, dù có đơn giản đến mấy cũng phải nhận dữ liệu đầu vào, xử lý nó và cho ra kết quả cuối cùng.
Tính hiệu quả (effectiveness) :tính hiệu quả của thuật toán được đánh giá dựa trên một số tiêu chuẩn như khối lượng tính toán, không gian và thời gian khi thuật toán được thi hành. Tính hiệu quả của thuật toán là một yếu tố quyết định để đánh giá, chọn lựa cách giải quyết vấn đề-bài toán trên thực tế.
Tính tổng quát (generalliness) :thuật toán có tính tổng quát là thuật toán phải áp dụng được cho mọi trường hợp của bài toán chứ không phải chỉ áp dụng được cho một số trường hợp riêng lẻ nào đó.
Ví dụ 1: Thuật toán giải phương trình bậc nhất ax+b=0 Bước 1: Nhập a, b.
Bước 2: Nếu a = 0 thì
B2.1: Nếu b=0 thì kết luận phương trình vô số nghiệm rồi qua bước 5
B2.2: Nếu b khác 0 thì kết luận phương trình vô nghiệm rồi qua bước 5 Bước 3: x -b/a, rồi qua bước 4.
Bước 4: Đưa ra kết quả x, qua bước 5 Bước 5: Kết thúc
Ví dụ 2: Thuật toán tìm giá trị nhỏ nhất trong dãy a1, a2, a3…an Bước 1: Nhập n và các phần tử của dãy a1, a2, a3, …,an. Bước 2: Gán Mina1, i2.
Bước 3: Nếu i<=n thì thực hiện bước 4, còn không thì qua bước 5. Bước 4: Nếu Min > ai thì gán Min ai
Tăng i lên một đơn vị rồi quay về bước 3. Bước 5: Đưa ra Min rồi kết thúc.