Việc giải toán trên máy tính thường được tiến hành qua các bước: Bước 1: Xác định bài toán; Bước 2: Lựa chọn hoặc thiết kế thuật toán; Bước 3: Viết chương trình; Bước 4: Hiệu chỉnh; Bước
Trang 1Kính chào quý Thầy, Cô đến dự giờ lớp 10A3
GV: Nguyễn Thị Huyên Trường THPT Tràng Định
Trang 3TIẾT PPCT: 15
BÀI 6.
GIẢI BÀI TOÁN TRÊN MÁY TÍNH
Tương tự như giải bài toán trong toán học
Việc giải toán trên máy tính thường được tiến hành qua các bước:
Bước 1: Xác định bài toán;
Bước 2: Lựa chọn hoặc thiết kế thuật 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
Trang 4Xác định Input và Output.
Trang 5Ví dụ: Tìm ƯCLN của 2 số nguyên dương M,N
Input: M,N hai số nguyên dương Output: ƯCLN(M,N)
Input: M,N hai số nguyên dương Output: ƯCLN(M,N)
Input?
Output?
Trang 62 Lựa chọn hoặc thiết kế thuật toán
Thuật toán để giải một bài toán là gì?
Thuật toán để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho sau khi thực hiện dãy thao tác ấy, từ input của bài toán, ta nhận
được output cần tìm.
Với mỗi bài toán
có phải chỉ có một thuật toán duy
Trang 7- Mỗi thuật toán chỉ giải 1 bài toán song 1 bài toán thì có nhiều thuật toán để giải Vậy ta phải chọn thuật toán tối ưu nhất trong các thuật toán đưa ra.
a) Lựa chọn thuật toán
Thuật toán tối
ưu theo các em
cần có các tiêu
chí cơ bản nào ?
- Thuật toán tối ưu: Là thuật
toán có các tiêu chí sau:
Dễ hiểu.
Trình bày dễ nhìn.
Thời gian thực hiện (nhanh).
Tốn ít bộ nhớ.
Trang 8b) Diễn tả thuật toán
Sau khi chọn thuật toán thích hợp, ta đi tìm cách diễn tả thuật toán.
Trang 9b) Diễn tả thuật toán
Ví dụ: Tìm ƯCLN của 2 số nguyên dương M, N
+ Ý tưởng : Nếu M = N thì ƯCLN(M, N) = M hoặc N.
Nếu M < N thì ƯCL (M, N) = ƯCLN(M, N-M).
Nếu M > N thì ƯCLN (M, N)=ƯCLN(M-N, N).
+ Xác định bài toán Input: M, N hai số nguyên dương
Output: ƯCLN (M, N)
Trang 10b) Diễn tả thuật toán
Bước 3: Nếu M > N thì M M – N rồi quay lại B2
để kiểm tra lại;
Bước 4: N N – M rồi quay lai B2;
Bước 5: Đưa ra ƯCLN và kết thúc;
Trang 11b) Diễn tả thuật toán
* Sơ đồ khối
Trang 12Khi có thuật toán rồi thì máy tính có thể hiểu
và thực hiện theo được hay chưa?
Chưa, việc tiếp theo là phải chuyển đổi thuật toán đó sang chương trình.
Thuật toán + Ngôn ngữ lập trình = chương trình
Trang 133 Viết chương trình
Là việc lựa chọn cách tổ chức
dữ liệu và sử dụng ngôn ngữ lập trình để diễn tả đúng thuật toán
Viết chương trình trong ngôn ngữ nào thì phải tuân theo quy định ngữ pháp của ngôn ngữ đó
Theo em
viết chương
Trang 143 Viết chương trình
Trang 15đắn, do đó chúng
ta phải hiệu chỉnh chương trình
Trang 164 Hiệu chỉnh
Vậy hiệu chỉnh là gì?
Chương trình được kiểm tra bằng cách cho chạy thử trên những bộ Input mà người ta đã biết trước Output
• Các bộ Input – Output tương ứng này được gọi là các Test
• Nếu có sai sót người lập trình phải sửa chương trình rồi thử lại
Quá trình này được gọi là hiệu chỉnh
Trang 17Thử chương trình bằng cách thực hiện nó với một
số bộ Input tiêu biểu (test) để kiểm tra kết quả, nếu sai sót thì hiệu chỉnh lại Quá trình này được gọi là hiệu chỉnh
Trang 185 Viết tài liệu
- Viết tài liệu là mô tả bài toán, thuật toán, thiết kế chương trình, kết quả thử nghiệm và hướng dẫn
sử dụng
- Tài liệu giúp ích cho người sử dụng chương trình và cho việc đề xuất những khả năng hoàn thiện thêm
- Chú ý các bước trên có thể lặp lại nhiều lần cho đến khi ta cho rằng chương trình đã làm việc đúng đắn và hiệu quả
Trang 19Lựa chọn thuật toán tối
ưu nhất
Diễn tả thuật toán
Lựa chọn hoặc thiết kế thuật toan
GIẢI BÀI
TOÁN TRÊN
MÁY TÍNH
Xác định bài toán
Viết chương trình
Hiệu chỉnh
Viết tài liệu
Trang 20Củng cố bài
Câu 1.Các bước cần phải có khi giải bài toán trên máy
tính là:
A Xác định bài toán, lựa chọn hoặc thiết kế thuật
toán, diễn tả thuật toán, hiệu chỉnh, viết tài liệu
B Xác định bài toán, lựa chọn hoặc thiết kế thuật
toán, viết chương trình, viết tài liệu
C Xác định bài toán, lựa chọn hoặc thiết kế thuật
toán, viết chương trình, hiệu chỉnh, viết tài liệu
D Xác định bài toán, viết thuật toán, viết chương
trình, viết tài liệu
Hãy chọn các đáp án đúng trong các câu hỏi sau:
Trang 21Hãy chọn các đáp án đúng trong các câu hỏi sau:Câu 2: Thuật toán tối ưu là thuật toán :
Câu 3: Mục đích của việc hiệu chỉnh là :
A.Xác định lại Input và Output của bài toán
B Phát hiện và sửa sai sót
C Mô tả chi tiết bài toán
D Để tạo ra một chương trình mới
Trang 22Bài tập về nhà.
Hãy viết thuật toán giải phương trình ax+b=0 và đề xuất các Test tiêu biểu
Chuẩn bị trước: - Bài 7: Phần mềm máy tính.
- Bài 8: Những ứng dụng của tin học
Trang 23Cảm ơn quý thầy, cô và các em đã lắng nghe.
Chúc quý thầy, cô và các em ngày làm việc mới hiệu quả.