Tải bản đầy đủ (.ppt) (20 trang)

Tin học 10 giải bài toán trên máy tính

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 (223.1 KB, 20 trang )

Tiết 18
GIAÛI BAØI TOAÙN TREÂN MAÙY TÍNH


* Để giải bài toán trên máy tính, ta thường tiến hành qua các bước:

Bước 1: Xác đònh bài toán;
Bước 2: Lựa chọn hoặc 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.


1. Xác đònh bài toán
Là xác đònh Input và Output của bài toán
Ví Dụ: Bài toán tìm ƯCLN của 2 số nguyên
dương M và N?
Input: 2 số nguyên dương M và N
Output: ƯCLN của M và N


2. Lựa chọn hoặc thiết kế thuật toán
a) Lựa chọn thuật
toán:


Mỗi thuật toán chỉ giải một bài toán, nhưng một bài toán
có thể có nhiều thuật toán để giải. Do đó chúng ta phải lựa
chọn hoặc thiết kế thuật toán tốt nhất để giải bài toán
(thuật toán tối ưu)
Ta lựa chọn


 Tiêu chuẩn lựa chọn thuật toán tối ưu:
thuật toán
- Thời gian thực hiện nhanh;
tối ưu dựa
 - Thuật toán đơn giản,và
nhữdễnghiểu;
dễonhìn,
tiêu chuẩn
 - Tốn ít tài nguyên bộ nhớ.
nào?


b) Diễn tả thuật
toán:

Ta có những cách
nào để diễn tả
thuật toán?

Diễn tả thuật toán bằng cách liệt kê
Diễn tả thuật toán bằng sơ đồ khối


* Diễn tả thuật toán bằng cách
liệt kê

 Bài toán:Tìm ùc chung lớn nhất (ƯCLN) của 2 số nguyên
dng M và N?
- Xác đònh bài toán:


Có mấy điều
kiện
kiểm
+ Nếu M=N thì ƯCLN(M,N)=M
hoặc để
ƯCLN(M,N)=N;
tra
bài toán
+ Nếu M>N thì ƯCLN(M,N)=
ƯCLN(M-N,N);
tìm
+ Nếu MƯCLN(M,N)?
 - Ý tưởng:


 Moâ phoûng:
M
N

M
N

M=18
N=24
M=18
M=18
M=12
N=24
N=6

N=6
M<>N
M<>N
M<>N
MM>N
M>N

M=6
M=6 M=1 M=1
N=5 N=5 N=4
M<>N M<>N M<>N
M>N M
N=5
M=1
N=3
M<>N
M
M=1
N=2
M<>N
M
M=6
N=6
M=N
UCLN=6


M=1
N=1
M=N
UCLN=1


- Thuật toán
Cách liệt kê:
Bước 1: Nhập M và N;
Bước 2: Nếu M=N thì thông báo ƯCLN là M hoặc N rồi kết thúc;

Bước 3: Nếu M>N thì M  M-N rồi quay lại bước 2;
Bước 4: N  N-M rồi quay lại bước 2;


* Diễn tả thuật toán bằng sơ đồ
Sơ đồ khối:
khối
Nhập M và N

Sai
M=N

Sai
N  N-M

M>N
Đúng

Đưa ra ƯCLN=M

rồi kết thúc

Đúng
M  M-N


3. Viết chương trình
 Viết chương trình là tổng hợp giữa:

toán.

 - Việc lựa chọn cách tổ chức dữ liệu;
 - Sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật


4. Hiệu chỉnh
Sử dụng các bộ Input đặc trưng cho bài toán để thử tính
đúng đắn của chương trình
2
Tạibậcsao
i hiệu (a ≠ 0),
VD: Chương trình giải phương trình
2 axphả
+bx+c=0
ta có thể thử với ba bộ Input với cáchỉnh?
c trường hợHiệ
p sau:u chỉnh

là chúng ta làm
Cho a, b, c sao cho ∆>0: Kết quả chương trình đưa ra 2nghiệm

gì?

Cho a, b, c sao cho ∆=0: Kết quả chương trình đưa ra nghiệm kép
Cho a, b, c sao cho ∆<0: Kết quả chương trình thông báo pt vô nghiệm


5. Viết tài liệu
 Mục đích của việc viết tài liệu:
 - Giúp ích cho người sử dụng trong quá trình sử dụng chương
trình;
 - Giúp ích cho việc nghiên cứu và đề xuất khả năng hoàn
thiện chương trình.


Bài tập:
Trình bày các bước thực hiện việc giải bài toán:
Giải phương trình bậc nhất trên máy tính.


Củng cố
Các bước giải bài toán trên máy tính:
Bước 1: Xác đònh bài toán;
là xác đònh Intput, Output và mối liên hệ giữa chúng
Bước 2: Lựa chọn hoặc thiết kế thuật toán;
Lựa chọn thuật toán tối ưu, diễn tả thuật tóan bằng liệt kê hoặc SĐK
Bước 3: Viết chương trình;
Sử dụng ngôn ngữ lập trình diễn tả đúng thuật toán
Bước 4: Hiệu chỉnh;
Thử chương trình với các bộ Input đặc trưng cho các trường hợp, phát
hiện lỗi và chỉnh sửa lỗi cho chương trình

Bước 5: Viết tài liệu.
Tài liệu lưu lại những gì liên quan bài toán và hướng dẫn sử dụng
chương trình


Bài toán:
Viết thuật toán giải pt bậc nhất ax+b=0
• Xác định bài toán :
- Input : các hệ số a,b
- Output : các kết luận về nghiệm của pt.
• Ý tưởng : nghiệm của bài toán phụ thuộc vào các số a và b như
sau:
-Nếu a=0 :
+Nếu b=0 :kết luận pt có vô số nghiệm;
+Nếu b≠ 0 : kết luận pt vô nghiệm;
-Nếu a ≠ 0 : kết luận pt có một nghiệm x = -b/a.


•Thuật toán :

- Sơ đồ khối

Nhập a và b
a=0?
Đ
b=0?
Đ
Pt vsn rồi
kết thúc


S
S

nghiệm x=-b/a
rồi kết thúc
Pt vn rồi
kết thúc
Giải pt: 8x+96=0
Pt có nghiệm :x=-12


CÂU HỎI TRẮC NGHIỆM
Câu 1: Các bước cần phải có khi giải bài toán trên máy tính

a. Xác định bài toán,lựa chọn hoặc thiết kế thuật toán,diễn tả
thuật toán,hiệu chỉnh, viết tài liệu.
b. 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, viết tài liệu.
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.
d. Xác định bài toán, viết thuật chọn, viết chương trình, viết
tài liệu.


Câu 2: Mục đích của việc hiệu chỉnh là :
a. Xác định lại Input và Output của bài toán.
b. Phát hiện và sửa sai sót.
c. Mô tả chi tiết bài toán.
d. Để tạo ra một chương trình mới.



Câu 3. Thuật toán tối ưu là?
a) Sử dụng ít thời gian, ít bộ nhớ.. .
b) Sử dụng ít thời gian, nhiều bộ nhớ, ít phép toán.. .
c) Sử dụng nhiều thời gian, nhiều bộ nhớ, ít phép
toán.. .
d) Sử dụng ít thời gian, ít bộ nhớ, ít phép toán.. .



×