Tin học 8 Bài 5: Từ bài toán đến chương trình
Xin giới thiệu đến các em học sinh nội dung bài học Từ bài toán đến chương trình dưới đây, qua bài học này các em sẽ tìm hiểu các khái niệm về bài toán, Input, Output của một bài toán đơn giản... Mời các em cùng tham khảo!
Mục lục nội dung
1. Tóm tắt lý thuyết
1.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
1.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:
+ Bước 1: 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
+ Bước 2: Mô tả thuật toán, liệt kê các thao tác cần thực hiện.
+ Bước 3: 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.
1.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
+ Bước 1: Tráng ấm, chén bằng nước sôi
+ Bước 2: Cho trà vào ấm
+ Bước 3: Rót nước sôi vào ấm và đợi khoảng 3 đến 4 phút.
+ Bước 4: 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.
2. Bài tập minh họa
Bài 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 vẽ dưới đây
Hướng dẫn giải
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:
Bước 1: tính S hình chữ nhật, S1 = 2a∗b;
Bước 2: tính S hình bán nguyệt, S2 = πa2/2;
Bước 3: tính S tổng, S = S1 + S2;
Bài 2: Tính tổng của 100 số tự nhiên đầu tiên
Hướng dẫn giải
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:
- Bước 1: SUM 0; I 0.
- Bước 2: SUM SUM + I; I I + 1.
- Bước 3: 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.
Bài 3: Tìm số lớn nhất trong dãy các số A1, A2,… An cho trước.
Hướng dẫn giải
INPUT: Dãy A các số A1, A2,.. An ( n ≥ 1)
OUTPUT: Giá trị MAX = max{A1, A2,..An}
Thuật Toán:
- Bước 1: MAX := A1, I := 1.
- Bước 2: Nếu Ai > MAX, gán MAX := Ai.
- Bước 3: I := i+1.
- Bước 4: Nếu I ≤ n, quay lại bước 2.
- Bước 5: Thông báo giá trị MAX và kết thúc thuật toán.
3. Luyện tập
3.1. Bài tập tự luận
Câu 1: Quá trình giải bài toán trên máy tính gồm mấy bước?
Câu 2: Thứ tự các bước giải bài toán trên máy tính là?
Câu 3: Trình bày khái niệm thuật toán?
3.2. Bài tập trắc nghiệm
Câu 1: Hãy cho biết kết quả sau khi thực hiện thuật toán sau:
Bước 1. Tam←x;
Bước 2. x←y;
Bước 3. y← tam;
A. Giá trị của biến x bằng giá trị của biến y
B. Hoán đổi giá trị hai biến x và y
C. Giá trị của biến y bằng giá trị của biến x
D. Khác
Câu 2: Hãy xác đinh bài toán sau: "Tìm số lớn nhất trong dãy n số tự nhiên cho trước"?
A. INPUT: Dãy n số tự nhiên. OUTPUT: Số lớn nhất trong dãy n số.
B. INPUT: Dãy n số tự nhiên. OUTPUT: Số các số lớn nhất trong dãy n số.
C. INPUT: Số lớn nhất trong dãy n số. OUTPUT: Dãy n số tự nhiên.
D. INPUT: Số các số lớn nhất trong dãy n số. OUTPUT: Dãy n số tự nhiên.
Câu 3: Hãy chọn phát biểu Đúng:
A. Các bước giải bài toán trên máy tính là: Mô tả thuật toán → Xác định bài toán → Viết chương trình
B. Cần phải xác định bài toán trước khi giải bài toán trên máy tính
C. Máy tính có hiểu được chương trình viết bằng ngôn ngữ tự nhiên
D. Với mỗi bài toán cụ thể, phải lựa chọn ngôn ngữ lập trình phù hợp rồi mới xây dựng thuật toán giải bài toán đó
Câu 4: Hãy chọn phát biểu Sai?
A. Việc thực hiện cả 3 bước khi giải bài toán trên máy tính là cần thiết, nhất là đối với bài toán phức tạp
B. Xác định bài toán là xác định rõ các điều kiện cho trước và kết quả cần thu được
C. Dãy hữu hạn các thao tác cần thực hiện để giải một bài toán được gọi là thuật toán
D. Đối với mỗi bài toán cụ thể chúng ta chỉ có 1 thuật toán duy nhất để giải bài toán đó trên máy tính
Câu 5: Xác định bài toán: “ kiểm tra n có phải là số nguyên tố hay không? ”
A. Input: Nhập số n; Output: n là số nguyên tố hoặc n không là số nguyên tố
B. Input: n là số nguyên tố hoặc n không là số nguyên tố; Output: Nhập số n
C. Input: n là số nguyên tố; Output: Nhập số n
D. Input: Nhập số n; Output: n là số nguyên tố
Câu 6: Thuật toán là:
A. 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.
B. Một thao tác cần thực hiện để thu được kết quả cần thiết từ những điều kiện cho trước.
C. Dãy các thao tác cần thực hiện để thu được kết quả cần thiết từ những điều kiện cho trước.
D. Tất cả đều sai
Câu 7: Mô tả thuật toán pha trà mời khách
+ B1: Tráng ấm, chén bằng nước sôi
+ B2: Rót nước sôi vào ấm và đợi khoảng 3 đến 4 phút.
+ B3: Cho trà vào ấm
+ B4: Rót trà ra chén để mời khách.
A. B1- B3-B4- B2
B. B1- B3- B2-B4
C. B2-B4-B1-B3
D. B3-B4-B1-B2
4. Kết luận
Sau khi học xong bài 5 môn Tin học 8 các em cần nắm được một số nội dung cơ bản sau:
- Biết con người chỉ dẫn cho máy tính thực hiện công việc thông qua lệnh.
- Biết chương trình là cách để con người chỉ dẫn cho máy tính thực hiện nhiều công việc liên tiếp một cách tự động.
- Biết rằng viết chương trình là viết các lệnh để chỉ dẫn máy tính thực hiện các công việc hay giải một bài toán cụ thể.
- Biết ngôn ngữ dùng để viết chương trình máy tính gọi là ngôn ngữ lập trình.
- Biết vai trò của chương trình dịch.
- Hiểu thuật toán tính tổng của N số tự nhiên đầu tiên, tìm số lớn nhất của một dãy số.
Tham khảo thêm
- doc Tin học 8 Bài thực hành 3: Khai báo và sử dụng biến
- doc Tin học 8 Bài 6: Câu lệnh điều kiện
- doc Tin học 8 Bài thực hành 4: Sử dụng câu lệnh điều kiện If…Then
- doc Tin học 8 Bài 7: Câu lệnh lặp
- doc Tin học 8 Bài thực hành 5: Sử dụng lệnh lặp For…Do
- doc Tin học 8 Bài 8: Lặp với số lần chưa biết trước
- doc Tin học 8 Bài thực hành 6: Sử dụng lệnh lặp While…Do
- doc Tin học 8 Bài 9: Làm việc với dãy số
- doc Tin học 8 Bài thực hành 7: Xử lý dãy số trong chương trình
- doc Tin học 8 Bài 1: Máy tính và chương trình máy tính
- doc Tin học 8 Bài 2: Làm quen với chương trình và ngôn ngữ lập trình
- doc Tin học 8 Bài thực hành 1: Làm quen với Turbo Pascal
- doc Tin học 8 Bài 3: Chương trình máy tính và dữ liệu
- doc Tin học 8 Bài thực hành 2: Viết chương trình để tính toán
- doc Tin học 8 Bài 4: Sử dụng biến trong chương trình