Tin 10 Bài 4 câu hỏi và bài tập

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

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

Trả lời

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, X.

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

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

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?

Hãy mô tả thuật toán giải các bài toán sau bàng cách liệt kê hoặc bằng sơ đồ khối.

Trả lời

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

Bước I. Xoá bàng;

Bước 2. Vẽ dườ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

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

Trả lời:

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.

Tính dùng cùa thuật toán tìm kiếm tuần tự: nghĩa là thuật toán phải kết thúc sau một số hữu hạn lần bước tính.

Thuật toán chia làm hai trường hợp

- Nếu tìm thấy giá trị cần tìm trong dãy A [ai= k] thì thông báo chỉ số i [vị trí tìm thấy khoá k trong dãy A], rồi kết thúc.

- Nếu không tìm thấy giá trị cần tìm trong dãy A, vì bước 4 thực hiện việc tăng giá trị của i lớn hơn 1, nên sau N lần thì i > N, thông báo dãy A không có giá trị nào bằng k, rồi kết thúc.

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

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

Trả lời:

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

Mô tả thuật toán theo cách liệt kê:

Bước 1. Nhập N và dãy a1,....aN;

Bước 2. Mini,  i

Bước 3. Nếu i > N thì đưa ra giá trị Min rồi kết thúc;

Bước 4.

Bước 4.1: Nếu ai < Min thì Mini

Bước 4.2: i

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

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

Trả lời:

Xác điị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.

Thuật toán Cách liệt kê:

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

Bước 2: M  

Bước 3: Nếu M < 2 thì đưa ra dãy A đã được sắp xếp rồi kết thúc;

Bước 4: M

Bước 5: i

Bước 6: Nếu i>M thì quay lại bước 3

Bước 7: Nếu ai < ai+1thì tráo đổi  ai và ai+1 cho nhau

Bước 8: Quay lại bước 5

Sơ đồ khối:

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

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

Trả lời:

- Input: Qã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.

  • Ý tưởng: Tìm kiếm tuần tự được thực hiện một cách tự nhiên. Ta dùng biến đếm k để đếm số số hạng trong dãy A có giá trị bằng 0. Bắt đầu từ i = 7 và mỗi lần tăng i lên 1, ta lần lượt so sánh ai = 0?, nếu ai = 0 thì tăng k lên 1, tiếp tục quá trình cho đến khi i > N thì đưa ra kết quả k và kết thúc.

- Thuật toán

Cách liệt kê

Bước 1.  Nhập N, các số hạng a1, a2..., aN

Bước 2.  i

Bước 3.  Nếu ai= 0 thì k

Bước 4.  i

Bước 5:  Nếu i > N thì đưa ra giá trị k, rồi kết thúc;

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

Sơ đồ khối

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

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.

Trả lời:

- 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

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

nếu d > 0 thì kết luận phương trình có hai nghiệm phân biệt là:

x - [-b± √ d ] / 2a.

Mô tả thuật toán bằng cách liệt kê:

Bước I. Nhập ba số a, b, c;

Bước 2. d 4-[b*b - 4*a*c];

Bước 3.

nếu d < 0 thì đưa ra thông báo phương trình vô nghiệm rồi kết thúc;

nếu d = 0 thì đưa ra thông báo phương trình có một nghiệm và tính nghiệm

x = -b/[2*a], rồi kết thúc;

nếu [d> 0 thì đưa ra thông báo phương trình có hai nghiệm phân biệt, tính nghiệm X/= [-b + -√ d] / [2*a] và x2 = [-b - √ d ] / [2*a], rồi kết thúc;

Mô tả thuật toán theo sơ đồ khối:

Giaibaitap.me

Xem toàn bộ tài liệu Lớp 10: tại đây

Giải Bài Tập Tin Học 10 – Bài 4: Bài toán và thuật toán giúp HS giải bài tập, giúp cho các em hình thành và phát triển năng lực sử dụng công nghệ thông tin và truyền thông:

Xem thêm các sách tham khảo liên quan:

    • Sách Giáo Viên Tin Học Lớp 10

    Bài 1 trang 44 Tin học 10: 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:

    – Bài toán: Tìm nghiệm của một phương trình bậc 2 có dạng ax2+bx+c=0 bất kì.

    – Input: Cho ba số a,b,c.

    – Output: In ra nghiệm của phương trình bậc 2: Có thể vô nghiệm, một nghiệm hoặc có hai nghiệm.

    Bài 2 trang 44 Tin học 10: Dãy các thao tác sau:

    Bước 1: Xóa 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? Vì sao?

    Lời giải:

    Đây không phải là một thuật toán. Bởi theo định nghĩa thuật toán, từ Input của bài toán ta cần tìm kiếm một Output. Thế nhưng dãy các thao tác sau là một vòng lặp vô hạn không có tính dừng, không thỏa mãn yêu cầu là một thuật toán.

    Bài 3 trang 44 Tin học 10: 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:

    – Với thuật toán tìm kiếm tuần tự, tính dừng xảy ra khi thỏa mãn một trong hai trường hợp:

    + Nếu tìm thấy giá trị cần tìm trong dãy A: ai=k thì thông báo chỉ số i rồi kết thúc.

    + Nếu không tìm thấy giá trị cần tìm trong dãy A: ai=k thì tăng i đến khi nào i>n thì thông báo không có giá trị i nào thỏa mãn và kết thúc.

    Bài 4 trang 44 Tin học 10: 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:

    – Bước 1: Nhập N, các số hạng a1, a2,….aN và biến Min.

    – Bước 2: i ← 2, Min ← a1

    – Bước 3: Nếu ai < Min thì Min ← ai.

    – Bước 4: i ← i +1

    – Bước 5: Nếu i>N thì thông báo Min là số nhỏ nhất của dãy, kết thúc.

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

    Bài 5 trang 44 Tin học 10: 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:

    – Bước 1: Nhập ba số a, b, c, biến Delta, x, x1, x2.

    – Bước 2: Delta ← b*b-4*a*c

    – Bước 3: Nếu Delta < 0 thì thông báo phương trình vô nghiệm và kết thúc thuật toán.

    – Bước 4: Nếu delta > 0 thì thông báo phương trình có hai nghiệm phân biệt x1 ← [-b+sqrt[delta]]/2*a và x2 ← [-b-sqrt[delta]]/2*a, kết thúc thuật toán.

    – Bước 5: Nếu delta = 0 thì thông báo phương trình có nghiệm kép x = -b/2*a

    Bài 6 trang 44 Tin học 10: 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:

    – Bước 1: Nhập N, các số hạng a1, a2,….aN và biến tg.

    – Bước 2: i ← 1.

    – Bước 3: Nếu ai < ai+1 thì đổi chỗ ai và ai+1

    – Bước 4: i ← i +1

    – Bước 5: Nếu i>N thì thông báo in ra dãy A, kết thúc.

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

    Bài 7 trang 44 Tin học 10: Cho N và dãy số a1….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:

    – Bước 1: Nhập N, các số hạng a1, a2,….aN và biến dem.

    – Bước 2: i ← 1.

    – Bước 3: Nếu ai = 0 thì dem ← dem +1

    – Bước 4: i ← i +1

    – Bước 5: Nếu i>N thì thông báo in ra biến dem, kết thúc.

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

    Video liên quan

    Chủ Đề