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

bài 4. bài toán và thuật toán

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 (296.21 KB, 22 trang )

CHƯƠNG TRÌNH TIN HỌC LỚP 10
(SGK thí điểm)
Chương I
Bài 4. BÀI TOÁN và
THUẬT TOÁN

Xét các yêu cầu sau :
1. Giải phương trình bậc hai ax
2
+bx+c=0
2. Viết một dòng chữ ra màn hình máy tính.
3. Quản lý các cán bộ trong một cơ quan.
4. Tìm ước chung lớn nhất của hai số
nguyên dương a và b.
5. Xếp loại học tập các học sinh trong lớp.
I. BÀI TOÁN
I. BÀI TOÁN
Trong TIN HỌCTrong TOÁN HỌC
Yêu cầu 1 và 4 được
xem là bài toán
Tất cả các yêu cầu trên
đều được xem là bài toán
Trong các yêu cầu trên, yêu cầu
nào được xem như là một bài toán?
Khái niệm
Khái niệm
bài toán
bài toán
trong
trong
Tin học?


Tin học?
Bài toán là việc nào
đó ta muốn máy tính
thực hiện.
TIN HỌC
Đưa vào máy
thông tin gì
Cần lấy ra
thông tin gì
TOÁN HỌC?
TOÁN HỌC?
Các yếu tố cần quan tâm khi
Các yếu tố cần quan tâm khi
giải một bài toán
giải một bài toán
 Trong Tin học, để phát biểu một bài toán,
ta cần trình bày rõ Input và Output của
bài toán đó.
TOÁN HỌC
-
Giả thiết
-
Kết luận
THUẬT NGỮ
Input

Output
CÁC VÍ DỤ
VD1 : Giải phương trình bậc hai
ax

2
+ bx + c = 0 (a ≠ 0).

Input : Các số thực a,b,c (a ≠ 0)

Output : Số thực x thỏa : ax
2
+bx+ c = 0

VD2 : Tìm giá trị nhỏ nhất của các số
trong một dãy số.

Input : Các số trong dãy số.

Output : Giá trị nhỏ nhất trong dãy số.
VD3 : Tìm ước chung lớn nhất của hai số
nguyên dương a và b.

Input :

Output :
VD4 : Xếp loại học tập các học sinh trong
lớp.

Input :

Output :
UCLN của a và b.
Hai số nguyên dương a và b.
CÁC VÍ DỤ (tt)

?
?
?
?
Bảng điểm của học sinh.
Bảng xếp loại học tập.
Nêu m t bài toán và ộ
ch rõ Input, Output ỉ
c a bài toán đó?ủ
Xem thêm các ví dụ trong SGK/24, 25
TÓM LẠI
Một bài toán được cấu tạo bởi 2 thành
phần cơ bản :

Input (Các thông tin đã có)

Output (Các thông tin cần tìm từ Input)
II. THUẬT TOÁN
II. THUẬT TOÁN
Hướng dẫn các thao tác cho máy
thực hiện để tìm ra lời giải
Bài toán
Input Output
Bằng cách nào?
Giải bài toán
Thuật toán
Input Output
THUẬT TOÁN
(Thao tác 1 Thao tác 2 Thao tác n)
Thuật toán để giải một bài 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ình tự xác định sao cho sau khi thực
hiện dãy thao tác đó, từ Input của bài toán
này, ta nhận được Output cần tìm.
BÀI TOÁN
Thuật toán để giải một bài toán là :

Một dãy hữu hạn các thao tác.

Các thao tác được sắp xếp theo một
trình tự xác định.

Sau khi thực hiện dãy thao tác đó, từ
Input ta tìm được Output của bài toán.
MÔ TẢ CÁC THAO TÁC
TRONG THUẬT TOÁN
Có 2 cách mô tả
Liệt kê
Dùng sơ đồ khối
Nêu ra tuần tự các thao
tác cần tiến hành
Dùng một số biểu tượng
thể hiện các thao tác
Giải toán thông thường:

Nếu a = 0 thì () không
phải là pt bậc nhất.
+ Neáu b = 0 thì () voâ
s nghieäm.ố
+ Neáu b ≠ 0 thì () voâ

nghieäm.

Nếu a ≠ 0 thì ( ) có
nghiệm x = -b/a.
a) LIỆT KÊ
LIỆT KÊ :

Bước 1 : Nhập a, b.

Bước 2 : Nếu a = 0 thì
quay lại bước 1, ngược lại
thì qua bước 3.

Bước 3 : Gán cho x giá
trị -b/a, rồi qua bước 4.

