Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình hay, chi tiết
Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình hay, chi tiết
Haylamdo biên soạn và sưu tầm tóm tắt lý thuyết Tin học lớp 8 Bài 5: Từ bài toán đến chương trình hay, chi tiết nhất sẽ tóm tắt kiến thức trọng tâm về bài học từ đó giúp học sinh ôn tập để nắm vững kiến thức môn Tin học 8.
• Nội dung chính
- Khái niệm về bài toán và xác định bài toán
- Quá trình giải bài toán trên máy tính
- Thuật toán và cách thức mô tả thuật toán
1. Xác định bài toán
- Khái niệm bài toán: là 1 công việc hay 1 nhiệm vụ cần được giải quyết.
- Xác định bài toán là đi xác định điều kiện cho trước và xác định kết quả cần thu được.
- Ví dụ: Tính diện tích tam giác
+ Điều kiện cho trước: 3 cạnh của tam giác
+ Kết quả cần thu được: Diện tích tam giác
2. Quá trình giải bài toán trên máy tính
- Máy tính hoạt động dưới sự chỉ đạo của con người, để giải quyết 1 bài toán trên máy tình là đưa cho máy tính dãy hữu hạn các thao tác đơn giản mà nó có thể thực hiện để từ các điều kiện cho trước, ta được kết quả cần tìm.
- Khái niệm thuật toán: các thao tác cần thiết để giải quyết 1 bài toán.
- Quá tình giải bài toán gồm các bước:
+ B1: Xác định bài toán, bao gồm xác định điều kiện cho trước và xác định kêt quả cần đạt được
+ B2: Mô tả thuật toán, liệt kê các thao tác cần thực hiện.
+ B3: Viết chương trình, dùng thuật toán vừa viết ra chuyển thành chương trình để máy tính có thể hiểu và thực hiện.
3. Mô tả thuật toán
- Xét ví dụ: Pha trà mời khách
INPUT: Trà, nước sôi, ấm và chén.
OUTPUT: Chén trà đã pha để mời khách
+ B1: Tráng ấm, chén bằng nước sôi
+ B2: Cho trà vào ấm
+ B3: Rót nước sôi vào ấm và đợi khoảng 3 đến 4 phút.
+ B4: Rót trà ra chén để mời khách.
- Khái niệm thuật toán: là dãy các thao tác cần thực hiện theo 1 trình tự xác định để thu được kết quả cần thiết từ những điều kiện cho trước.
- Khái niệm mô tả thuật toán: là việc liệt kê các bước thực hiện công việc( như ví dụ pha trà). Các bước của thuật toán thực hiện tuần tự từ trên xuống dưới.
4. Một số ví dụ về thuật toán
Ví dụ 1: một hình A được ghép từ hình chữ nhật với chiều rộng 2a, chiều dài b và 1 hình bán nguyệt bán kính a như hình 5.2
INPUT: các số a là ½ chiều rộng của hình chữ nhật và là bán kính của hình bán nguyệt, b là chiều dài của HCN.
OUTPUT: Diện tích của A
Thuật Toán:
B1: tính S hình chữ nhật, S1 = 2a∗b;
B2: tính S hình bán nguyệt, S2 = πa2/2;
B3: tính S tổng, S = S1 + S2;
Ví dụ 2: Tính tổng của 100 số tự nhiên đầu tiên
INPUT: Dãy 100 số tự nhiên đầu tiên: 1, 2, …, 100.
OUTPUT: Giá trị tổng 1 + 2 + … + 100.
Thuật toán:
- B1: SUM 0; I 0.
- B2: SUM SUM + I; I I + 1.
- B3: nếu I ≤ 100, thì quay lại bước 2. Ngược lại, thông báo giá trị SUM và kết thúc thuật toán. Ví dụ 3: Đổi giá trị của 2 biến x và y.,
INPUT: Hai biến x, y có giá tri tương ứng là a và b
OUTPUT: Hai biến x, y có giá trị tương ứng là b và a
Thuật Toán:
- B1: z := x, khi đó z có giá trị là a
- B2: x := y, khi đó x có giá trị là b
- B3: y := z, khi đó y có giá trị là a.
Ví dụ 4: Cho hai số thực a, b. Hãy cho biết kết quả so sánh hai số đó dưới dạng ″a lớn hơn b″, ″a nhỏ hơn b″ hoặc ″a bằng b″.
INPUT: hai số thực a và b
OUTPUT: kết quả so sánh
Thuật Toán:
- B1: Nếu a >b, kết quả là ″a lớn hơn b″ và chuyển đến Bước 3
- B2: Nếu a < b, kết quả là "a nhỏ hơn b"; ngược lại, kết quả là ″a bằng b″
- B3: Kết thúc thuật toán
Ví dụ 5: Tìm số lớn nhất trong dãy các số A1, A2,… An cho trước.
INPUT: Dãy A các số A1, A2,.. An ( n ≥ 1)
OUTPUT: Giá trị MAX = max{A1, A2,..An}
Thuật Toán:
- B1: MAX := A1, I := 1.
- B2: Nếu Ai > MAX, gán MAX := Ai.
- B3: I := i+1.
- B4: Nếu I ≤ n, quay lại bước 2.
- B5: Thông báo giá trị MAX và kết thúc thuật toán.