- Viết thuật toán bằng cách liệt kê và sơ đồ khối bài toán: “Tìm giá trị nhỏ nhất của một dãy số nguyên”. - Xem trước phần tiếp theo bài “Bài toán và thuật toán”..[r]
(1)MỘT SỐ KHÁI NIỆM CƠ BẢN CỦA TIN HỌC
BÀI 4: BÀI TOÁN VÀ THUẬT TỐN
(2)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 2: Tìm ước chung lớn hai số nguyên dương A B
Xác định toán:
- Input: Hai số nguyên dương A B
- Output: Ước chung lớn A B Tìm ước chung lớn hai số 12
A B
12 8
UCLN (12, 8) = 4
4 8
4
(3)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 2: Tìm ước chung lớn hai số nguyên dương A B
Ý tưởng:
- Nếu A = B UCLN (A, B) = A
- Nếu A > B lấy A = A – B UCLN (A – B, B), ngược lại B = B – A UCLN (A, B – A)
Tìm ước chung lớn hai số 12
A B
12 8
UCLN (12, 8) = 4
4 8
4
(4)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 2: Tìm ước chung lớn hai số nguyên dương A B
Thuật toán:
Liệt kê:
- B1: Nhập A B;
- B2: Nếu A = B UCLN (A, B) = A; Kết thúc - B3: Nếu A > B A = A – B, ngược lại B = B - A quay lại bước
Tìm ước chung lớn hai số 12
A B
12 8
8
4
(5)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Thuật tốn:
Nhập A, B
A = B? UCLN(A, B) = A Kết thúc A > B?
A = A - B B = B - A Đ
Đ S
S
Liệt kê:
- B1: Nhập A B; - B2: Nếu A = B UCLN (A, B) = A; Kết thúc
- B3: Nếu A > B A = A – B, ngược lại B = B - A quay lại bước
(6)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Mơ thuật toán:
Nhập A, B
UCLN(A, B) = A
Kết thúc A = B?
A > B?
A = A - B B = B - A Đúng
Đúng Sai
Sai
A B
12 8
4 8
4
4
(7)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 3: Bài tốn tìm nghiệm phương trình bậc hai
ax2+bx+c=0
Xác định toán:
- Input: Các số thực a, b, c
- Output: Nghiệm phương trình (tất số thực x thỏa mãn phương trình)
) 0
(a
) 0
(8)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 3: Bài tốn tìm nghiệm phương trình bậc hai
ax2+bx+c=0
Ý tưởng: - Tính ∆;
- Xét dấu ∆, có trường hợp:
+ ∆ < 0, phương trình vô nghiệm, kết thúc
+ ∆ = 0, phương trình có nghiệm kép, kết thúc + ∆ > 0, phương trình có hai nghiệm, kết thúc
) 0
(9)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Ví dụ 3: Bài tốn tìm nghiệm phương trình bậc hai
ax2+bx+c=0
Thuật toán:
Liệt kê:
- B1: Nhập a, b, c (a # 0); - B2: Tính ∆= b2 – 4*a*c;
- B3: Xét dấu ∆
+ Nếu ∆ < 0, phương trình vơ nghiệm, kết thúc
+ Nếu ∆ = 0, phương trình có nghiệm kép x = -b/2a, kết thúc
+ Nếu ∆ > 0, phương trình có hai nghiệm phân biệt x1, x2 =
) 0
(10)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Thuật toán: Sơ đồ khối:
Nhập a, b, c
∆= b2– 4*a*c
∆ < ?
∆ = ?
PT vô nghiệm
PT có nghiệm kép x =-b/2a
PT có hai nghiệm phân biệt
Kết thúc Đ
S Đ
(11)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Mơ thuật tốn:
∆ = ? PT có nghiệm kép x =-b/2a Kết thúc Đ
S
Đ
S
Phương trình: x2 + 4x + = 0
a b c ∆
Nhập a, b, c
Nhập 1, 4, ∆= 4∆= b2 – 4*1*6 = - 82– 4*a*c
∆ < ? PT vô nghiệm PT vô nghiệm
- <
Đ
(12)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Mơ thuật tốn:
PT có hai nghiệm phân biệt
Kết thúc Đ
S Đ
S
Phương trình: x2 + 2x + = 0
a b c ∆
Nhập a, b, c
Nhập 1, 2, ∆= 2∆= b2 – 4*1*1 = 02– 4*a*c
∆ = ?
PT vô nghiệm
0 =
1 2 1 0
S
∆ < ?
Đ
PT có nghiệm kép x =-b/2a
(13)3 MỘT SỐ VÍ DỤ VỀ THUẬT TỐN
Mơ thuật tốn:
Kết thúc Đ
S Đ
S
Phương trình: x2 - 5x + = 0
a b c ∆
Nhập a, b, c
Nhập 1, - 5, ∆= (-5)∆= b2 2– 4*1*6 = 1– 4*a*c
∆ = ?
PT vô nghiệm
1 - 5 6 1
S
∆ < ?
PT có nghiệm kép x =-b/2a
(14)DẶN DÒ