Giải bài toán bằng máy tính điện tử
Trang 1Giáo án số 6 GIẢI BÀI TOÁN TRÊN MÁY TÍNH
Giáo viên hướng dẫn: Trần Doãn Vinh Sinh viên thực hiện: : Lê Khắc Sơn Thuận Lớp :A-K54-CNTT
A 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
- Nêu và làm rõ các khái niệm như: 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
- Giúp học sinh nắm được nội dung cụ thể và 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
Học sinh cần nắm được những kỹ năng:
- Xác định bài toán.
- Lựa chọn hoặc thiết kế thuật toán phù hợp.
- Viết chương trình
- Hiệu chỉnh.
- Viết tài liệu.
B Phương pháp phương tiện
1.Phương pháp:
- Kết hợp giảng dạy, thiết trình, vẽ hình minh hoạ ,vấn đáp…
2.Phương tiện học tập:
- Sách giáo khoa tin học lớp 10
- Vở ghi lí thiết
- Và các tài liệu tham khảo ( nếu có)
C.Tiến trình lên lớp, nội dung bài giảng
I.Ổn định lớp(1’)
- Yêu cầu lớp trưởng báo cáo sĩ số, ổn định lớp
II.Kiểm tra bài cũ và gợi động cơ(4’)
- Quá trình học sẽ lồng việc vấn đáp kiến thức mới , nhắc lại những kiến
thức đã học và cho điểm
- Máy tính là công cụ hổ trợ rất nhiều trong cuộc sống của con người Bằng máy tính con người có thể giải quyết các công việc mà bình thường khó có thể làm được bởi tính phức tạp của nó Nhưng muốn máy tính thực hiện như thế thì đưa cách giải bài toán đó vào máy tình như thế nào? Để tiến hành giải một bài toán trên
Trang 2máy tính thì ta cần thực hiện những công đoạn nào? Chúng ta đi vào nội dung bài học hôm nay để tìm hiểu các bước giải bài toán trên máy vi tính?
III.Nội dung bài giáng:
1.Xác định bài toán
- Xác định bài toán là việc xác định
các thành phần Input và Output của bài
toán đó, đồng thời xác định mối quan hệ
giữa hai thành phần này
- Ví dụ : Cho bài toàn tìm ước
chung lớn nhất của hai số A và B
- Thuyết trình cho học sinh hiểu để giải được một bài toán trước tiên ta phải xác định được bài toán
Các thành phần Input và uotput
- Với ví dụ đã cho thì Input
và Output là gì?
Trả lời:-Input là hai số nguyên
dương A và B -Output :UCLN(A,B)
- xác định bài toán nhằm mục đích gì?
+ Lựa chọn thuật toán + Thể hiện các đại lượng đã cho + Thể hiện các đại lượng phát sinh + Lựa chon ngôn ngữ lập trình thích hợp
5’
2.Lựa chọn hoặc thiết kế thuật toán
a Lựa chọn thuật toán
- Một bài toán có thể có nhiều thuật toán
dùng để giải, do đó ta phải lựa chọn thuật
toán thích hợp để giải bài toán đó
- Tiêu chí lựa chọn thuật toán:
+ Thời gian thực hiện
+ Số lượng ô nhớ
+ Độ phức tạp của thuật toán
b.Diễn tả thuật toán
-Sau khi lựa chọn thuật toán thì ta biểu diễn
thuật toán đó bằng cách đã học
Kết luận: Đây là bước quan trọng để tiến
hành giải một bài toán trên máy tính
- Có thể dùng thuật toán của bài
toán này để giải bài toán khác không?
-Không thể được, một thuật toán thì chỉ dùng để giải một bài toán cụ thể
-Yêu cầu học sinh lên vẽ sơ đồ thuật
giải cho bài toán vừa nêu:
- Với bài toán đã cho có thuật giải nào nữa không ?
Trả lời: Có thể dùng thuật toán chia lấy dư thay cho thuật toán dùng phép trừ cụ thể :
- Nếu A=B thì UCNL(A,B)=A
- Nếu A>B thì
10’
Trang 3Ví dụ: Bài toán tìm ước chung lớn nhất của
hai số A và B
Diễn tả thuật toán bằng phương pháp liệt kê
- nếu A=B thì UCNL(A,B)=A
- nếu A>B thì
UCLN(A,B)=UCLN(A-B,B)
- nếu A<B thì
UCLN(A,B)=UCLN(A,B-A)
- Diễn tả theo sơ đồ khối
UCLN(A,B)=UCLN(A mod B,B) -Nếu A<B thì
UCLN(A,B)=UCLN(A,B mod A) Diễn tả theo sơ đồ khối:
- Trong 2 thuật toán trên ta nên lựa chon thuật toán nào ? Vì sao? Trả lời : Nên lựa chọn thuật toán dùng phép chia lấy dư bởi vì số bước thực hiện ít hơn
3 Viết chưong trình
- Lựa chọn cách tổ chức dữ liệu và ngôn
ngữ lập trình để diễn đạt đúng thuật toán
- Khi viết chương trình thì nên lựa chọn một
ngôn ngữ lập trình hoặc một chương trình
chuyên dụng để diễn tả thuật toán
Em biết những ngôn ngữ lập trình nào ?
Ví dụ như Pascal là một ngôn ngữ lập trình quen thuộc mà các em sẽ được học trong chương trình học phổ thông trung học
7’
4 Hiệu chỉnh
- Khi viết xong chương trình thì chương
trình mà vẫn còn lỗi có thể là lỗi, lỗi cú
pháp hoặc lỗi chương trình, do đó chúng ta
cần hiệu chỉnh chương trình để có chương
trình hoàn thiện và rút ngắn thời gian thực
hiện bài toán
- Dùng các bộ Test( bộ Input cho vào mà ta
- Lấy một số bộ s với chương trình tìm UCLN của hai số A và B
Vd:
+ UCLN(1,6)=1;
+UCLN(3,6)=3;
- Cho học sinh lấy một số ví dụ khác và cho bộ Test để kiểm thử
7’
Trang 4dễ dàng biết được Output của nó) để kiểm
thử tính chính xác của chương trình
5 Viết tài liệu
- Là việc mô tả bài toán, thuật toán, thiết kế
chương trình, kết quả kiểm nghiệm và
hướng dẫn sử dụng
- Mục đích của việc viết tài liệu giúp cho
người lập trình biết trình tự các bước mình
làm để phát triển những khả năng hoàn
thiện Ngoài ra còn giúp cho người sử dụng
dễ dàng hơn trong việc tìm hiểu chương
trình
7’
I.Cũng cố bài giảng
Hôm nay chúng ta đã làm quen với các bước để giải bài toán trên máy tính
Xác định bài toán
Lựa chọn hoặc thiét kế thuật toán Quan tâm đến các thông số như là thời gian, độ phức tạp, số tài
nguyên cần được sử dụng
Viết chương trình Hiệu chỉnh Viết tài liệu II Bài tập về nhà và câu hỏi ôn tập Ôn lại bài đã học Cho bài toán giải phương trình Ax+b=0 Em hãy xác định Input và Output của bài toán? vẽ sơ đồ khối biểu diễn thuật toán và cho một số bộ kiểm thử? III Nhận xét rút kinh nghiệm giờ giảng. ………
………
………