Transcript File
Nội dung chính
1. Khái niệm bài toán
2. Khái niệm thuật toán
3. Một số ví dụ về thuật toán
1. Khái niệm bài toán
Em hãy cho ví dụ một số bài toán trong toán học?
Giải phương trình bậc nhất: 2x + 3 =0
Giải phương trình bậc hai: x2 + 2x – 5 = 0
Tìm ước chung lớn nhất của 2 số: 2 và 16
...........................................................
1. Khái niệm bài toán
Ví dụ một số bài toán trong tin học.
Giải phương trình bậc nhất: 2x + 3 =0
Giải phương trình bậc hai: x2 + 2x – 5 = 0
Tìm ước chung lớn nhất của 2 số: 2 vàBài
16toán
Tìm số lớn nhất trong một dãy số của tin học
???
In một dòng chữ ra màn hình
Xếp loại học tập của một lớp học
Quản lí nhân viên
Trong tin học, bài toán là một việc nào đó ta muốn
máy tính thục hiện.
1. Khái niệm bài toán
Khi giải bài toán trong tin học ta cần quan tâm đến
2 yếu tố:
- Input: Thông tin đưa vào máy tính để xử lí.
- Output: Thông tin nhận được sau khi máy tính xử lí.
Chú ý: Input và Output phải khác nhau thì bài toán
mới có ý nghĩa.
VD: Bài toán tìm ước chung lớn nhất của 2 số nguyên
dương M và N
- Input: Hai số nguyên dương M và N
- Output: Ước chung lớn nhất của M và N
1. Khái niệm bài toán
Khi giải bài toán trong tin học ta cần quan tâm đến 2
yếu tố:
- Input: Thông tin đưa vào máy tính để xử lí.
- Output: Thông tin nhận được sau khi máy tính xử lí.
Chú ý: Input và Output phải khác nhau thì bài toán
mới có ý nghĩa.
VD: Bài toán tìm nghiệm của phương trình bậc hai
Ax2 + Bx + C = 0 (A ≠ 0)
- Input: Các số thực A, B, C (A ≠ 0)
- Output: Tất cả các số thực x thỏa
Ax2 + Bx + C = 0 (A ≠ 0)
1. Khái niệm bài toán
Khi giải bài toán trong tin học ta cần quan tâm đến 2
yếu tố:
- Input: Thông tin đưa vào máy tính để xử lí.
- Output: Thông tin nhận được sau khi máy tính xử lí.
Chú ý: Input và Output phải khác nhau thì bài toán
mới có ý nghĩa.
VD: Bài toán kiểm tra tính nguyên tố của số nguyên
dương N.
- Input: Số nguyên dương N
- Output: “N là số nguyên tố” hoặc “N không là số
nguyên tố”
1. Khái niệm bài toán
Khi giải bài toán trong tin học ta cần quan tâm đến 2
yếu tố:
- Input: Thông tin đưa vào máy tính để xử lí.
- Output: Thông tin nhận được sau khi máy tính xử lí.
Chú ý: Input và Output phải khác nhau thì bài toán
mới có ý nghĩa.
VD: Bài toán xếp loại học tập của một lớp.
- Input:
Bảng điểm của học sinh trong lớp
- Output: Bảng xếp loại học lực
2. Khái niệm thuật toán
VD: Tìm số lớn nhất trong 2 số nguyên a1, a2.
- Input: Hai số nguyên a1, a2
Tìm Max?
- Output: Giá trị Max của 2 số a1, a2
Thuật 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ự nhất định sao cho khi
thực hiện các thao tác ấy, từ Input của bài toán ta
nhận được Output cần tìm
2. Khái niệm thuật toán
Mô tả thuật toán: có 2 cách
VD: Tìm số lớn nhất trong 2 số nguyên a1, a2.
- Input: Hai số nguyên a1, a2
- Output: Giá trị Max của 2 số a1, a2
Ý tưởng:
- Khởi tạo giá trị Max a1
- Ta đi so sánh giá trị Max với a2 . Nếu Max > a2
thì xuất giá trị Max. Nếu Max < a2 thì Max a2 rồi
xuất giá trị Max, Kết thúc.
2. Khái niệm thuật toán
Mô tả thuật toán: có 2 cách
Cách 1: Liệt kê
Bước 1: Nhập hai số nguyên a1, a2
Bước 2: Max a1
Bước 3: Nếu Max < a2
- Đúng: Max a2 , xuất giá trị Max rồi kết thúc
- Sai: xuất giá trị Max rồi kết thúc.
2. Khái niệm thuật toán
Mô tả thuật toán: có 2 cách
Cách 2: Sơ đồ khối
Nhập a1, a2
Chú thích
Max a1
Max > a2
True
Xuất giá trị
Max
Các thao tác
nhập/xuất dữ liệu
False
Các phép tính toán
Max a2
Thao tác so sánh
Trình tự thực hiện
thao tác
3. Một số ví dụ về thuật toán
VD1: Bài toán tìm số lớn nhất trong ba số nguyên a1, a2, a3
- Input: Ba số nguyên a1, a2, a3
- Output: Giá trị Max của ba số a1, a2, a3
Ý tưởng:
- Khởi tạo giá trị Max a1
- Ta so sánh giá trị Max với a2 .
Nếu Max > a2 thì so sánh với a3
Nếu Max > a3 thì xuất giá trị Max
Nếu Max < a3 thì Max a3 , xuất Max
Nếu Max < a2 thì Max a2 so sánh với a3
Nếu Max > a3 thì xuất giá trị Max
Nếu Max < a3 thì Max a3 , xuất Max
3. Một số ví dụ về thuật toán
Sơ đồ khối
Nhập a1, a2, a3
Max a1
False
True
Max a2
Max > a2
True
Max > a3
False
False
Max > a3
True
Xuất giá trị
Max
Max a3
Max a3
3. Một số ví dụ về thuật toán
VD1: Bài toán tìm giá trị lớn nhất của một dãy số nguyên
-Input: Số nguyên dương N và dãy N số nguyên dương
a1 … aN
- Output: Giá trị lớn nhất Max của dãy số
Ý tưởng:
- khởi tạo giá trị Max a1
- lần lượt với i từ 2 đến N, so sánh giá trị số
hạng ai với giá trị Max, nếu ai > Max thì Max
nhận giá trị mới là ai.
3. Một số ví dụ về thuật toán
Cách 1: Liệt kê
Bước 1: Nhập N và dãy a1…. aN
Bước 2: Max a1 , i 2
Bước 3: Nếu i > N thì đưa ra giá trị Max rồi kết thúc.
Bước 4: Nếu i <= N so sánh ai với Max
- Bước 4.1: Nếu ai > Max thì Max ai
- Bước 4.2: i i + 1 rồi quay lại bước 3.
3. Một số ví dụ về thuật toán
Cách 2: Sơ đồ khối
Nhập N và dãy
a1, …, aN
Max a1, i 2
True
i >N
False
False
ai > Max
True
Max ai
i i + 1
Xuất Max rồi
kết thúc
The end!