14
Trường THPT THẠNH AN TIẾT: 18 TIẾT: 18

Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

Embed Size (px)

Citation preview

Page 1: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

Trường THPTTHẠNH AN

TIẾT: 18TIẾT: 18

Page 2: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

CÁC BƯỚC GiẢI BÀI TOÁN TRÊN MÁY TÍNH

Bước 2: Lựa chọn hoặc thiết kế thuật toán.

Bước 1: Xác định bài toán.

Bước 3: Viết chương trình.

Bước 4: Hiệu chỉnh.

Bước 5: Viết tài liệu.

Page 3: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

1. Xác định bài toánMỗi bài toán được đặc tả bởi hai yếu tố: Input & Output

==> Xác định bài toán là công việc xác định chính xác Input, Output , mối quan hệ giữa chúng và xác định các thông số liên quan khác.

VD1: Xác định bài toán: Giải phương trình bậc nhất:ax + b=0 (1)

+ Input: các số thực a,b;

+ Output: giá trị x thỏa mãn phương trình (1); VD2: Xác định bài toán: Tính điểm trung bình cả năm của một lớp

học:

+ Input: Danh sách học sinh, điểm của 13 môn học;

+ Output: Danh sách học sinh điểm trung bình cả năm của 13 môn học và điểm trung bình chung cả năm.

==> Như vậy việc xác định bài toán chính xác quyết định đến việc giải bải toán đó thành công hoặc không thành công.

Page 4: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

2. Lựa chọn hoặc thiết kế thuật toán

Tại sao tiêu đề lại gọi là: lựa chọn hoặc thiết kế thuật toán?

a. Lựa chọn thuật toán- Mỗi bài toán có nhiều thuật toán khác nhau ngược lại mỗi thuật toán

chỉ để giải quyết cho một bài toán.- Cần phải thiết kế, lựa chọn thuật toán sao cho phù hợp nhất với từng

yêu cầu của mỗi bài toán cụ thể.VD: Bài toán sắp xếp. Thiết kế hoặc lựa chọn thuật toán

cần quan tâm đến vấn đề gì?+ Một số điểm lưu ý khi thiết kế hoặc lựa chọn thuật toán.- Yêu cầu về tài nguyên(thời gian thực hiện, bộ nhớ...)

- Độ phức tạp của thuật toán.

== > Tiêu chí quan trọng nhất của lựa chọn, thiết kế thuật toán là tính hiệu quả.

VD: Bài toán sắp xếp, bài toán tìm kiếm.

Page 5: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

2. Lựa chọn hoặc thiết kế thuật toána. Lựa chọn thuật toánb. Diễn tả thuật toán

- Cần chọn những cách diễn tả thuật toán phù hợp và đáp ứng được số đông người lập trình.

Có những cách diễn tả thuật toán

nào?

+ Biểu diễn thuật toán bằng liệt kê các bước:

+ Biểu diễn thuật toán bằng sơ đồ khối:Mục đích của

diễn tả thuật toán là gì?

== > Để mô phỏng cách chạy của bài toán, để chạy thử trước khi viết chương trình, để cung cấp tài liệu cho người lập trình, người học.

Page 6: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

2. Lựa chọn hoặc thiết kế thuật toána. Lựa chọn thuật toánb. Diễn tả thuật toán VD: Bài toán giải phương trình bậc nhất: ax+b=0

Cách liệt kê:

Bước 1: Nhập giá trị a, b;

Bước 2: Nếu a=0, b≠0 thì thông báo vô nghiệm, rồi kết thúc;

Bước 3: Nếu a=0 và b=0 thì thông báo phương trình nghiệm đúng với mọi giá trị rồi kết thúc;

Bước 4: Nếu a ≠0 thì x-b/a, thông báo phương trình có nghiệm duy nhất là x rồi kết thúc.

Page 7: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

2. Lựa chọn hoặc thiết kế thuật toána. Lựa chọn thuật toánb. Diễn tả thuật toán

Nhập a, b

Phương trìnhvô nghiệm

PT nghiệm đúng với mộ giá trịa = 0? b = 0?

PT có nghiệm duy nhất là x

x -b/a

Đ

S

Đ

SA=0, B=0

A=0, B=2

A=2, B=1

Page 8: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

3. Viết chương trình

Sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán.

Là tổng hợp giữa việc:

Lựa chọn cách tổ chức dữ liệu.

Page 9: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

4. Hiệu chỉnh(sửa chữa chương trình)

Tại sao cần phải hiệu chỉnh chương trình?

Sau khi viết chương trình có thể gặp một số lỗi sau:

- Lỗi về mặt cú pháp

- Lỗi về mặt logic(thuật toán chưa chính xác, chưa quét hết các trường hợp đặc biệt…)

==> Do vậy cần kiểm tra lại và test các bộ test đặc biệt của bài toán

==> Quá trình test và sửa lỗi bài toán được gọi là hiệu chỉnh (Maintenance).

VD:

Page 10: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

5. Viết tài liệu

Viết tài liệu là làm những công việc gì?

Tài liệu môt tả bài toán.Tài liệu môt tả bài toán.

Tài liệu mô tả thuật toán.Tài liệu mô tả thuật toán.

Tài liệu thiết kế chương trình. Tài liệu thiết kế chương trình.

Các kết quả thử nghiệm. Các kết quả thử nghiệm.

Tài liệu hướng dẫn sử dụng hướng Tài liệu hướng dẫn sử dụng hướng

dẫn sử dụng.dẫn sử dụng.

Mục đích viết tài liệu là gì?

==>Thể hiện tính chuyên nghiệp của sản phẩm.

Page 11: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

BÀI TẬP VẬN DỤNG

Bài 1: Tiêu chuẩn lựa chọn thuật toán là gì ?

a. Thuật toán phải phù hợp với bài toán đã cho.a. Thuật toán phải phù hợp với bài toán đã cho.

b. Thời gian thực hiện nhanh, ít tốn bộ nhớ.b. Thời gian thực hiện nhanh, ít tốn bộ nhớ.

c. Khi viết chương trình ít phức tạp nhất.c. Khi viết chương trình ít phức tạp nhất.

d. Cả 3 ý trên đều đúng.d. Cả 3 ý trên đều đúng.d

Page 12: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

BÀI TẬP VẬN DỤNG

Bài 2: Nội dung và mục đích của bước hiệu chỉnh?

a. Kiểm tra lỗi về thuật toán.a. Kiểm tra lỗi về thuật toán.

b. Kiểm tra lỗi cú pháp của ngôn ngữ lập trình dùng viết chương trình.b. Kiểm tra lỗi cú pháp của ngôn ngữ lập trình dùng viết chương trình.

c. Dùng các bộ Test khác nhau để kiểm tra.c. Dùng các bộ Test khác nhau để kiểm tra.

d. Cả 3 ý trên đều đúng.d. Cả 3 ý trên đều đúng.d

Page 13: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay

CỦNG CỐ

Bước 2: Lựa chọn hoặc thiết kế thuật toán.

Bước 1: Xác định bài toán.

Bước 3: Viết chương trình.

Bước 4: Hiệu chỉnh.

Bước 5: Viết tài liệu.

Giải bài toán trên máy tính gồm bao nhiêu bước?

Chi tiết các bước?

Bước 2: Lựa chọn hoặc thiết kế thuật toán.

Trong năm bước trênbước nào là bước

quan trọng nhất

Page 14: Bai 6 Giai Bai Toan Tren May Tinh Cuc Hay