Upload
tran-nhan
View
155
Download
1
Embed Size (px)
Citation preview
1
Bài 6: Giải Bài Toán TrênMáy Tính
12/17/2014 1
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
KIỂM TRA BÀI CŨ
1. Em hãy so
sánh ngôn
ngữ máy và
ngôn ngữ lập
trình bậc cao?
2. Chương trình
dịch dùng để
làm gì?
Hướng dẫn trả lời
Ngôn ngữ máy Ngôn ngữ bậc cao
-Viết bằng mã nhị
phân.
-Máy tình hiểu ngay.
-Mỗi loại máy có một
ngôn ngữ riêng.
-Viết bằng ngôn ngữ
gần với ngôn ngữ tự
nhiên.
-Muốn máy hiểu
được phải chuyển
sang ngôn ngữ máy.
-Không phụ thuộc
vào loại máy.
Chương trình dịch dùng để dịch từ chương
trình viết bằng ngôn ngữ khác sang ngôn
ngữ máy.
12/17/2014 2
MỤC ĐÍCH
YÊU CẦU
-Giới thiệu cách dùng máy tính để giải bài toán.
-Củng cố rõ hơn về khái niệm về bài toán, thuật toán,
dữ liệu, lệnh, ngôn ngữ lập trình và chương trình.
-Nắm được nội dung cụ thể các bước cần thực hiện
khi giải một bài toán trên máy tính
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 3
B1. Xác định
bài toán
B2. Lựa chọn
hoặc thiết kế
thuật toán
B3. Viết chương
trình
B4. Hiệu chỉnhB5. Viết tài liệu
NỘI DUNG
Bài 6:: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 4
NỘI DUNG
1. XÁC ĐịNH
BÀI TOÁN
1. XÁC ĐỊNH BÀI TOÁN
Ví dụ: Cho bài toán tìm ước chung lớn nhất của hai
số M và N là 2 số nguyên dương.
Việc xác định bài toán là xác định rõ hai thành
phần:
Input Output
Input cho M,N
Output tìm UCLN(M,N)
Hãy xác định bài toán trên?
Bài 6:: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 5
2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN
a. Lựa chọn thuật toán
Có thể
có nhiều
cách giải
(thuật toán)
BÀI TOÁN
Cách 1
Cách 2
Cách 3
. . .
Cần phải chọn cách giải (Thuật toán) sao cho :
Thuật toán cần ít thời gian thực hiện, chiếm ít ô
nhớ, thực hiện ít phép toán. . .
Thuật toán ít phức tạp
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
- Lựa chọn thuật toán và tổ chức dữ liệu.
Bài 6:: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
KẾT QUẢ
12/17/2014 6
2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN
b. Diễn tả thuật toán
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả
thuật toán
Tìm ước chung lớn nhất của hai số nguyên dương
M,N.
Nếu M=N thì giá trị chung là UCLN
Nếu M>N thì UCLN(M,N)=UCLN(M-N,N)
Nếu M<N thì UCLN(M,N)=UCLN(M,N-M)
Trình bày ý tưởng một cách giải
Xác định bài toán
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 7
2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN
b. Diễn tả thuật toán
? Thuật toán liệt kê
B1:Nhập M,N
B2: Nếu M=N thì giá trị
chung là UCLN rồi kết
thúc
B3:Nếu M>N thì M M-N
chuyển sang B2
B4: N N-M chuyển sang B2
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả
thuật toán
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 8
2. LỰA CHỌN HOẶC THIẾT KẾ THUẬT TOÁN
b. Diễn tả thuật toán
Thuật toán bằng sơ đồ khối
Nhập M,N
N N-M
M=N Đưa KQ
KT
M>N
S
Đ
S
M M-NĐ
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả thuật
toán
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 9
3. VIẾT CHƯƠNG TRÌNH
Thuật toán+ Ngôn ngữ lập trình=chương trình
Program Tin UCLN;
Var M, N, R:integer;
Begin
Write(‘Nhap vao M,N);
Read(M,N);
While M<>N do
IF M>N THEN
M:=M-N;
ELSE
N:=N-M;
Write(‘ uoc chung lon nhat la:’, M);
End.
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả thuật
toán
3. VIẾT
CHƯƠNG
TRÌNH
Bài 6:: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 10
4. HIỆU CHỈNH
M=9,N=15;
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả thuật
toán
3. VIẾT
CHƯƠNG
TRÌNH
4. HIỆU CHỈNH
3
3
6
6
15
N
UCLN(M,N)
34
33
92
91
MLẦN
? Chạy thử chương trình với các bộ Input tiêu biểu
để tìm ra Output:
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
Nhập M,N
N N-M
M=N Đưa KQ
KT
M>N
S
Đ
S
M M-NĐ
12/17/2014 11
Nhập M,N
N N-M
M=N Đưa KQ
KT
M>N
S
Đ
S
M M-NĐ
4. HIỆU CHỈNH
? Chạy thuật toán trên theo từng bước và điền vào phiếu học tập với bộ
Input(M, N): M=6, N=1 để có được Output
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả
thuật toán
3. VIẾT
CHƯƠN
G TRÌNH
4. HIỆU
CHỈNH
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 12
5. VIẾT TÀI LIỆU
Tài liệu phải mô tả chi tiết toàn bộ 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 cho việc sử dụng chương trình và đề
xuất những khả năng hoàn thiện thêm.
Các bước trên có thể lặp đi 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ả.
NỘI DUNG
1. XÁC ĐỊNH
BÀI TOÁN
2. LỰA CHỌN
HOẶC
THIẾT KẾ
THUẬT
TOÁN
a. Lựa chọn
thuật toán
b. Diễn tả thuật
toán
3. VIẾT
CHƯƠNG
TRÌNH
4. HIỆU CHỈNH
5. VIẾT TÀI
LIỆU
Bài 6: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
12/17/2014 13