Ví dụ: đối với thuật toán tìm ƯCLN của 2 số nguyên dương M và N ở trên, ta có thể sử dụng ngôn ngữ lập trình Pascal để viết chương trình.. Chương trình tìm ƯCLN(M, N)[r]
(1)CÂU HỎI KIỂM TRA BÀI CŨ Câu 1
Câu 1: Ngơn ngữ lập trình gì? Ngơn ngữ lập trình : Ngơn ngữ lập trình gì? Ngơn ngữ lập trình gồm có loại nào?
gồm có loại nào?
Câu 2
Câu 2: Chương trình dịch dùng để làm gì?: Chương trình dịch dùng để làm gì? Câu 3
Câu 3: Ngơn ngữ lập trình Pascal thuộc loại ngơn : Ngơn ngữ lập trình Pascal thuộc loại ngơn ngữ lập trình loại ngơn ngữ sau?
ngữ lập trình loại ngơn ngữ sau? a Hợp ngữ
c Ngôn ngữ máy
(2)Câu 1
Câu 1: Ngôn ngữ lập trình gì? Ngơn ngữ lập trình : Ngơn ngữ lập trình gì? Ngơn ngữ lập trình gồm có loại nào?
gồm có loại nào?
Trả lời:
- Ngôn ngữ lập trình ngơn ngữ dùng để viết chương trình.
- Ngơn ngữ lập trình gồm loại: + Ngôn ngữ máy.
+ Hợp ngữ.
+ Ngơn ngữ lập trình bậc cao.
(3)Câu 2
Câu 2: Chương trình dịch dùng để làm gì?: Chương trình dịch dùng để làm gì? TRẢ LỜI KIỂM TRA BÀI CŨ
Trả lời: Chương trình dịch dùng để dịch chương trình viết ngơn ngữ lập trình bậc cao sang ngôn ngữ máy.
Câu 3
Câu 3: Ngơn ngữ lập trình Pascal thuộc loại ngơn : Ngơn ngữ lập trình Pascal thuộc loại ngơn ngữ lập trình loại ngơn ngữ sau?
ngữ lập trình loại ngơn ngữ sau?
(4)Xét ví dụ: Tìm ước số chung lớn (ƯCLN) số nguyên dương M N.
M =
M = 2525, N = , N = 1010
ĐẶT VẤN ĐỀ
Với giá trị:
Với giá trị:
M =
M = 88, N = , N = 88
M =
M = 8888, N = , N = 121121
M =
(5)Vậy sử dụng máy tính để giải tốn thì có ưu điểm
(6)§6. GIẢI BÀI TỐN TRÊN
MÁY TÍNH
Việc giải tốn máy tính thường tiến hành theo bước sau:
Bước 1: Xác định toán;
Bước 2: Lựa chọn 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;
(7)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
1./ Xác định tốn:
Input: thơng tin có
Output: thơng tin cần tìm từ Input
Bài tốn 1: Tìm ước chung lớn (ƯCLN) số nguyên dương M N.
- Mỗi toán đặc tả thành phần:
- Xác định Input, Output toán sau:
Input: số nguyên dương M, N Output: ƯCLN(M, N)
Bài toán 2: Tìm đưa nghiệm phương trình bậc tổng quát: ax + b = 0
Input: số thực a, b
(8)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
2./ Lựa chọn thiết kế thuật toán:
- Một tốn có nhiều thuật tốn để giải, nên ta cần phải lựa chọn thuật toán cho phù hợp
a./ Lựa chọn thuật toán:
- Khi thiết kế lựa chọn thuật toán, ta thường quan tâm đến tài nguyên như: thời gian thực hiện, số lượng nhớ, việc viết chương trình cho thuật tốn đơn giản,
Ví dụ: Tìm kiếm k = 23 dãy số A sau:
7, 10, 16, 19, 21, 23, 25, 30, 40, 50, 60
(9)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
2./ Lựa chọn thiết kế thuật tốn: b./ Diễn tả thuật toán:
Các bước để diễn tả thuật toán:
Xác định toán Nêu ý tưởng
(10)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH Ví dụ: Diễn tả thuật tốn tìm ước chung lớn (ƯCLN) hai số nguyên dương M N.
Giải
Xác định toán:
- Input: M N
- Output: ƯCLN(M, N)
Ý tưởng:
(11) Xây dựng thuật toán:
- Cách 1: Liệt kê bước - Cách 2: Vẽ sơ đồ khối + B1: Nhập M N
+ B2: Nếu M = N lấy giá trị chung làm ƯCLN chuyển đến B5
+ B3: Nếu M > N M M – N quay lại B2
+ B4: N N – M quay
lại B2
+ B5: Đưa kết ƯCLN kết thúc
Nhập M N
M = N? Đúng
Sai
M > N? M M – N
N N – M
Đúng Sai
(12) Ví dụ mơ phỏng:
ƯCLN(25, 10) = 5
M=25
N=10
M M - N
M M - N
M=15
N=10
M M - N
M M - N
M=5
N=10
N N - M
N N - M
M=5
N=5
Tìm ước chung lớn số nguyên dương M = 25 N = 10?
(13)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
3./ Viết chương trình:
Là tổng hợp việc:
- Lựa chọn cách tổ chức liệu
(14)Chương trình tìm ƯCLN(M, N) Sử dụng ngơn ngữ lập trình Pascal.
Diễn đạt đúng thuật
toán Tổ chức
(15)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
4./ Hiệu chỉnh:
- Ta thực thử chương trình số Input tiêu biểu để kiểm tra kết (Output) nhằm phát sửa lỗi
- Các Input - Output tương ứng gọi Test
- Đề xuất Test cho chương trình tìm ƯCLN số nguyên dương M N:
ƯCLN(8, 8) = 8
ƯCLN(8, 8) = 8
M =
M = 88, N = , N = 88
M =
M = 8888, N = , N = 121121 M =
M = 1717, N = , N = 1313 ƯCLN(17, 13) = 1ƯCLN(17, 13) = 1
ƯCLN(88, 121) = 11
(16)§
§6 6 GIẢI BÀI TỐN TRÊN MÁY TÍNHGIẢI BÀI TỐN TRÊN MÁY TÍNH
5./ Viết tài liệu:
Khi viết tài liệu, tài liệu cần phải có:
Mơ tả tốn. Diễn tả thuật toán.
(17)CỦNG CỐ
Bài toán 1: Chỉ rõ Input-Output: “Cho ba cạnh a, b, c tam giác ABC, tính diện tích S tam giác đó”
- Input: ba số thực a, b, c
- Output: số thực S (diện tích tam giác ABC)
Bài tốn 2: Đề xuất Test để kiểm tra tính đắn chương trình: “Giải phương trình bậc tổng quát ax2 + bx + c = 0”.
Có thể cho chương trình chạy với số Test sau: - Biệt số Δ > 0; a = 1, b = -5, c =
(18)DẶN DÒ
1 Xem lại học.
1 Xem lại học.
2 Trả lời câu hỏi tập (SGK – trang 51)
2 Trả lời câu hỏi tập (SGK – trang 51)
3 Chuẩn bị mới:
3 Chuẩn bị mới: §7 PHẦN MỀM MÁY TÍNH §7 PHẦN MỀM MÁY TÍNH
(SGK – trang 51)
(SGK – trang 51)