Tải bản đầy đủ (.doc) (6 trang)

giao an bai so 6(10)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (72.83 KB, 6 trang )

Chơng I: Một Số Khái Niệm Cơ Bản Về Tin Học
Tiết 18, Bài 6: Giải Toán Trên Máy Tính
I Mục Đích Và Yêu Cầu
- Giúp học sinh nắm đợc trình tự các bớc tiến hành giải bài một toán
trên máy tính
- Biết cách lựa chọn thuật toán tối u cho mỗi bài toán
- Phát triển năng lực t duy của mỗi học sinh
II Phơng Tiện
- giáo viên: sách giáo khoa, giáo án, bảng phụ
- học sinh: sách giáo khoa, sách tham khảo
II Nội Dung Tiết Dạy
1 Tổ chức lớp: ổn định lớp, kiểm tra sĩ số.
2 Kiểm tra bài cũ:
Câu hỏi:
Câu1: Em hiểu thế nào là ngôn ngữ lập trình? Có mấy loại
ngôn ngữ lập trình?
Câu2: Tìm Input, Output của bài toánsau:
Cho 2 số nguyên a,b. Tim max của 2 số đó?
3 Tiến trình tiết dạy
Hoạt động của giáo viên Hoạt động của học sinh
- Đặt vấn đề: Chúng ta đã biết máy tính là
công cụ giúp đỡ con ngời rất nhiều trong
cuộc sống. Vì vậy chúng ta phải học cách
sử dụng máy tính. Học cách sử dụng máy
tính thực chất là học cách giao cho máy
tính những việc ta muốn nó làm . Việc giải
bài toán trên máy tính cũng là cách sử dụng
máy tính. Để biết các bớc để giải một bài
toán trên máy tính là gì? và thực hiện nh
thế nào? ta cùng nhau tìm hiểu nội dung bài
học hôm nay tiết 18, bài 6


Giải Toán Trên Máy Tính
- Học sinh nghe giảng
Hoạt động của giáo viên Hoạt động của học sinh
Các em đã học cách giải một bài toán thông
thờng baogiờ cũng gồm các bớc nh
- Xác định bài toán
- Nêu ý tởng bài toán
- Học sinh nghe giảng
1
- Giải bài toán
- Kiểm tra kết quả
Cũng giống nh vậy việc giải một bài toán trên
máy tính cũng gồm có 5 bớc sau:
- 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
Để hiểu rõ hơn các bớc thực hiện nh thế nào
ta đi vào tìm hiểu từng bớc một nh sau
1 Xác định bài toán
- Đây là bớc đầu tiên trong quá trình giải
toán trên máy tính
- Câu hỏi: Theo các em xác định bài toán là
xác định những phần nào
- Trớc mỗi bài toán ta phải tiến hành xác định
bài toán tức là xác định
+ input: các dữ liệu bài toán cho
+ Output: yêu cầu của bài toán
nhằm mục đích lựa chọn ngôn ngữ lập trình

và xây dựng thuật toán thích hợp
- Chúng ta cùng nhau xét VD sau
Câu hỏi: Xác định bài toán sau:
Cho số nguyên dơng a, b.Tìm UCLN của 2
số trên
- Sau khi xác định bài toán ta phải lựa chọn
hoặc thiết kế thuật toán thích hợp để giải bài
đó. Ta xét mục 2 của bài học
2 Lựa Chọn Hoặc Thiết Kế Thuật Toán
Đây là bớc quan trọng nhất trong quá trình
giải toán trên máy tính.
Ta đi vào mục thứ nhất
a- Lựa chọn thuật toán
Câu hỏi: Nêu khái niệm thuật toán?
Câu hỏi: Thuật toán của bài toán này có thể
dùng để giải đựơc bài toán khác hay không?
Câu hỏi: Vậy mỗi bài toán có phải chỉ có duy
nhất một thuật toán giải bài toán hay không?
- Học sinh ghi bài
-Trả Lời: Xác định input và
output của bài toán
- Học sinh nghe giảng
trả lời: Input: 2 số nguyên dơng
a, b
Output: UCLN của 2 số a, b
Trả lời: Thuật 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ật tự nhất định
sao cho sau khi thực hiện dãy
các thao tác đó từ input ta thu đ-

ợc output của bài toán.
Trả lời: Không
Trả lời: Không
- Học sinh nghe giảng
2
- Đúng vậy mỗi bài toán không phải chỉ có
duy nhất một thuật toán.Ta xét bài toán tìm
kiếm ta có 2 thuật toán nh sau:
C1: thuật toán tìm kiếm tuần tự
C2: thuật toán tìm kiếm nhị phân
- Nh vậy mỗi thuật toán chỉ giải1 bài toán
duy nhất nhng mỗi bài toán có thể có nhiều
thuật toán giải khác nhau, do đó ta phải lựa
chọn hoặc thiết kế thuật toán tối u.
- Thuật toán tối u là thuật toán có các đặc
điểm sau:
+ Dễ hiểu
+ Trình bày khoa học
+ Thời gian chạy nhanh
+ Tốn ít bộ nhớ
- khi lựa chon thuật toán ngời ta thờng quan
tâm đến thời gian thực hiện, số lợng ô nhớ
trong đó ngời ta quan tâm nhất là thời gian
thực hiện
Câu hỏi: Đối với 1 dãy đã đợc sắp xếp thì
thuật toán Tìm kiếm nhị phân và tìm kiếm
tuần tự thuật toán nào thực hiện ít thao tác
hơn?
- một tiêu chí khác mà nhiều ngời quan tâm
khi lựa chọn hoặc thiết kế thuật toán là ít phức

