Khái niệm về bài toánKhái niệm về thuật toán Các cách biểu diễn thuật toán 1 2 3... KHÁI NIỆM BÀI TOÁNTrong phạm vi tin học, bài toán là việc nào đó ta muốn máy tính thực hiện... Hướng
Trang 1Bài 13:
Mở đầu về lập trình
Trang 2Khái niệm về bài toán
Khái niệm về thuật toán
Các cách biểu diễn thuật toán
1
2
3
Trang 3Ví dụ 3: Giải phương trình bậc 2 tổng quát: a+ bx + c = 0 (a ≠ 0).
Ví dụ 4: Cho đề bài
" Trăm trâu trăm cỏ Trâu đứng ăn năm Trâu nằm ăn ba
Lụ khụ trâu già
Ba con một bó "
Hỏi có bao nhiêu trâu mỗi loại ?
Ví dụ 5: Sắp xếp loại học lực của học sinh trong một kỳ thi tốt nghiệp bằng
máy tính
Ví dụ 2: Tìm ước chung lớn nhất của hai số nguyên dương M, N
Ví dụ 1: Viết một dòng chữ ra màn hình
Theo em, trong phạm vi toán học ví dụ nào được
gọi là bài toán?
Ví dụ 2, 3, 4 được gọi là bài toán
Tất cả ví dụ trên đều được gọi là bài toán
Trang 4KHÁI NIỆM BÀI TOÁN
Trong phạm vi tin học, bài toán
là việc nào đó ta muốn máy tính thực hiện.
C â u h ỏ i 1 : Tr o n g p h ạ m v i To á n h ọ c b à i t o á n l à g ì ? C â u h ỏ i 2 : Tr o n g p h ạ m v i T i n h ọ c b à i t o á n l à g ì ?
Trang 5TOÁN HỌC
Đưa vào máy tính thông tin gì
Cần lấy ra thông tin gì
Trang 6CÁC THÀNH PHẦN CƠ BẢN CỦA 1 BÀI TOÁN
Trang 7Sử dụng máy tính casio giải phương
trình : -3x +2 =0
Trang 8VD1 : Giải phương trình ax2 + bx + c = 0 (a ≠ 0).
Input : Các hệ số a,b,c (a ≠ 0);
Output : Thông báo nghiệm x.
Input : Output :
N nguyên dương;
N là số nguyên tố hay N không phải số nguyên tố.
Trang 9HOẠT ĐỘNG NHÓM SỐ 1
Nhóm 1 + Nhóm 4:
Giải phương trình bậc nhất: ax + b = 0
Nhóm 2 + Nhóm 3:
Kiểm tra xem tổng của 2 số nguyên A,
B có phải là số chẵn hay không?
Xác định Input và Output của bài toán?
Trang 10Bài toán 1: Giải phương trình bậc nhất: ax + b = 0
Input: a, b;
Output: thông báo nghiệm x.
Bài toán 2: Kiểm tra xem tổng của 2 số nguyên m, n có phải là số chẵn hay không ?
Input: m, n nguyên;
Output: tổng t = (m + n) có phải là số chẵn không?
Trang 11NỘI DUNG BÀI HỌC
1.Khái niệm bài toán
Trang 12Hướ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
Giải bài toán
Trang 13Xét bài toán giải phương trình bậc 2: a + bx + c = 0 (a ≠ 0)
THUẬT TOÁN
Xác định các bước để giải bài toán
trên?
Bước 1: Nhập a, b, c
Bước 2: tính Δ = - 4ac
Bước 3: Nếu Δ < 0, thông báo pt vô nghiệm rồi kết thúc
Bước 4: Nếu Δ = 0, thì tính nghiệm x = -b/a,thông báo nghiệm kép của pt rồi kết thúc
Bước 5: Tính nghiệm x1 = (-b + ), x2 = (-b - ) thông báo 2 nghiệm của pt rồi kết thúc
Trang 14
Input THUẬT TOÁN Output
(Thao tác 1Thao tác 2 Thao tác n)
BÀI TOÁ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.
KHÁI NiỆM THUẬT TOÁN
Trang 15Tính chất thuật toán
Tính dừng: thuật toán phải kết thúc sau 1 số hữu hạn lần thực hiện các thao tác.
Tính xác định: sau khi thực hiện 1 thao tác thì hoặc là kết thúc hoặc thực hiện 1 thao tác
kế tiếp.
Tính đúng đắn: sau khi kết thúc phải nhận được Output.
Trang 16MÔ TẢ CÁC THAO TÁC CỦA THUẬT TOÁN
Phương pháp sơ đồ
khối
Cách1
Ví dụ
Trang 18sai
Trang 19HOẠT ĐỘNG NHÓM SỐ 2
Các nhóm thảo luận và trình bày thuật toán để giải bài toán của nhóm mình bằng phương pháp sơ đồ khối,
Yêu cầu
Các nhóm thảo luận trong 2 phút
Hai nhóm sẽ lên trình bày nội dung của nhóm mình
CÁc nhóm còn lại sẽ nhận xét chỉnh sửa bài làm của các nhóm trên bảng
Trang 20HOẠT ĐỘNG NHÓM SỐ 2
Nhóm 1 + Nhóm 4:
Giải phương trình bậc nhất: ax + b = 0
Nhóm 2 + Nhóm 3:
Kiểm tra xem tổng của 2 số nguyên A,
B có phải là số chẵn hay không?
Trình bày thuật toán để giải các bài toán trên bằng phương pháp sơ đồ
khối?
Trang 21Sơ đồ khối giải pt: ax + b = 0
Trang 23MÔ TẢ CÁC THAO TÁC CỦA THUẬT TOÁN
Trang 24ĐỊnh nghĩa: Mã giả là một ngôn ngữ hình thức giúp các lập trình viên phát triển thuật toán Mã giả
Chương trình mã giả thì không thực thi được trên máy tính Chúng chỉ giúp bạn phát
thảo ra một thuật toán và biểu diễn thuật toán đó một cách dễ hiểu trước khi viết nó
bằng một ngôn ngữ lập trình nào đó.