Tìm ước chung lớn nhất của hai số 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 t
Trang 2• Xét các yêu cầu sau :
1 Giải phương trình bậc hai ax2+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ố
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?
Trang 3Khá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 4TIN 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
Trang 5 Input : Các số trong dãy số.
Output : Giá trị nhỏ nhất trong dãy số.
Trang 6VD3 : Tìm ước chung lớn nhất của hai số nguyên dương a và b.
Trang 7Nêu m t bài toán và ộ
Xem thêm các ví dụ trong SGK/24, 25
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 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 Bằng cách nào? Output
Giải bài toán
Thuật toá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 11MÔ TẢ CÁC THAO TÁC TRONG THUẬT TOÁN
Có 2 cách mô tả Liệt kê
Trang 12Giải toán thông thường:
• 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 ()
Trang 13dữ liệu
Trang 14VD: Tìm nghiệm phương trình bậc nhất tổng quát : ax + b = 0
quay lại bước 1, ngược
lại thì qua bước 3.
Trang 15Ta 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
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 Ý
Trang 16III VÍ DỤ VỀ THUẬT TOÁN
Trang 17HƯỚ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
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ị
Trang 18SƠ ĐỒ KHỐI : Nhập N và dãy a 1 ,…, a N
Sai Đúng
Đúng Sai
Trang 19LIỆT KÊ
Bước 1 : Nhập N và dãy a1,…, aN.
Bước 2 : Đặt Min= a1, 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.
4.1 Nếu Min > ai thì đặt Max=ai.
4.2 Tăng i một đơn vị rồi quay về bước 3
Trang 20Bà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:
a1, ,aN
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)
Trang 21CÁ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)
*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
Trang 22BÀI TẬP VỀ NHÀ
trang 27 – 28
(SGK)