Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình

Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình

A. Lý thuyết

• 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.

Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình - Lý thuyết Tin học 8 đầy đủ nhất

- 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

Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình - Lý thuyết Tin học 8 đầy đủ nhất

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.

Lý thuyết Tin học 8 Bài 5: Từ bài toán đến chương trình - Lý thuyết Tin học 8 đầy đủ nhất

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.

B. Trắc nghiệm

Câu 1:Quá trình giải bài toán trên máy tính gồm mấy bước?

   A. 2

   B. 3

   C. 4

   D. 5

   Quá trình giải bài toán trên máy tính gồm 3 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.

   Đáp án: B

Câu 2:Thứ tự các bước giải bài toán trên máy tính:

   A. Xác định bài toán → Viết chương trình → Mô tả thuật toán

   B. Xác định bài toán → Mô tả thuật toán → Viết chương trình

   C. Mô tả thuật toán → Xác định bài toán → Viết chương trình

   D. Viết chương trình → Xác định bài toán → Mô tả thuật toán

   các bước giải bài toán trên máy tính là: Xác định bài toán (xác định Input, Output) → Mô tả thuật toán (các bước giải bài toán) → Viết chương trình (dùng ngôn ngữ lập trình để viết chương trình giúp máy tính hiểu và thực hiện được).

   Đáp án: B

Câu 3: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

   kết quả thuật toán trên là hoán đổi giá trị hai biến x và y. với ý tưởng thuật toán là:

   - B1: tam:= x, khi đó tam có giá trị của x

   - B2: x := y, khi đó x có giá trị của y

   - B3: y := tam, khi đó y có giá trị của x.

   Đáp án: B

Câu 4: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.

   Trong bài toán thì Input là giá trị đề bài đã cho, Output là giá trị cần tìm. Vậy trong bài toán trên INPUT là dãy n số tự nhiên. OUTPUT là số lớn nhất trong dãy n số.

   Đáp án: A

Câu 5: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 đó

   Để giải một bài toán cần phải xác định bài toán (Input, Output) trước khi giải bài toán trên máy tính.

   Đáp án: B

Câu 6: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

   Đối với mỗi bài toán cụ thể chúng ta có thể có 1 hoặc nhiều thuật toán (lời giải) để giải bài toán đó trên máy tính. Nhưng mỗi thuật toán chỉ giải một bài toán cụ thể.

   Đáp án: D

Câu 7: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ố

   xác định bài toán:

   + Input là điều kiện cho trước

   + Output là kết quả cần thu được.

   Đáp án: A

Câu 8: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

   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.

   Đáp án:

Câu 9:Mô tả thuật toán là:

   A. Liệt kê các bước thực hiện công việc.

   B. Liệt kê các cách thực hiện công việc.

   C. Liệt kê một bước thực hiện công việc.

   D. Tất cả đều đúng

   Mô tả thuật toán là việc liệt kê các bước thực hiện công việc. Các bước của thuật toán thực hiện tuần tự từ trên xuống dưới.

   Đáp án: A

Câu 10: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

   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: 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.

   Đáp án: B

Xem thêm các loạt bài Để học tốt Tin học 8 hay khác:

300 BÀI GIẢNG GIÚP CON HỌC TỐT LỚP 8 CHỈ 399K

Phụ huynh đăng ký mua khóa học lớp 9 cho con, được tặng miễn phí khóa lớp 8 ôn hè. Đăng ký ngay!

Học tốt toán 8 - Thầy Phan Toàn

4.5 (243)

799,000đs

399,000 VNĐ

Tiếng Anh lớp 8 - Cô Hoài Thu

4.5 (243)

799,000đ

399,000 VNĐ

Học tốt Văn 8 - Cô Mỹ Linh

4.5 (243)

799,000đ

399,000 VNĐ

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Loạt bài Giải bài tập Tin học 8 | Soạn Tin học lớp 8 | Trả lời câu hỏi Tin học 8 của chúng tôi được biên soạn bám sát nội dung sgk Tin học lớp 8.

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.

bai-5-tu-bai-toan-den-chuong-trinh.jsp