Bước 4 : Đưa ra kết quả
x và kết thúc.
VD : Tìm nghiệm phương trình bậc nhất tổng
quát : ax + b = 0 ()
: Thể hiện các thao tác so sánh
b) DÙNG SƠ ĐỒ KHỐI

Trong sơ đồ khối, người ta dùng một số
biểu tượng thể hiện các thao tác như :
: Thể hiện các phép toán
: Quy định trình tự thực hiện các
thao tác
: Thể hiện các thao tác nhập, xuất
dữ liệu

VD: Tỡm nghim phng trỡnh bc nht tng quỏt : ax + b = 0
Nhaọp a, b
a = 0
x = -b/a
Sai
ẹuựng
ẹửa ra x vaứ keỏt thuực

Bc 1 : Nhp a, b.

Bc 2 : Nu a = 0 thỡ
quay li bc 1, ngc
li thỡ qua bc 3.

Bc 3 : Gỏn cho x
giỏ tr -b/a, ri qua
bc 4.

Bc 4 : a ra kt
qu x v kt thỳc.
S KHI
LIT Kấ
Ta cần diễn tả thuật toán bằng
một ngôn ngữ sao cho máy
tính có thể hiểu và thực hiện
được, ngôn ngữ đó gọi là ngôn
ngữ lập trình. Kết quả diễn tả
thuật toán như vậy gọi là
chương trình.
LƯU Ý

III. VÍ DỤ VỀ THUẬT TOÁN
III. VÍ DỤ VỀ THUẬT TOÁN
Bài toán 1 :
Cho dãy số gồm N số sau (N =
5):
11 6 20 4 8
Tìm giá trị NHỎ NHẤT của dãy số
trên ?
HƯỚNG DẪN:
-
Gọi Min là giá trò nhỏ nhất cần
tìm.
-
Gán Min bằng giá trò phần tử đầu
tiên của dãy.

-
Lần lượt so sánh Min với các
phần tử tiếp theo trong dãy. Tại
mỗi vò trí so sánh :
+ Nếu Min lớn hơn giá trò phần
tử cần so sánh trong dãy thì lấy giá
trò của phần tử đó gán lại cho Min.
- Khi so sánh đến phần tử cuối
cùng trong dãy số thì Min sẽ mang
giá trò nhỏ nhất của dãy.
Gán i = 2
11 6 20 4 8
Min
Min=11

Min=6
Min=4
Giá trò nhỏ nhất: 4
Biến i lưu trữ vị trí
tiếp theo mà Min sẽ
so sánh
+ Tăng i lên 1 đơn vị
SƠ ĐỒ KHỐI :
SƠ ĐỒ KHỐI :
Nhập N và dãy a
1
,…, a
N
Min = a
1
, i = 2
i <=N
Min > a
i
Min = a
i
i = i+1
Đưa ra Min
rồi kết thúc
Sai
Đúng
Đúng
Sai
LIỆT KÊ
LIỆT KÊ


Bước 1 : Nhập N và dãy a
1
,…, a
N
.

Bước 2 : Đặt Min= a
1
, i=2;

Bước 3 : Nếu i<=N thì thực hiện bước 4, nếu
không thì chuyển đến bước 5.

Bước 4 :
4.1. Nếu Min > a
i
thì đặt Max=a
i
.
4.2. Tăng i một đơn vò rồi quay về bước 3

Bước 5 : Đưa ra Min rồi kết thúc.
Bài toán 2 :
Tìm giá trị LỚN NHẤT của một dãy số với Input
và Output như sau:
• Input : Số nguyên dương N và dãy N số
a
1
, ,a

N
.
• Output : Giá trị lớn nhất (Max) của dãy số.
Mô tả thuật toán để giải bài toán này theo cả
2 cách liệt kê và dùng sơ đồ khối.
4. VÍ DỤ VỀ THUẬT TOÁN (tt)
4. VÍ DỤ VỀ THUẬT TOÁN (tt)
CÁC THUẬT NGỮ CHÍNH
CÁC THUẬT NGỮ CHÍNH


Là việc nào đó ta muốn
máy tính thực hiện
Các thông tin đã có
(các giả thiết)
Các thông tin cần tìm
từ Input (kết luận)
*Một dãy hữu hạn các thao tác.
*Các thao tác được sắp xếp theo
một trình tự xác định.
*Sau khi thực hiện dãy thao tác
đó, từ Input ta tìm được Output
của bài toán.
Dùng các biểu tượng qui
ước để thể hiện các thao
tác trong thuật toán

Bài toán

Input


Output

Thuật toán

Sơ đồ khối
BÀI TẬP VỀ NHÀ
Bài 1, 3, 4, 5, 6
trang 27 – 28
(SGK)

×