Bài 5: Từ bài toán đến chương trình có đáp án
-
512 lượt thi
-
14 câu hỏi
-
30 phút
Danh sách câu hỏi
Câu 1:
Quá trình giải bài toán trên máy tính gồm mấy bước?
Hướng dẫn giải
Đáp án đúng là: C
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.
Câu 2:
Thuật toán tốt là thuật toán:
Đáp án đúng là: C
Thuật toán tốt là thuật toán tốn ít bộ nhớ và thời gian giúp máy tính hiểu và giải quyết một bài toán nhanh, chính xác.
Câu 3:
Hãy xác định bài toán: “Nhập vào 3 số A, B, C tìm giá trị lớn nhất trong 3 số đó.”
Đáp án đúng là: A
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à 3 số A, B, C. OUTPUT là số lớn nhất trong 3 số đó.
Câu 4:
Hàm tính lũy thừa bậc n của số a trong C++ là pow(a,n), vậy muốn viết câu lệnh tính P=54thì câu lệnh nào sau đây là đúng?
Đáp án đúng là: B
Lũy thừa bậc n của số a là pow(a,n), nên lũy thừa bậc 4 của 5 là pow(5,4), trong C++ lại phân biệt chữ hoa và chữ thường nên P=54được viết là P=pow(5,4);
Câu 5:
Để in ra giá trị lớn nhất của 4 số a, b, c, d trong C++ thì câu lệnh nào sau đây là chính xác?
Đáp án đúng là: C
Trong C++, hàm tính giá trị lớn nhất của 2 số a, b có cú pháp max(a,b). Vậy muốn tìm giá trị lớn nhất của 4 số a, b, c, d ta tìm max(a,b) và max(c,d) sau đó ta tìm giá trị lớn nhất trong 2 giá trị lớn nhất vừa tìm tức là max(max(a,b),max(c,d)).
Câu 6:
Thứ tự các bước giải bài toán trên máy tính:
Đáp án đúng là: B
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).
Câu 7:
Thuật toán là:
Đáp án đúng là: B
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.
Câu 8:
Mô tả thuật toán là:
Đáp án đúng là: B
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.
Câu 9:
Trong tin học, sơ đồ khối là:
Đáp án đúng là: B
Để mô tả thuật toán ngoài cách liệt kê các bước ta cũng có thể dùng sơ đồ khối. Sơ đồ khối là một bản vẽ minh họa của một hệ thống có các bộ phận hoặc thành phần chính được biểu diễn bằng các khối. Các khối này được nối với nhau bằng các dòng để hiển thị mối quan hệ giữa các khối tiếp theo.
Để biểu diễn thuật toán bằng sơ đồ khối, người ta thường phân biệt hai loại thao tác chính trong thuật toán:
1) Thao tác chọn lựa theo một điều kiện nào đó (được biểu diễn bằng khối hình thoi); 2) Các thao tác không thuộc loại chọn lựa được xếp vào loại hành động (được biểu diễn bằng khối hình chữ nhật).
Ngoài ra, người ta còn thường dùng các khối hình bình hành để biểu diễn thao tác nhập/ xuất dữ liệu và khối elip để biểu diễn khối bắt đầu và kết thúc thuật toán.
Câu 10:
Thuật toán có tính:
Đáp án đúng là: C
+ Thuật toán phải kết thúc sau một số hữu hạn lần thực hiện các thao tác → tính dừng.
+ Sau khi thực hiện một thao tác thì hoặc là thuật toán kết thúc hoặc có đúng 1 thao tác xác định để thực hiện tiếp theo → tính xác định.
+ Sau khi thuật toán kết thúc, ta phải nhận được Output của bài toán cần tìm → Tính đúng đắn.
Câu 11:
Chọn phát biểu đúng khi nói về bài toán và thuật toán:
Đáp án đúng là: D
+ Bài toán là việc nào đó mà ta muốn máy tính thực hiện.
+ Thuật toán (giải thuật) để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho sau khi thực hiện dãy thao tác đó, từ Input của bài toán này, ta nhận được Output cần tìm.
+ Sơ đồ khối là sơ đồ mô tả thuật toán.
Câu 12:
Cho bài toán kiểm tra tính nguyên tố của một số nguyên dương N. Hãy xác định Output của bài toán này?
Đáp án đúng là: C
Output là các thông tin cần tìm vì vậy bài toán kiểm tra tính nguyên tố của một số nguyên dương N, Output của bài toán này là N là số nguyên tố hoặc N không là số nguyên tố.
Câu 13:
"…(1) là một dãy hữu hạn các …(2) được sắp xếp theo một trình tự xác định sao cho khi thực hiện dãy các thao tác ấy, từ …(3) của bài toán, ta nhận được …(4) cần tìm". Các cụm từ còn thiếu lần lượt là?
Đáp án đúng là: B
Thuật toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho khi thực hiện dãy các thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm.
Câu 14:
Hàm tìm UCLN(a,b) trong C++ là __gcd(a,b) vậy câu lệnh in ra UCLN(a,b,c,d) nào sau đây là đúng?
Đáp án đúng là: D
Muốn tìm UCLN(a,b,c,d) ta tìm UCLN(a,b), UCLN(c,d) sau đó tìm UCLN(UCLN(a,b),UCLN(c,d)), khi đó ta viết trong C++ sẽ là:
__gcd (__gcd (a,b), __gcd (c,d)). Sau đó muốn in kết quả ra màn hình thì kết hợp với lệnh cout nữa là hoàn thành.
⇒ Câu lệnh đúng là:
cout<< “__gcd(__gcd(a,b),__gcd(c,d))”;