Bài 4: Bài toán và thuật toán

Lý thuyết và bài tập cho Bài 4: Bài toán và thuật toán, Chương 1, Tin học 10
Bài Tập / Bài Soạn: 

Câu 1 trang 44 SGK Tin học 10

Đề bài

Hãy phát biểu một bài toán và chỉ rõ Input và Output của bài toán đó.

Lời giải chi tiết

Ví dụ bài toán tính diện tích tam giác.

Phát biểu bài toán: Cho ba cạnh của tam giác ABC là: x, y, z. Hãy tính diện tích tam giác ABC.

- Input: Ba cạnh tam giác x, y, z.

- Output: Diện tích tam giác.

Câu 2 trang 44 SGK Tin học 10

Đề bài

Dãy các thao tác sau:

Bước 1. Xoá bảng;

Bước 2. Vẽ đường tròn;

Bước 3. Quay lại bước 1;

có phải là thuật toán không? Tại sao?

Lời giải chi tiết

Dãy các thao tác :

Bước 1. Xoá bảng;

Bước 2. Vẽ đường tròn;

Bước 3. Quay lại bước 1;

Đây không phải là thuật toán, vì không thoả mãn tính chất dừng: đến bước 3 lại quay lại bước 1, nó tạo thành vòng lặp vô hạn không có điều kiện kết thúc.

Câu 3 trang 44 SGK Tin học 10

Đề bài

Hãy chỉ ra tính dừng của thuật toán tìm kiếm tuần tự.

Lời giải chi tiết

- Thuật toán tìm kiếm tuần tự:

Bước 1. Nhập N, các số hạng a,...a2,...aN và khoá k

Bước 2. i

Bước 3. Nếu ai= k thì thông báo chỉ số i, rồi kết thúc;

Bước 4. i

Bước 5. Nếu i > N thì thông báo dãy A không có số hạng nào có giá trị nào bằng k, rồi kết thúc;

Bước 6. Quay lại bước 3.

Câu 4 trang 44 SGK Tin học 10

Đề bài

Cho N và dãy số a1....aN, hãy tìm giá trị nhỏ nhất (Min) của dãy đó.

Lời giải chi tiết

• Xác định bài toán:

Input: Số N và dãy N số a1, a2...,aN.

Output: Giá trị nhỏ nhất (Min) của dãy số.

• Ý tưởng:

- Khởi tạo giá trị Min = a1.

- Lần lượt nhận giá trị /i từ 2 đến N, so sánh giá trị số hạng a1 với  giá trị Min, nếu ai < Min thì Min nhận giá trị mới ai

• Thuật toán:

Câu 5 trang 44 SGK Tin học 10

Đề bài

Mô tả thuật toán tìm nghiệm của phương trình bậc hai tổng quát bằng cách liệt kê hoặc bằng sơ đồ khối.

Lời giải chi tiết

• Xác định bài toán:

- Input: Các số thực a, h, c (a≠0).

- Output: Các số thực X thoả mãn ax2 + bx + c = 0.

• Ý tưởng:

- Tính d = b2 - 4ac.

- Lần lượt xét ba trường hợp cho giá trị d:

+ nếu d < 0 thì kết luận phương trình vô nghiệm ;

+ nếu d = 0 thì kết luận phương trình có một nghiệm x =-b/2a;

Câu 6 trang 44 SGK Tin học 10

Đề bài

Cho N và dãy số a1... aN, hãy sắp xếp dãy số đó thành dãy số không tăng (số hạng trước lớn hơn hay bằng số hạng sau).

Lời giải chi tiết

• Xác định bài toán

-  Input: Dãy A gồm N số nguyên a1, a2..., aN.

-  Output: Dãy A được sắp xếp lại thành dãy không tăng:

• Ý tưởng:  Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước nhỏ hơn số sau ta đổi chỗ chúng cho nhau. Việc đó được lặp lại, cho đến khi không có sự đổi chỗ nào xảy ra nữa.

Câu 7 trang 44 SGK Tin học 10

Đề bài

Cho N và dãy số a1,  a2, ..., aN hãy cho biết có bao nhiêu số hạng trong dãy có giá trị bằng 0.

Lời giải chi tiết

• Xác định bài toán

- Input: Dãy A gồm N số nguyên a1, a2, ..., aN ;

- Output: Số số hạng trong dãy A có giá trị bằng 0.


Giải các môn học khác

Bình luận

Chương 1: Một số khái niệm cơ bản của tin học

Chương 2: Hệ điều hành

Chương 3: Soạn thảo văn bản

Chương 4: Mạng máy tính và Internet