Bài 6. Giải bài toán trên máy tính

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn: tự làm
Người gửi: Hà Văn Cường (trang riêng)
Ngày gửi: 04h:23' 19-10-2012
Dung lượng: 2.6 MB
Số lượt tải: 425
Nguồn: tự làm
Người gửi: Hà Văn Cường (trang riêng)
Ngày gửi: 04h:23' 19-10-2012
Dung lượng: 2.6 MB
Số lượt tải: 425
Số lượt thích:
0 người
KIỂM TRA BÀI CŨ
Câu 1: Ngôn ngữ lập trình là gì? Nêu các loại ngôn ngữ lập trình?
Trả lời: - Là ngôn ngữ dùng để biểu diễn thuật toán thành chương trình trên máy tính.
- Một số loại ngôn ngữ lập trình: Ngôn ngữ máy, Hợp ngữ, Ngôn ngữ bậc cao(pascal, C…)
Câu 2: Chương trình dịch là gì?
Trả lời: Chương trình dịch là chương trình dịch các chương trình được viết bằng ngôn ngữ lập trình bậc cao, hợp ngữ thành ngôn ngữ máy?
SỞ GIÁO DỤC VÀ ĐÀO TẠO HƯNG YÊN
TRƯỜNG THPT NGUYỄN SIÊU
TIẾT: 18
Giáo viên: Hà Văn Cường
THAO GIẢNG
BÀI 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
1. Xác định bài toán
Mỗ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.
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
- 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. Diễn tả thuật toán
3. Viết chương trình
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
? S? d?ng ngụn ng? l?p trỡnh d? di?n d?t dỳ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.
4. Hiệu chỉnh(sửa chữa chương trình)
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍ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:
5. Viết tài liệu
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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ả thuật toán.
Tài liệu thiết kế chương trình.
Các kết quả thử nghiệm.
Tài liệu hướng dẫn sử dụng hướ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.
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
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.
d. Cả 3 ý trên đều đúng.
d
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
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.
d. Cả 3 ý trên đều đúng.
d
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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ên
bước nào là bước
quan trọng nhất
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI TẬP VỀ NHÀ
Hãy viết thuật toán giải phương trình bậc hai ax2 + bx +c = 0 và đề xuất các bộ Test tiêu biểu?
Chúc quý thầy cô sức khỏe, chúc các em học tập tốt
Câu 1: Ngôn ngữ lập trình là gì? Nêu các loại ngôn ngữ lập trình?
Trả lời: - Là ngôn ngữ dùng để biểu diễn thuật toán thành chương trình trên máy tính.
- Một số loại ngôn ngữ lập trình: Ngôn ngữ máy, Hợp ngữ, Ngôn ngữ bậc cao(pascal, C…)
Câu 2: Chương trình dịch là gì?
Trả lời: Chương trình dịch là chương trình dịch các chương trình được viết bằng ngôn ngữ lập trình bậc cao, hợp ngữ thành ngôn ngữ máy?
SỞ GIÁO DỤC VÀ ĐÀO TẠO HƯNG YÊN
TRƯỜNG THPT NGUYỄN SIÊU
TIẾT: 18
Giáo viên: Hà Văn Cường
THAO GIẢNG
BÀI 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
1. Xác định bài toán
Mỗ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.
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
- 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. 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.
2. Lựa chọn hoặc thiết kế thuật toán
a. Lựa chọn thuật toán
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
b. Diễn tả thuật toán
3. Viết chương trình
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
? S? d?ng ngụn ng? l?p trỡnh d? di?n d?t dỳ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.
4. Hiệu chỉnh(sửa chữa chương trình)
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍ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:
5. Viết tài liệu
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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ả thuật toán.
Tài liệu thiết kế chương trình.
Các kết quả thử nghiệm.
Tài liệu hướng dẫn sử dụng hướ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.
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
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.
d. Cả 3 ý trên đều đúng.
d
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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.
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.
d. Cả 3 ý trên đều đúng.
d
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
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ên
bước nào là bước
quan trọng nhất
TIẾT 18: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI TẬP VỀ NHÀ
Hãy viết thuật toán giải phương trình bậc hai ax2 + bx +c = 0 và đề xuất các bộ Test tiêu biểu?
Chúc quý thầy cô sức khỏe, chúc các em học tập tốt
 







Các ý kiến mới nhất