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:
Người gửi: Đoàn Minh Đức (trang riêng)
Ngày gửi: 08h:26' 28-10-2008
Dung lượng: 373.0 KB
Số lượt tải: 120
Nguồn:
Người gửi: Đoàn Minh Đức (trang riêng)
Ngày gửi: 08h:26' 28-10-2008
Dung lượng: 373.0 KB
Số lượt tải: 120
Số lượt thích:
0 người
Bài 6. Giải bài toán trên máy tính
Bài toán:
Cho tam giác ABC vuông tại A có AB= 4cm; BC=5cm;
Tính AC?
Em tiến hành giải bài toán trên như thế nào?
Đọc kĩ đề xem đề cho biết cái gì và cần tìm cái gì?
Tìm cách giải
Trình bày lời giải
Kiểm tra lại bài làm, chỉnh sửa (chính tả, công thức,...)
Ghi chép lại
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
Vì tam giác ABC vuông tại A
nên theo định lí Pitago ta có:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
AC2= 52 – 42 = 9
AC= 3
Vậy độ dài cạnh AC là 3 dm
Sử dụng định lí Pitago:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
Đề cho biết:
Tam giác ABC vuông tại A
Độ dài cạnh AB
Độ dài cạnh BC
Cần tìm:
- Độ dài cạnh AC
Vì tam giác ABC vuông tại A
nên theo định lí Pitago ta có:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
AC2= 52 – 42 = 9
AC= 3
Vậy độ dài cạnh AC là 3 cm
Việc giải bài toán trên máy tính tiến hành qua các bước như thế nào?
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
§6
1. Xác định bài toán:
BÀI TOÁN
Xác định BT là việc xác định rõ Input, Output và mối quan hệ giữa chúng
Input
Output
Mối quan hệ
Ví dụ: Cho tam giác ABC vuông tại A có AB= 4cm; BC=5cm; Tính AC?
Input: số thực a, c để chỉ độ dài cạnh AB, BC
Output: số thực b để chỉ độ dài cạnh AC.
a2 + b2 = c2
2. Lựa chọn hoặc thiết kế thuật toán:
a. Lựa chọn thuật toán:
BÀI TOÁN TÌM KIẾM
B1: Nhập dãy, nhập khoá k.
B2: i 1;
B3: Nếu ai =k thì thông báo chỉ số i rồi kết thúc.
B4: i i+1;
B5: Nếu i>N thì thông báo dãy A không có số hạng nào có giá trị bằng k rồi kết thúc.
B6: Quay lại B3
Ví dụ:
Thuật toán tìm kiếm tuần tự
Thuật toán tìm kiếm nhị phân
Mỗi thuật toán chỉ giải một bài toán, nhưng có thể có nhiều thuật toán khác nhau cùng giải một bài toán.
2. Lựa chọn hoặc thiết kế thuật toán:
Ví dụ: Tìm ước chung lớn nhất (ƯCLN) của 2 số nguyên dương M và N
Ý tưởng:
Nếu M=N thì ƯCLN của M và N là M
Nếu M > N thì
ƯCLN(M,N) = ƯCLN(M-N, N)
Nếu MƯCLN(M,N) = ƯCLN(M, N - M)
sđk
Ý tưởng:
- Gọi x là số nhỏ nhất trong 2 số A,B
- Nếu A chi hết x và B chia hết cho x
- Ngược lại x=x-1và quay lại xét cho tới khi A,B cùng chia hết cho x
2. Lựa chọn hoặc thiết kế thuật toán:
Ví dụ: Tìm ƯCLN (35, 15)
M = 35
N = 15
M > N
M M- N
M = 35
M = 20
N = 15
Lần duyệt 1
M = 20
M > N
M M- N
M = 5
N = 15
Lần duyệt 2
M < N
N N-M
N = 10
M = 5
Lần duyệt 3
N = 15
M < N
N N-M
N = 10
N = 5
M = 5
Lần duyệt 4
ƯCLN(35, 15) = 5
2. Lựa chọn hoặc thiết kế thuật toán:
Khi thiết kế hoặc lựa chọn thuật toán, người ta quan tâm đến tiêu chí sau : dễ hiểu, thời gian thực hiện nhanh, tốn ít bộ nhớ
Mỗi thuật toán chỉ giải một bài toán, song một bài toán có thể có nhiều thuật để giải. Vì vậy cần phải lựa chọn thuật toán phù hợp nhất.
2. Lựa chọn hoặc thiết kế thuật toán:
b. Diễn tả thuật toán
Cách 1 : diễn tả thuật toán bằng liệt kê các bước
Thuật toán:
B1: Nhập M, N;
B2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến B5
B3: Nếu M>N thì M M-N rồi quay lại B2
B4: N N-M rồi quay lại B2
B5: Đưa ra kết quả ƯCLN rồi kết thúc.
sđk
Đ
Đ
S
S
Cách 2: Diễn tả thuật toán bằng sơ đồ khối
5
10
10
10
5
5
15
25
3
2
1
Lượt
Nhập M ,N
M =N ?
M > N ?
N ?N - M
M ?M - N
Đưa ra M ; Kết thúc
M= 25, N = 10
25 = 10 ?
25 >10
M ?25 - 10
15 = 10 ?
15 >10
M ?15 - 10
5 = 10 ?
5 > 10 ?
N = 10 - 5
5 = 5 ?
ƯSLN (25,10) = 5
M
N
3. Viết chương trình
Lựa chọn cách tổ chức dữ liệu
Sử dụng ngôn ngữ lập trình
Viết chương trình
Ví dụ:
Chương trình cho bài toán tìm ƯCLN viết trên ngôn ngữ lập trình Pascal
program UCLN;
var A,B,X,Y:longint;
begin
write(`nhap vao 2 so nguyen duong A,B: `);
readln(A,B);
X:=A;Y:=B;
while X<>Y do
begin
if X>Y then X:=X-Y
else Y:=Y-X;
end;
writeln(`UCLN(`,A,`,`,B,`)=`,X);
readln;
end.
4. Hiệu chỉnh:
Cần phải thử chương trình bằng cách thực hiện nó với nhiều bộ Input tiêu biểu của bài toán
Những bộ Input và Output tương ứng này gọi là các Test.
Nếu sai sót ta phải sửa lại rồi thử lại.
Hiệu chỉnh
TEST:
M = 8; N = 8 UCLN = 8
M = 25; N = 10 UCLN = 5
M = 88; N = 121 UCLN = 11
M = 17; N = 13 UCLN = 1
Ví dụ: Kiểm chứng tính đúng đắn của chương trình giải phương trình bậc hai ax2 + bx + c = 0 , ta có thể sử dụng bộ Input như sau:
Biệt số ∆ > 0: a=1, b=-5, c=6
Biệt số ∆ = 0: a=1, b=-4, c=4
Biệt số ∆ > 0: a=1, b=4, c=8
5. Viết tài liệu:
Tài liệu phải:
Mô tả bài toán, thuật toán
Thiết kế chương trình
Kết quả thử nghiệm
Hướng dẫn sử dụng
Bt
Hãy chọn phương án đúng nhất . Các bước tiến hành để giải bài toán trên máy tính theo thứ tự là :
Lựa chọn hoặc thiết kế thuật toán ; Xác định bài toán ; Viết chương trình ; Hiệu chỉnh ; Viết tài liệu
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 ( * )
Xác định bài toán ; Viết chương trình ; Lựa chọn hoặc thiết kế thuật toán ; Hiệu chỉnh ; Viết tài liệu
Xác định bài toán ; Lựa chọn hoặc thiết kế thuật toán ; Viết tài liệu ; Viết chương trình ; Hiệu chỉnh ;
Củng cố, dặn dò
Như vậy để giải bài toán trên máy tính chúng ta cần thực hiện qua 5 bướ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
Làm các bài tập trong sgk và sách bài tập
Xem trước bài phần mềm máy tính và bài những ứng dụng trong tin học
Bài toán:
Cho tam giác ABC vuông tại A có AB= 4cm; BC=5cm;
Tính AC?
Em tiến hành giải bài toán trên như thế nào?
Đọc kĩ đề xem đề cho biết cái gì và cần tìm cái gì?
Tìm cách giải
Trình bày lời giải
Kiểm tra lại bài làm, chỉnh sửa (chính tả, công thức,...)
Ghi chép lại
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
Vì tam giác ABC vuông tại A
nên theo định lí Pitago ta có:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
AC2= 52 – 42 = 9
AC= 3
Vậy độ dài cạnh AC là 3 dm
Sử dụng định lí Pitago:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
Đề cho biết:
Tam giác ABC vuông tại A
Độ dài cạnh AB
Độ dài cạnh BC
Cần tìm:
- Độ dài cạnh AC
Vì tam giác ABC vuông tại A
nên theo định lí Pitago ta có:
AB2 + AC2 = BC2
AC2 = BC2 – AB2
AC2= 52 – 42 = 9
AC= 3
Vậy độ dài cạnh AC là 3 cm
Việc giải bài toán trên máy tính tiến hành qua các bước như thế nào?
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
§6
1. Xác định bài toán:
BÀI TOÁN
Xác định BT là việc xác định rõ Input, Output và mối quan hệ giữa chúng
Input
Output
Mối quan hệ
Ví dụ: Cho tam giác ABC vuông tại A có AB= 4cm; BC=5cm; Tính AC?
Input: số thực a, c để chỉ độ dài cạnh AB, BC
Output: số thực b để chỉ độ dài cạnh AC.
a2 + b2 = c2
2. Lựa chọn hoặc thiết kế thuật toán:
a. Lựa chọn thuật toán:
BÀI TOÁN TÌM KIẾM
B1: Nhập dãy, nhập khoá k.
B2: i 1;
B3: Nếu ai =k thì thông báo chỉ số i rồi kết thúc.
B4: i i+1;
B5: Nếu i>N thì thông báo dãy A không có số hạng nào có giá trị bằng k rồi kết thúc.
B6: Quay lại B3
Ví dụ:
Thuật toán tìm kiếm tuần tự
Thuật toán tìm kiếm nhị phân
Mỗi thuật toán chỉ giải một bài toán, nhưng có thể có nhiều thuật toán khác nhau cùng giải một bài toán.
2. Lựa chọn hoặc thiết kế thuật toán:
Ví dụ: Tìm ước chung lớn nhất (ƯCLN) của 2 số nguyên dương M và N
Ý tưởng:
Nếu M=N thì ƯCLN của M và N là M
Nếu M > N thì
ƯCLN(M,N) = ƯCLN(M-N, N)
Nếu M
sđk
Ý tưởng:
- Gọi x là số nhỏ nhất trong 2 số A,B
- Nếu A chi hết x và B chia hết cho x
- Ngược lại x=x-1và quay lại xét cho tới khi A,B cùng chia hết cho x
2. Lựa chọn hoặc thiết kế thuật toán:
Ví dụ: Tìm ƯCLN (35, 15)
M = 35
N = 15
M > N
M M- N
M = 35
M = 20
N = 15
Lần duyệt 1
M = 20
M > N
M M- N
M = 5
N = 15
Lần duyệt 2
M < N
N N-M
N = 10
M = 5
Lần duyệt 3
N = 15
M < N
N N-M
N = 10
N = 5
M = 5
Lần duyệt 4
ƯCLN(35, 15) = 5
2. Lựa chọn hoặc thiết kế thuật toán:
Khi thiết kế hoặc lựa chọn thuật toán, người ta quan tâm đến tiêu chí sau : dễ hiểu, thời gian thực hiện nhanh, tốn ít bộ nhớ
Mỗi thuật toán chỉ giải một bài toán, song một bài toán có thể có nhiều thuật để giải. Vì vậy cần phải lựa chọn thuật toán phù hợp nhất.
2. Lựa chọn hoặc thiết kế thuật toán:
b. Diễn tả thuật toán
Cách 1 : diễn tả thuật toán bằng liệt kê các bước
Thuật toán:
B1: Nhập M, N;
B2: Nếu M = N thì lấy giá trị chung này làm ƯCLN rồi chuyển đến B5
B3: Nếu M>N thì M M-N rồi quay lại B2
B4: N N-M rồi quay lại B2
B5: Đưa ra kết quả ƯCLN rồi kết thúc.
sđk
Đ
Đ
S
S
Cách 2: Diễn tả thuật toán bằng sơ đồ khối
5
10
10
10
5
5
15
25
3
2
1
Lượt
Nhập M ,N
M =N ?
M > N ?
N ?N - M
M ?M - N
Đưa ra M ; Kết thúc
M= 25, N = 10
25 = 10 ?
25 >10
M ?25 - 10
15 = 10 ?
15 >10
M ?15 - 10
5 = 10 ?
5 > 10 ?
N = 10 - 5
5 = 5 ?
ƯSLN (25,10) = 5
M
N
3. Viết chương trình
Lựa chọn cách tổ chức dữ liệu
Sử dụng ngôn ngữ lập trình
Viết chương trình
Ví dụ:
Chương trình cho bài toán tìm ƯCLN viết trên ngôn ngữ lập trình Pascal
program UCLN;
var A,B,X,Y:longint;
begin
write(`nhap vao 2 so nguyen duong A,B: `);
readln(A,B);
X:=A;Y:=B;
while X<>Y do
begin
if X>Y then X:=X-Y
else Y:=Y-X;
end;
writeln(`UCLN(`,A,`,`,B,`)=`,X);
readln;
end.
4. Hiệu chỉnh:
Cần phải thử chương trình bằng cách thực hiện nó với nhiều bộ Input tiêu biểu của bài toán
Những bộ Input và Output tương ứng này gọi là các Test.
Nếu sai sót ta phải sửa lại rồi thử lại.
Hiệu chỉnh
TEST:
M = 8; N = 8 UCLN = 8
M = 25; N = 10 UCLN = 5
M = 88; N = 121 UCLN = 11
M = 17; N = 13 UCLN = 1
Ví dụ: Kiểm chứng tính đúng đắn của chương trình giải phương trình bậc hai ax2 + bx + c = 0 , ta có thể sử dụng bộ Input như sau:
Biệt số ∆ > 0: a=1, b=-5, c=6
Biệt số ∆ = 0: a=1, b=-4, c=4
Biệt số ∆ > 0: a=1, b=4, c=8
5. Viết tài liệu:
Tài liệu phải:
Mô tả bài toán, thuật toán
Thiết kế chương trình
Kết quả thử nghiệm
Hướng dẫn sử dụng
Bt
Hãy chọn phương án đúng nhất . Các bước tiến hành để giải bài toán trên máy tính theo thứ tự là :
Lựa chọn hoặc thiết kế thuật toán ; Xác định bài toán ; Viết chương trình ; Hiệu chỉnh ; Viết tài liệu
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 ( * )
Xác định bài toán ; Viết chương trình ; Lựa chọn hoặc thiết kế thuật toán ; Hiệu chỉnh ; Viết tài liệu
Xác định bài toán ; Lựa chọn hoặc thiết kế thuật toán ; Viết tài liệu ; Viết chương trình ; Hiệu chỉnh ;
Củng cố, dặn dò
Như vậy để giải bài toán trên máy tính chúng ta cần thực hiện qua 5 bướ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
Làm các bài tập trong sgk và sách bài tập
Xem trước bài phần mềm máy tính và bài những ứng dụng trong tin học
 







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