Các yếu tố cần quan tâm khi 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 đó.. KHÁI NIỆM THUẬT TOÁNHướng dẫn các thao t
Trang 1TRƯỜNG THPT TÂN THẠNH
TỔ LYÙ – TIN - CN
GV: HU NH TH S M HU NH TH S M Ỳ Ỳ Ị Ị Ậ Ậ
V C C EM H C SINH À Á Ọ
Trang 2Bài 4 BÀI TỐN và THUẬT
TỐN
II KHÁI NIỆM THUẬT TOÁN:
Trang 3• Xét các yêu cầu sau :
2 Quản lý các cán bộ trong một cơ quan
3 Tìm ước chung lớn nhất của hai số
nguyên dương a và b
4 Xếp loại học tập các học sinh trong lớp
I KHÁI NIỆM BÀI TOÁN:
Trong TIN HỌC
Trong TỐN HỌC
Yêu cầu 1 và 3 được
xem là bài tốn
Tất cả các yêu cầu trên
đều được xem là bài tốn
Trong các yêu cầu trên, yêu cầu
nào được xem như là một bài tốn?
Trang 4Khái niệm bài toán trong
Tin học?
Bài toán là việc nào
đó ta muốn máy tính
thực hiện.
Trang 5TIN HỌC
Đưa vào máy thông tin gì
Cần lấy ra thông tin gì TOÁN HỌC?
Các yếu tố cần quan tâm khi
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
Trang 6CÁC VÍ DỤ
ax2 + bx + c = 0 (a ≠ 0).
Input : Các số thực a,b,c (a ≠ 0)
Output : Số thực x thỏa : ax2+bx+ c = 0
trong một dãy số.
Input : Các số trong dãy số.
Output : Giá trị nhỏ nhất trong dãy số.
Trang 7VD3 : 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.
Trang 8TÓ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)
Trang 9II KHÁI NIỆM 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 tốn Input Bằng cách nào? Output
Giải bài tốn
Thuật tốn
Trang 10Input THUẬT TOÁN Output
(Thao tác 1Thao 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.
Trang 11Tìm giá trị LỚN NHẤT của một dãy số nguyên:
Xác định bài toán:
Input : Số nguyên dương N và dãy N số
a1, ,aN.
Output : Giá trị lớn nhất (Max) của dãy số.
Ý tưởng:
-Đặt giá trị Max = a1
- Lần lượt cho i chạy từ 2 đến N, so sánh giá trị ai với giá trị Max, nếu ai>Max thì Max nhận giá trị mới là
ai
VÍ DỤ VỀ THUẬT TỐN
Trang 12MÔ 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
Trang 13Cách 1: Liệt kê các bước
B1: Nhập N và dãy a 1 , , a… N ;
B2: Max ← a 1 ; i ← 2;
B3: Nếu i > N thì đưa ra giá trị Max rồi kết thúc;
B4: Nếu a i > Max thì Max ← a i ;
B5: i ← i+1 rồi quay lại B3
GHI CHÚ:
- Trong thuật toán trên, i là biến chỉ số và có giá trị
nguyên thay đổi từ 2 đến N+1.
- Mũi tên ← trong thuật toán trên được hiểu là gán giá trị của biểu thức bên phải cho biến ở bên trái mũi tên
Ví du: iï ← 2 có nghĩa là i = 2.
Trang 14: Thể hiện các thao tác so sánh
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
Trang 15Sai
Đúng
Sai
Nhập N và dãy a 1 ,…,a N
Max ← a 1 ; i ← 2
i > N ?
a i > Max ?
Max ← a i
i ← i + 1
Đưa ra Max rồi kết thúc
B1: Nhập N và dãy a 1 , ,a… N ;
B2: Max ← a 1 ; i ← 2;
B3: Nếu i > N ? + Đưa ra giá trị Max rồi kết thúc;
B4 : Nếu a i > Max ? + Đúng thì Max ← ai +Sai: i ← i + 1 rồi quay lại B3.
Cách 2: Dùng sơ đồ khối
Trang 16Tìm giá trị lớn nhất của dãy số gồm N số
sau: (N = 6)
a1 a2 a3 a4 a5 a6
N: 21 15 4 24 32 9
Max=21
i>N
3
i =2 4 5 6 7
Sai Sai Sai Sai Sai
Đúng
Đúng
ai>Max
Max = 32
Trang 17CỦNG CỐ
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)
*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 tốn.
Dùng các biểu tượng qui ước để thể hiện các thao
tác trong thuật tốn
1.Khái niệm bài tốn
2 Khái niệm
Trang 18BÀI TẬP VỀ NHÀ
sau (N = 5):
11 6 20 4 8
Tìm giá trị LỚN NHẤT của dãy số
trên ?
Trang 19đúng sai
đúng sai
Nhập N và dãy a1,…,aN
Max ← a1 ; i ← 2
I > N ?
a i > Max ?
Max ←a i
i ← i+1
Đưa ra Max rồi kết thúc
Max
i
A
7
7
5 5
5
5 4
3 2
6 7
4 1
5
N=5 ; A [ 5 1 4 7 6 ]
Max ← 5 ; i ← 2
2 > 5 ?
1> 5 ?
3 > 5 ?
4> 5 ?
4 > 5 ?
7 > 5 ?
4
5 > 5 ?
7 > 7 ?
Mô phỏng thuật toán
i = 2
i = 3
i = 5