tạp
- Sau khi lựa chọn hoặc thiết kế thuật toán ta
phải biểu diễn thuật toán đó
b- Diễn tả thuật toán
- Câu hỏi: Có mấy cách để diễn tả 1 thuật
toán?

-Ta cùng nhau xét VD cụ thể sau:
VD: Tìm UCLN của 2 số nguyên a, b
xác định bài toán ta đã thực hiện ở bớc1.
Sau khi xác định bài toán ta cùng nhau xây
dựng ý tởng thuật toán nh sau:
Ta xét các trờng hợp của a và b
+ nếu a=b thi ta có ngay UCLN(a,b)=a=b
+ nếu a>b thì UCLN(a,b)=UCLN(b,a-b)
+ nếu a<b thì UCLN(a,b)=UCLN(a,b-a)
Dựa vào ý tởng thuật toán ta có thể biểu diễn
thuật toán bằng cách liệt kê nh sau:
B1: nhập 2 số nguyên a, b
B2: nếu a=b thì đa ra UCLN rồi kết thúc
- Học sinh ghi bài
- Học sinh ghi bài
Trả lời: thuật toán tìm kiếm nhị
phân
Trả Lời: Có 2 cách, đó là
+ Liệt kê
+ Sơ đồ khối

- Học sinh nghe giảng kết hợp
ghi bài

3
B3: nếu a>b thì a->a-b rồi quay lại bớc 2
B4: nếu a<b thì b->b-a rồi quay lại bớc 2
B5: đa ra kết luận
Để các em hiểu rõ hơn cô có bảng phụ sau
Lần
duyệt
1 2
a 10 10 5
b 15 5 5
=>UCLN(10,15)=UCLN(10,5)=UCLN(5,5)=5
-Sau khi biểu diễn thuật toán ta phải viết ch-
ơng trình cho thuật toán đó.Đó là bớc 3 của
quá trình giải toán trên máy tính
3 Viết Chơng Trình
- Câu hỏi: Có mấy loại ngôn ngữ lập trình?
Đó là những ngôn ngữ nào?

- Viết chơng trình là tổng hợp giữa 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 phù hợp để diễn tảđúng thuật
toán
-Lu ý khi viết ngôn ngữ nào thì phải tuân theo
đúng quy định của ngôn ngữ đó
VD: trong Pascal và trong C
+Lệnh bắt đầu chơng trình
begin {
+ Lệnh kết thúc chơng trình
end }
- Trong phần viết thuật toán thì chơng trình

dịch chỉ có thể phát hiện lỗi ngữ pháp chứ
không thể phát hiện lỗi thuật toán cho nên sau
khi viết chơng trình ta phải kiểm tra lại thuật
toán.
Công việc này đợc thực hiện trong bớc 4 hiệu
chỉnh
4 Hiệu Chỉnh
- Chơng trình đợc viết không phải khi nào
cũng đảm bảo tính đúng đắn, có thể mắc sai
sót cho nên sau khi viết xong phải thử lại với
các bộ dữ liệu in/output tiêu biểu khác nhau.
Các bộ in/output nh vậy gọi là các test .Nếu
có sai sót ta phải xem xét chơng trình rồi sửa
- Học sinh tự viết cách biểu diễn
bằng sơ đồ khối vào vở
Trả Lời: Có 3 loại ngôn ngữ lập
trình là:
+ ngôn ngữ máy
+ hợp ngữ
+ ngôn ngữ bậc cao
- Học sinh ghi bài
- Học sinh ghi bài
- Học sinh nghe giảng
4
lại cho đúng. Quá trình này gọi là hiệu chỉnh
VD để kiểm tra tính đúng đắn của thuật toán
tìm UCLN nh VD trên ta có thể thử với các bộ
test sau
a1, b=3 => UCLN(1,3)=1
a= 7, b=4 => UCLN(7,4)=1

a=7, b=14 => UCLN(7,14)= 7
- Sau khi đã hoàn thành thuật toán và sửa các
lỗi chơng trình, bớc cuối cùng của quá trình
giải toán trên máy tính là viết tài liệu
5 Viết Tài Liệu
Viết tài liệu nhằm mô tả lại thuật toán, viết
chơng trình, và hớng dẫn sử dụng chơng trình
đó.
Tài liệu đó rất có í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
- GV cho HS đọc SGK mục 5 và trả lời câu
hỏi sau vào vở
Câu hỏi: + Tài liệu này do ai viết?
+ Tài liệu mô tả cái gì?
+ Tài liệu viết cho ai?

- Học sinh ghi bài
- Đọc SGK và thảo luận trả lời
câu hỏi vào vở
Trả lời:
+ Tài liệu do ngời lập trình
viết
+ Tài liệu mô tả 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 viết cho ngời sử
dụng chơng trình
4 Củng cố
Qua bài học hôm nay các em cần nắm vững các bớc để giải một bài toán

trên máy tính gồm có:
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ỉnh
B5: Viết tài liệu
Trong đó đặc biệt chú ýđến bớc lựa chọn hoặc thiết kế thuật giải
5 Bài tập về nhà
Yêu cầu học sinh làm bài tập SGK trang 51 và sách BT trang 23,24
6 Rút kinh nghiệm tiết dạy sau
5
NhËn XÐt cña Gi¸o viªn híng dÉn chuyªn m«n




















Ngµy th¸ng n¨m 2007
GVHD
(KÝ ghi râ hä tªn)
6

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×