2000 câu hỏi ôn tập Tin học có đáp án (Phần 7)
Câu 1: Giá trị tại ô C4: “PN01”. Công thức tại ô D4: = IIF(Left(C4, 2) = “PN”, “Nhập”, “Xuất”).Kết quả nhận được tại ô D4:
A. Nhập
B. Xuất
C. NAME?
D. #VALUE!
Lời giải:
→ C. NAME?
Vì Giá trị tại ô C4: “PN01”. Công thức tại ô D4: = IIF(Left(C4, 2) = “PN”, “Nhập”, “Xuất”).Kết quả nhận được tại ô D4: Giá trị tại ô C4: NAME?
Câu 2: Giả sử hai người đã tạo được tài khoản thư miễn phí tại địa chỉ mail.gmail.com. Phát biểu nào sau đây sai?
A. Hai người buộc phải lựa chọn hai tên đăng nhập khác nhau
B. Mật khẩu mở hộp thư của hai người này phải khác nhau
C. Hộp thư của hai người đều nằm trên máy mail server của công ty Gmail
D. Hai người có thể mở hộp thư của nhau nếu hai bên biết tên truy cập và mật khẩu của nhau
Lời giải:
Phát biểu sai là D. Hai người không thể mở hộp thư của nhau nếu hai bên biết tên truy cập và mật khẩu của nhau trong trường hợp tài khoản Gmail được đăng ký và bảo mật riêng tư.
Mỗi người dùng Gmail có tài khoản và mật khẩu riêng để truy cập vào hộp thư của mình. Tài khoản và mật khẩu này là duy nhất và không được chia sẻ với người khác. Điều này đảm bảo tính riêng tư và bảo mật của thông tin trong hộp thư cá nhân.
Do đó, không phải ai cũng có thể mở hộp thư của người khác chỉ bằng cách biết tên truy cập và mật khẩu của người đó. Mỗi người dùng chỉ có quyền truy cập vào hộp thư của mình bằng thông tin đăng nhập cá nhân.
Câu 3: Giao thức Token Ring là một giao thức sử dụng phương pháp điều khiển kiểu:
A. Hỏi vòng (Polling)
B. Giữ chỗ trước(Reservation)
C. Truy cập ngẫu nhiên không sử dụng khe thời gian (Stochastic without time slot).
D. Truy cập ngẫu nhiên sử dụng khe thời gian (Stochastic with time slot).
Lời giải:
B. Giữ chỗ trước(Reservation)
⇒Reservation là một thuật ngữ vô cùng phổ biến trong lĩnh vực kinh doanh.
Giải thích: Token Ring (được định nghĩa theo chuẩn IEEE 802.5) là một chuỗi bit đặc biệt, có token có thể truyền dữ liệu qua mạng. Token Ring xử lý mức độ ưu tiên, trong đó một số node có thể ưu tiên cho token, chứa thông tin định tuyến.
Câu 4: Việc tải file dữ liệu từ internet bị chậm là do nguyên nhân, bạn sử dụng lựa chọn nào?
A. File có dung lượng lớn
B. Server cung cấp dịch vụ internet bị quá tải
C. Đường truyền internet tốc độ thấp
D. Cả 3 ý trên đều đúng
Lời giải:
Đáp án đúng: D
Câu 5: Trong phần mềm Paint, để sao chép hình em giữ phím nào trong khi kéo rê chuột: *
A. Ctrl
B. Tab
C. Shift
D. Alt
Lời giải:
Trong phần mềm Paint, để sao chép hình em giữ phím nào trong khi kéo rê chuột: Ctrl
Câu 6: Trong các tên sau tên nào là tên biến đúng trong NNLT Python.
A. @
B. b
C. if
D. for
Lời giải:
Trong các tên sau tên nào là tên biến đúng trong NNLT Python.
A. @ => kí tự đặc biệt
B. b
C. if => từ khóa
D. for => từ khóa
=> Đáp án đúng: B
Câu 7: Dãy fibonacci có hai phần tử đầu là 1,1. Các phần tử sau bằng tổng hai phần tử đứng ngay trước nó: 1,1,2,3,5,8,13,21,… Viết phương trình in ra dãy fibonacci có phần tử lớn nhất nhỏ hơn n
Lời giải:
var i,n,j : integer;
a : array [1..1000] of integer;
begin
writeln(‘nhap n: ‘);
readln(n);
a[1]:=1; a[2]:=1; i:=2;
while a[i]
begin
inc(i);
a[i]:=a[i-1]+a[i-2];
end;
for j:=1 to i-1 do write(a[j],’ ‘);
readln;
end.
Câu 8: Viết chương trình pascal tìm cặp số bạn bè (hoặc cũng có thể gọi là thân thiết)
Lời giải:
uses crt;
var a, b, s1, s2, i : integer;
begin
clrscr;
s1 := 0; s2 := 0;
write(‘nhap hai so : ‘); readln(a, b);
for i := 1 to a – 1 do
if a mod i = 0 then s1 := s1 + i;
for i := 1 to b – 1 do
if b mod i = 0 then s2 := s2 + i;
if (s2 = a) and (s1 = b) then
writeln(a,’ va ‘, b ,’ la hai so than thiet’)
else writeln(a,’ va ‘, b ,’ khong la hai so than thiet’);
readln
end.
Câu 9: Trong word 2010, kiểu file .doc tương ứng với định dạng lưu tài liệu
Lời giải:
Trong Word 2010, kiểu file .doc tương ứng với định dạng lưu tài liệu Word 97 – 2003
Câu 10: Bạn đã bật Vietkey hoặc Unikey để soạn thảo. Bạn lựa chọn gõ theo kiểu telex và font chữ Unicode. Những font chữ nào sau đây của Word có thể được sử dụng để hiển thị rõ tiếng Việt?
A. Vn Times, . Vn Arial, .Vn Courier
B. Vn Times, Times new roman, Arial
C. VNI times, Arial, .Vn Avant
D. Tahoma, Verdana, Times new Roman
Lời giải:
Đáp án:
D. Tahoma, Verdana, Times new Roman
Khi đã bật Vietkey hoặc Unikey để soạn thảo, font Word có thể sử dụng để hiển thị rõ tiếng Việt là: Tahoma, Verdana, Times new Roman
Câu 11: Viết chương trình tìm số lớn nhất trong 3 số a b c nhập từ bàn phím
Lời giải:
Var : a,b,c , max : integer ;
Begin
Write (‘ Nhap a b c’) ; Readln ( a,b,c) ;
Max:=a;
If max
If max
Write (‘ So lon nhat la’,max);
Readln ;
End .
Câu 12: Điện thoại thông minh có nhiều điểm tương đồng với máy tính. Em hãy cho biết bộ phận nào của điện thoại thông minh là thiết bị vào ra?
Lời giải:
Các thiết bị vào, ra của điện thoại thông minh
+Thiết bị vào: microphone, các nút mở, tắt nguồn, tăng, giảm âm lượng, camera, màn hình cảm ứng,…
+Thiết bị ra: màn hình, loa, thanh trạng thái…
Câu 13: Viết chương trình yêu cầu người dùng nhập một số không lớn hơn 5 từ bàn phím, chương trình sẽ kiểm tra tính hợp lệ, nếu kh hợp lệ sẽ thông báo lỗi. Khi đó, chương trình sẽ đc viết như thế nào? em hãy viết chương trình
Lời giải:
PROGRAM: So_Hop_Le;
Uses crt;
Var a:Integer;
Begin;
clrscr;
Write(‘Nhap so tu nhien khong lon hon 5.’); readln(a);
If a>5 then;
Writeln(‘Khong hop le.’)
Else
Writeln(‘Hop le.’);
Readln;
End.
Câu 14: Phương tiện nào dưới đây lưu trữ dữ liệu của một CSDL?
A. Bộ nhớ RAM
B. Bộ nhớ ROM
C. Bộ nhớ ngoài
D. Hồ sơ, sổ sách
Lời giải:
Đáp án:
A. Bộ nhớ RAM
Giải thích các bước:
C và D không liên quan nên loại chỉ còn A và B.
Vì RAM là bộ nhớ tạm của máy giúp lưu trữ thông tin hiện hành để CPU có thể truy xuất và xử lý.
Còn ROM là bộ nhớ này đã chứa sẵn các chương trình từ trước.
Nên đáp án chính xác là A.
Câu 15: Yêu cầu: Cho 5 số nguyên a, b, c, d, e 64 bit đôi một khác nhau. In ra số nhỏ thứ nhì.
Dữ liệu: Một dòng gồm 5 số nguyên a, b, c, d, e . Kết quả: In ra số nhỏ thứ nhì.
Lời giải:
#include
typedef long long ll;
using namespace std;
int SS (ll x, ll a, ll b, ll c, ll d, ll e)
{
int T = 0;
if (x > a) T++;
if (x > b) T++;
if (x > c) T++;
if (x > d) T++;
if (x > e) T++;
return T;
}
int main()
{
ll a, b, c, d, e;
cin >> a >> b >> c >> d >> e;
if (SS(a, a, b, c, d, e) == 1) cout << a;
else {
if (SS(b, a, b, c, d, e) == 1) cout << b;
else {
if (SS(c, a, b, c, d, e) == 1) cout << c;
else {
if (SS(d, a, b, c, d, e) == 1) cout << d;
else cout << e;
}
}
}
return 0;
}
Câu 16: Phím nào bạn sẽ nhấn để tạo ra dòng mới khi bạn đang ở trong ô cuối cùng của bảng?
A. 25 điểm
B. Enter
C. Tab
D. Spacebar
Lời giải:
Đáp án đúng: B
Câu 17: Viết chương trình nhập vào họ tên năm sinh của 1 người rồi in ra màn hình họ tên và tuổi của người đó
Viết input
Output
Mô tả thuật toán
Lời giải:
* Xác định bài toán :
– Input : họ và tên, năm sinh
– Output : họ và tên, tuổi
* Mô tả thuật toán :
– Bước 1 : nhập họ và tên, năm sinh ns
– Bước 2 : t ← 2021 – ns
– Bước 3 : xuất họ và tên, tuổi (biến t) ra màn hình
– Bước 4 : kết thúc
* Viết chương trình
uses crt;
var s : string; n, t : integer;
begin
clrscr;
write(‘nhap ho va ten :’);readln(s);
write(‘nhap nam sinh :’);readln(n);
t := 2021 – n;
writeln(‘Ho va Ten : ‘, s);
writeln(‘Tuoi : ‘, t);
readln
end.
Câu 18: Trình bày một số quy ước trong việc gõ văn bản
Lời giải:
Một số quy ước trong việc gõ văn bản:
1. Sử dụng chữ hoa ở đầu câu, tên riêng.
2. Các dâu ngắt câu (ví dụ: dấu chấm, dấu phẩy, chấm than, hai chấm,..) phải đặt sát kí tự trước nó.
Nếu câu còn từ tiếp theo thì: kí tự trước + dấu ngắt câu + khoảng trống + kí tự tiếp theo.
3. Dùng 1 enter để xuống dòng, 1 dấu cách để tạo khoảng trống.
4. Các dấu mở ngoặc, đóng ngoặc, dấu nháy phải đặt sát các kí tự bên trong ngoặc hoặc nháy (lưu ý không có khoảng trống)
Câu 19: Cho cây thư mục như hình sau:
a- Hãy viết đường dẫn từ ổ đĩa D tới tệp Tham khao.
b-Thư mục mẹ của thư mục Vo bai tap là thư muc nào? Thư mục Toan có nằm trong thư muc gốc không ?
c- Hãy nêu điểm giống nhau và khác nhau giữa thư mục Tin hoc và thư mục Toan?
Lời giải:
a) Đường dẫn: D:Thu vienTin hocSach GKTham khao
b) Thư mục mẹ của Vo bai tap là thư mục Tin hoc
Thư mục toán nằm trong thư mục gốc
c) Điểm giống nhau: đều nằm trong ổ đĩa D và tệp Thu vien
Điểm khác nhau: Thư mục Tin hoc có thư mục con, thư mục Toan không có thư mục con.
Câu 20: Liệt kê các đối tượng cần quản lý khi xây dựng cơ sở dữ liệu quản lý các tài khoản ngân hàng với mỗi đối tượng Hãy liệt kê thông tin cần quản lý
Lời giải:
Khi xây dựng CSDL quản lý các tài khoản ngân hàng:
Thông tin chủ tài khoản
– Họ và tên.
– Giới tính.
– Ngày tháng năm sinh
– Số thẻ căn cước/Chứng minh thư nhân dân.
– Quê quán
– Địa chỉ hiện tại
Thông tin tài khoản ngân hàng
– Mã số thẻ
– Số tài khoản
– Ngày cấp thẻ
– Tên chi nhánh/trụ sở ngân hàng cấp thẻ
Thông tin giao dịch của thẻ
– Thời gian thực hiện giao dịch
– Nội dung giao dịch
– Số tiền giao dịch
– Hóa đơn điện tử
Thông tin nhân viên cấp thẻ
– Mã nhân viên
– Tên nhân viên
– Bộ phận/chức vụ
– Ngày cấp thẻ
– Trình độ học vấn
Câu 21: Viết chương trình nhập vào độ dài cạnh hình vuông, tính và đưa ra màn hình chu vi và diện tích hình vuông (độ dài cạnh hình vuông, chu vi, diện tích là các số thực).
Lời giải:
Program tinhoc;
Uses crt;
Var a,C,S: real;
Begin
clrscr;
Write(‘ Nhap gia tri cua a: ‘); readln(a);
C:=a*4;
S:=a*a;
Writeln(‘ Chu vi la:’,C:6:2);
Writeln(‘ Dien tich la:’,S:6:2);
Readln
End.
Câu 22: Nhập pascal để có 50-100 trái tim hiện lên tục trên màn hình , hiện lần lượt ở chỗ bất kì
Lời giải:
uses crt;
var x,y: byte;
begin
clrscr;
textcolor(lightred);
randomize;
repeat
x:=random (100);
y:=random (22);
if (x<>0) and (y<>0) then
begin
gotoxy (x,y);
writeln (chr(3));
delay (40);
end;
until keypressed;
readln;
end.
Câu 23: Máy chủ thư điện tử là các máy chủ được cài đặt:
A. Phần mềm quản lý thư điện tử
B. Phần cứng quản lí thư điện tử
C. Máy tính gửi thư điện tử
D. Máy tính nhận thư điện tử
Lời giải:
Đáp án đúng: D
Câu 24: Nêu ưu, nhược điểm của các cách tìm kiếm thông tin trên Internet.
Lời giải:
Ưu điểm:
Nhanh gọn, thuận lợi, có đáp án từ nhiều nguồn để dễ tham khảo
Nhược điểm:
Rất ít nhược điểm, đôi lúc chúng thiếu ý, thiếu chính xác hoặc không tìm được thông tin mình muốn tìm kiếm.
Câu 25: Viết chương trình nhập vào từ bàn phím danh sách số nguyên a; đếm và đưa ra màn hình số lượng các phần tử lớn hơn phần tử đứng trước và phần tử đứng sau nó.
Lời giải:
– Tạo danh sách a từ dữ liệu nhập vào, sau đó duyệt các phần tử trong danh sách thoả mãn điều kiện lớn hơn phần tử đứng trước và phần tử đứng sau nó.
– Chương trình:
print(“Nhập một dãy số nguyên”)
a = [int(i) for i in input().split()]
count=0
for i in range (1, len(a)-1):
if a[i-1] < a[i] > a[i + 1]: count = count + 1
print(count)
Câu 26: Một thủ tục trong Logo bắt đầu và kết thúc bởi?
A. To và Exit
B. To và Edit
C. Edit và End
D. To và End
Lời giải:
⇒ Chọn D
⇒ Một thủ tục trong Logo bắt đầu bằng To và kết thúc bởi End.
Câu 27: Viết chương trình để nén và giải nén một xâu ký tự. Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’.
Lời giải:
Chương trình nén xâu:
uses crt;
var s,t,k:string;
i,d:longint;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=1;
for i:=2 to length(s) do
begin
if s[i]=s[i-1] then inc(d);
if (s[i]<>s[i-1]) then
begin
str(d,t);
if d>1 then k:=k+t+s[i-1] else k:=k+s[i-1]; d:=1;
end;
if i=length(s) then begin str(d,t);
if d>1 then k:=k+t+s[i] else k:=k+s[i];
end;
end;
write(‘Xau sau khi nen: ‘,k);
readln
end.
Chương trình giải nén xâu:
Uses crt;
Var St,St1,x:string;
i,j,k,l:longint;
Begin
Clrscr;
readln(St);
For i:=1 to length(St) do
If (St[i] in [‘a’..’z’]) then
If not (St[i-1] in [‘0’..’9′]) then Insert(‘1’,St,i);
For i:=1 to length(St) do
Begin
If St[i] in [‘0’..’9′] then
For j:=i+1 to length(St) do
If St[j] in [‘a’..’z’] then break;
x:=copy(St,i,j-i);
Val(x,k);
For l:=1 to k do St1:=St1+St[j]; end;
write(St1);
readln
end.
Câu 28: Một thủ tục trong Logo có ba phần. Kể tên các phần đó.
Lời giải:
– Một thủ tục trong Logo có ba phần:
• Đầu thủ tục
• Thân thủ tục
• Kết thúc thủ tục.
Câu 29: Thủ tục là gì? Thủ tục trong logo?
Lời giải:
– Thủ tục là một dãy các thao tác được thực hiện theo thứ tự để hoàn thành một công việc nào đó.
– Thủ tục trong logo
Nếu gộp các câu lệnh vào một nhóm, đặt tên cho nhóm lệnh này thì em đã viết được một thu tục trong Logo.
Câu 30: Trong ms word, con trỏ văn bản đang đặt ở trang thứ 3 của văn bản. Muốn in từ trang thứ 3 đến trang thứ 6. Trong hộp thoại print ta chọn mục nào sau đây?
A. nhập 3-6 vào hộp Pages. C. chọn print all page
B. nhập 6,3 vào hộp Pages. D. chọn print current page.
Lời giải:
A. Nhập 3-6 vào hộp Pages.
Giải thích: Khi chọn tùy chọn này, máy in sẽ chỉ in các trang từ trang thứ 3 đến trang thứ 6 của tài liệu được đang mở trong Microsoft Word.
Câu 31: Khi sử dụng chương trình Paint để vẽ một bức tranh, em có thể lưu bức tranh đó ở đâu?
Chỉ trên đĩa cứng
Chỉ trên đĩa cứng hoặc đĩa CD
Chỉ trên đĩa cứng hoặc thiết bị nhớ Flash
Có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Lời giải:
Em có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Câu 32: Trình bày sơ đồ khối cấu trúc rẽ nhánh đang thiếu, dạng đủ
Lời giải:
Sơ đồ thuật toán câu lệnh rẽ nhánh dạng thiếu
Câu 33: Viết chương trình nhập một xâu ký tự St từ bàn phím và một ký tự ch. In ra màn hình xâu St sau khi xóa hết các ký tự ch trong xâu đó.
Lời giải:
uses crt;
var i : byte; St : string; ch : char;
begin
clrscr;
write(‘Nhap xau ki tu : ‘); readln(St);
write(‘Nhap ki tu : ‘); readln(ch);
i := 1; while i <= length(St) do
begin if St[i] = ch then begin
delete(St, i, 1); i := i; end
else i := i + 1; end;
write(‘Xau moi : ‘, St);
readln
end.
Câu 34: Viết chương trình nhập vào một số nguyên n rồi in ra màn hình tổng các chữ số của n
Lời giải:
uses crt;
var m,n,s:longint;
begin
clrscr;s:=0;
write(‘Nhap n: ‘);readln(n);
while n<>0 do
begin
m:=n mod 10;
n:=n div 10;
s:=s+m;
end;
write(‘Tong cac chu so cua n la: ‘,s);
readln
end.
Câu 35: Viết chương trình tính tổng 20 số tự nhiên đầu tiên
Lời giải:
uses crt;
var i,t:integer;
begin
clrscr;
t:=0;
for i:=1 to 20 do
t:=t+i;
writeln(t);
readln;
end.
Câu 36: Viết chương trình tính tổng các số chia hết cho 2 của một mảng số được nhập từ bàn phím.
Lời giải:
uses crt;
var a:array[1..100]of integer;
n,i,t:integer;
begin
clrscr;
write(‘Nhap n=’); readln(n);
for i:=1 to n do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
writeln(‘Tong cac so chan la: ‘,t);
readln;
end.
Câu 37: Viết chương trình in ra các số hoàn thiện khoảng từ M đến N
Lời giải:
Câu 38: Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin nào dưới đây?
A. Thông tin về Trái Đất
B. Từ điện trực tuyến để trả cứu
C. Lời giải của mọi bài toán
D. Chương trình kể chuyện lớp 3
Lời giải:
Đáp án đúng là: C
Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin về lời giải của mọi bài toán. Bởi vì sẽ có những bài toán không tìm thấy trên Internet.
Câu 39: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả A, B, C đều sai
Lời giải:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là For..do, câu Readln (A[i]) là nhập dữ liệu từ bàn phím cho từng phần tử.
Đáp án: A
Câu 40: Viết chương trình pascal nhập vào 30 phần tử số thực và in ra 1 cột số lớn hơn hoặc bằng 5 và tính tổng dãy số đó
Lời giải:
uses crt;
var a:array[1..30]of real;
i:integer;
t:real;
begin
clrscr;
for i:=1 to 30 do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
writeln(‘Cac so lon hon 5 trong day la: ‘);
t:=0;
for i:=1 to 30 do
if a[i]>5 then
begin
write(a[i]:4:2,’ ‘);
t:=t+a[i];
end;
writeln;
writeln(‘Tong cac so lon hon 5 trong day la: ‘,t:4:2);
readln;
end.
Câu 41: Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
Viết input
Output
Mô tả thuật toán
Lời giải:
* Xác định bài toán :
– Input : họ và tên, năm sinh
– Output : họ và tên, tuổi
* Mô tả thuật toán :
– Bước 1 : nhập họ và tên, năm sinh ns
– Bước 2 : t ← 2021 – ns
– Bước 3 : xuất họ và tên, tuổi (biến t) ra màn hình
– Bước 4 : kết thúc
* Viết chương trình
uses crt;
var s : string; n, t : integer;
begin
clrscr;
write(‘nhap ho va ten :’);readln(s);
write(‘nhap nam sinh :’);readln(n);
t := 2021 – n;
writeln(‘Ho va Ten : ‘, s);
writeln(‘Tuoi : ‘, t);
readln
end.
Câu 18: Trình bày một số quy ước trong việc gõ văn bản
Lời giải:
Một số quy ước trong việc gõ văn bản:
1. Sử dụng chữ hoa ở đầu câu, tên riêng.
2. Các dâu ngắt câu (ví dụ: dấu chấm, dấu phẩy, chấm than, hai chấm,..) phải đặt sát kí tự trước nó.
Nếu câu còn từ tiếp theo thì: kí tự trước + dấu ngắt câu + khoảng trống + kí tự tiếp theo.
3. Dùng 1 enter để xuống dòng, 1 dấu cách để tạo khoảng trống.
4. Các dấu mở ngoặc, đóng ngoặc, dấu nháy phải đặt sát các kí tự bên trong ngoặc hoặc nháy (lưu ý không có khoảng trống)
Câu 19: Cho cây thư mục như hình sau:
a- Hãy viết đường dẫn từ ổ đĩa D tới tệp Tham khao.
b-Thư mục mẹ của thư mục Vo bai tap là thư muc nào? Thư mục Toan có nằm trong thư muc gốc không ?
c- Hãy nêu điểm giống nhau và khác nhau giữa thư mục Tin hoc và thư mục Toan?
Lời giải:
a) Đường dẫn: D:Thu vienTin hocSach GKTham khao
b) Thư mục mẹ của Vo bai tap là thư mục Tin hoc
Thư mục toán nằm trong thư mục gốc
c) Điểm giống nhau: đều nằm trong ổ đĩa D và tệp Thu vien
Điểm khác nhau: Thư mục Tin hoc có thư mục con, thư mục Toan không có thư mục con.
Câu 20: Liệt kê các đối tượng cần quản lý khi xây dựng cơ sở dữ liệu quản lý các tài khoản ngân hàng với mỗi đối tượng Hãy liệt kê thông tin cần quản lý
Lời giải:
Khi xây dựng CSDL quản lý các tài khoản ngân hàng:
Thông tin chủ tài khoản
– Họ và tên.
– Giới tính.
– Ngày tháng năm sinh
– Số thẻ căn cước/Chứng minh thư nhân dân.
– Quê quán
– Địa chỉ hiện tại
Thông tin tài khoản ngân hàng
– Mã số thẻ
– Số tài khoản
– Ngày cấp thẻ
– Tên chi nhánh/trụ sở ngân hàng cấp thẻ
Thông tin giao dịch của thẻ
– Thời gian thực hiện giao dịch
– Nội dung giao dịch
– Số tiền giao dịch
– Hóa đơn điện tử
Thông tin nhân viên cấp thẻ
– Mã nhân viên
– Tên nhân viên
– Bộ phận/chức vụ
– Ngày cấp thẻ
– Trình độ học vấn
Câu 21: Viết chương trình nhập vào độ dài cạnh hình vuông, tính và đưa ra màn hình chu vi và diện tích hình vuông (độ dài cạnh hình vuông, chu vi, diện tích là các số thực).
Lời giải:
Program tinhoc;
Uses crt;
Var a,C,S: real;
Begin
clrscr;
Write(‘ Nhap gia tri cua a: ‘); readln(a);
C:=a*4;
S:=a*a;
Writeln(‘ Chu vi la:’,C:6:2);
Writeln(‘ Dien tich la:’,S:6:2);
Readln
End.
Câu 22: Nhập pascal để có 50-100 trái tim hiện lên tục trên màn hình , hiện lần lượt ở chỗ bất kì
Lời giải:
uses crt;
var x,y: byte;
begin
clrscr;
textcolor(lightred);
randomize;
repeat
x:=random (100);
y:=random (22);
if (x<>0) and (y<>0) then
begin
gotoxy (x,y);
writeln (chr(3));
delay (40);
end;
until keypressed;
readln;
end.
Câu 23: Máy chủ thư điện tử là các máy chủ được cài đặt:
A. Phần mềm quản lý thư điện tử
B. Phần cứng quản lí thư điện tử
C. Máy tính gửi thư điện tử
D. Máy tính nhận thư điện tử
Lời giải:
Đáp án đúng: D
Câu 24: Nêu ưu, nhược điểm của các cách tìm kiếm thông tin trên Internet.
Lời giải:
Ưu điểm:
Nhanh gọn, thuận lợi, có đáp án từ nhiều nguồn để dễ tham khảo
Nhược điểm:
Rất ít nhược điểm, đôi lúc chúng thiếu ý, thiếu chính xác hoặc không tìm được thông tin mình muốn tìm kiếm.
Câu 25: Viết chương trình nhập vào từ bàn phím danh sách số nguyên a; đếm và đưa ra màn hình số lượng các phần tử lớn hơn phần tử đứng trước và phần tử đứng sau nó.
Lời giải:
– Tạo danh sách a từ dữ liệu nhập vào, sau đó duyệt các phần tử trong danh sách thoả mãn điều kiện lớn hơn phần tử đứng trước và phần tử đứng sau nó.
– Chương trình:
print(“Nhập một dãy số nguyên”)
a = [int(i) for i in input().split()]
count=0
for i in range (1, len(a)-1):
if a[i-1] < a[i] > a[i + 1]: count = count + 1
print(count)
Câu 26: Một thủ tục trong Logo bắt đầu và kết thúc bởi?
A. To và Exit
B. To và Edit
C. Edit và End
D. To và End
Lời giải:
⇒ Chọn D
⇒ Một thủ tục trong Logo bắt đầu bằng To và kết thúc bởi End.
Câu 27: Viết chương trình để nén và giải nén một xâu ký tự. Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’.
Lời giải:
Chương trình nén xâu:
uses crt;
var s,t,k:string;
i,d:longint;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=1;
for i:=2 to length(s) do
begin
if s[i]=s[i-1] then inc(d);
if (s[i]<>s[i-1]) then
begin
str(d,t);
if d>1 then k:=k+t+s[i-1] else k:=k+s[i-1]; d:=1;
end;
if i=length(s) then begin str(d,t);
if d>1 then k:=k+t+s[i] else k:=k+s[i];
end;
end;
write(‘Xau sau khi nen: ‘,k);
readln
end.
Chương trình giải nén xâu:
Uses crt;
Var St,St1,x:string;
i,j,k,l:longint;
Begin
Clrscr;
readln(St);
For i:=1 to length(St) do
If (St[i] in [‘a’..’z’]) then
If not (St[i-1] in [‘0’..’9′]) then Insert(‘1’,St,i);
For i:=1 to length(St) do
Begin
If St[i] in [‘0’..’9′] then
For j:=i+1 to length(St) do
If St[j] in [‘a’..’z’] then break;
x:=copy(St,i,j-i);
Val(x,k);
For l:=1 to k do St1:=St1+St[j]; end;
write(St1);
readln
end.
Câu 28: Một thủ tục trong Logo có ba phần. Kể tên các phần đó.
Lời giải:
– Một thủ tục trong Logo có ba phần:
• Đầu thủ tục
• Thân thủ tục
• Kết thúc thủ tục.
Câu 29: Thủ tục là gì? Thủ tục trong logo?
Lời giải:
– Thủ tục là một dãy các thao tác được thực hiện theo thứ tự để hoàn thành một công việc nào đó.
– Thủ tục trong logo
Nếu gộp các câu lệnh vào một nhóm, đặt tên cho nhóm lệnh này thì em đã viết được một thu tục trong Logo.
Câu 30: Trong ms word, con trỏ văn bản đang đặt ở trang thứ 3 của văn bản. Muốn in từ trang thứ 3 đến trang thứ 6. Trong hộp thoại print ta chọn mục nào sau đây?
A. nhập 3-6 vào hộp Pages. C. chọn print all page
B. nhập 6,3 vào hộp Pages. D. chọn print current page.
Lời giải:
A. Nhập 3-6 vào hộp Pages.
Giải thích: Khi chọn tùy chọn này, máy in sẽ chỉ in các trang từ trang thứ 3 đến trang thứ 6 của tài liệu được đang mở trong Microsoft Word.
Câu 31: Khi sử dụng chương trình Paint để vẽ một bức tranh, em có thể lưu bức tranh đó ở đâu?
Chỉ trên đĩa cứng
Chỉ trên đĩa cứng hoặc đĩa CD
Chỉ trên đĩa cứng hoặc thiết bị nhớ Flash
Có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Lời giải:
Em có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Câu 32: Trình bày sơ đồ khối cấu trúc rẽ nhánh đang thiếu, dạng đủ
Lời giải:
Sơ đồ thuật toán câu lệnh rẽ nhánh dạng thiếu
Câu 33: Viết chương trình nhập một xâu ký tự St từ bàn phím và một ký tự ch. In ra màn hình xâu St sau khi xóa hết các ký tự ch trong xâu đó.
Lời giải:
uses crt;
var i : byte; St : string; ch : char;
begin
clrscr;
write(‘Nhap xau ki tu : ‘); readln(St);
write(‘Nhap ki tu : ‘); readln(ch);
i := 1; while i <= length(St) do
begin if St[i] = ch then begin
delete(St, i, 1); i := i; end
else i := i + 1; end;
write(‘Xau moi : ‘, St);
readln
end.
Câu 34: Viết chương trình nhập vào một số nguyên n rồi in ra màn hình tổng các chữ số của n
Lời giải:
uses crt;
var m,n,s:longint;
begin
clrscr;s:=0;
write(‘Nhap n: ‘);readln(n);
while n<>0 do
begin
m:=n mod 10;
n:=n div 10;
s:=s+m;
end;
write(‘Tong cac chu so cua n la: ‘,s);
readln
end.
Câu 35: Viết chương trình tính tổng 20 số tự nhiên đầu tiên
Lời giải:
uses crt;
var i,t:integer;
begin
clrscr;
t:=0;
for i:=1 to 20 do
t:=t+i;
writeln(t);
readln;
end.
Câu 36: Viết chương trình tính tổng các số chia hết cho 2 của một mảng số được nhập từ bàn phím.
Lời giải:
uses crt;
var a:array[1..100]of integer;
n,i,t:integer;
begin
clrscr;
write(‘Nhap n=’); readln(n);
for i:=1 to n do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
writeln(‘Tong cac so chan la: ‘,t);
readln;
end.
Câu 37: Viết chương trình in ra các số hoàn thiện khoảng từ M đến N
Lời giải:
Câu 38: Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin nào dưới đây?
A. Thông tin về Trái Đất
B. Từ điện trực tuyến để trả cứu
C. Lời giải của mọi bài toán
D. Chương trình kể chuyện lớp 3
Lời giải:
Đáp án đúng là: C
Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin về lời giải của mọi bài toán. Bởi vì sẽ có những bài toán không tìm thấy trên Internet.
Câu 39: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả A, B, C đều sai
Lời giải:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là For..do, câu Readln (A[i]) là nhập dữ liệu từ bàn phím cho từng phần tử.
Đáp án: A
Câu 40: Viết chương trình pascal nhập vào 30 phần tử số thực và in ra 1 cột số lớn hơn hoặc bằng 5 và tính tổng dãy số đó
Lời giải:
uses crt;
var a:array[1..30]of real;
i:integer;
t:real;
begin
clrscr;
for i:=1 to 30 do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
writeln(‘Cac so lon hon 5 trong day la: ‘);
t:=0;
for i:=1 to 30 do
if a[i]>5 then
begin
write(a[i]:4:2,’ ‘);
t:=t+a[i];
end;
writeln;
writeln(‘Tong cac so lon hon 5 trong day la: ‘,t:4:2);
readln;
end.
Câu 41: Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
A. Phần mềm quản lý thư điện tử
B. Phần cứng quản lí thư điện tử
C. Máy tính gửi thư điện tử
D. Máy tính nhận thư điện tử
Lời giải:
Đáp án đúng: D
Câu 24: Nêu ưu, nhược điểm của các cách tìm kiếm thông tin trên Internet.
Lời giải:
Ưu điểm:
Nhanh gọn, thuận lợi, có đáp án từ nhiều nguồn để dễ tham khảo
Nhược điểm:
Rất ít nhược điểm, đôi lúc chúng thiếu ý, thiếu chính xác hoặc không tìm được thông tin mình muốn tìm kiếm.
Câu 25: Viết chương trình nhập vào từ bàn phím danh sách số nguyên a; đếm và đưa ra màn hình số lượng các phần tử lớn hơn phần tử đứng trước và phần tử đứng sau nó.
Lời giải:
– Tạo danh sách a từ dữ liệu nhập vào, sau đó duyệt các phần tử trong danh sách thoả mãn điều kiện lớn hơn phần tử đứng trước và phần tử đứng sau nó.
– Chương trình:
print(“Nhập một dãy số nguyên”)
a = [int(i) for i in input().split()]
count=0
for i in range (1, len(a)-1):
if a[i-1] < a[i] > a[i + 1]: count = count + 1
print(count)
Câu 26: Một thủ tục trong Logo bắt đầu và kết thúc bởi?
A. To và Exit
B. To và Edit
C. Edit và End
D. To và End
Lời giải:
⇒ Chọn D
⇒ Một thủ tục trong Logo bắt đầu bằng To và kết thúc bởi End.
Câu 27: Viết chương trình để nén và giải nén một xâu ký tự. Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’.
Lời giải:
Chương trình nén xâu:
uses crt;
var s,t,k:string;
i,d:longint;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=1;
for i:=2 to length(s) do
begin
if s[i]=s[i-1] then inc(d);
if (s[i]<>s[i-1]) then
begin
str(d,t);
if d>1 then k:=k+t+s[i-1] else k:=k+s[i-1]; d:=1;
end;
if i=length(s) then begin str(d,t);
if d>1 then k:=k+t+s[i] else k:=k+s[i];
end;
end;
write(‘Xau sau khi nen: ‘,k);
readln
end.
Chương trình giải nén xâu:
Uses crt;
Var St,St1,x:string;
i,j,k,l:longint;
Begin
Clrscr;
readln(St);
For i:=1 to length(St) do
If (St[i] in [‘a’..’z’]) then
If not (St[i-1] in [‘0’..’9′]) then Insert(‘1’,St,i);
For i:=1 to length(St) do
Begin
If St[i] in [‘0’..’9′] then
For j:=i+1 to length(St) do
If St[j] in [‘a’..’z’] then break;
x:=copy(St,i,j-i);
Val(x,k);
For l:=1 to k do St1:=St1+St[j]; end;
write(St1);
readln
end.
Câu 28: Một thủ tục trong Logo có ba phần. Kể tên các phần đó.
Lời giải:
– Một thủ tục trong Logo có ba phần:
• Đầu thủ tục
• Thân thủ tục
• Kết thúc thủ tục.
Câu 29: Thủ tục là gì? Thủ tục trong logo?
Lời giải:
– Thủ tục là một dãy các thao tác được thực hiện theo thứ tự để hoàn thành một công việc nào đó.
– Thủ tục trong logo
Nếu gộp các câu lệnh vào một nhóm, đặt tên cho nhóm lệnh này thì em đã viết được một thu tục trong Logo.
Câu 30: Trong ms word, con trỏ văn bản đang đặt ở trang thứ 3 của văn bản. Muốn in từ trang thứ 3 đến trang thứ 6. Trong hộp thoại print ta chọn mục nào sau đây?
A. nhập 3-6 vào hộp Pages. C. chọn print all page
B. nhập 6,3 vào hộp Pages. D. chọn print current page.
Lời giải:
A. Nhập 3-6 vào hộp Pages.
Giải thích: Khi chọn tùy chọn này, máy in sẽ chỉ in các trang từ trang thứ 3 đến trang thứ 6 của tài liệu được đang mở trong Microsoft Word.
Câu 31: Khi sử dụng chương trình Paint để vẽ một bức tranh, em có thể lưu bức tranh đó ở đâu?
Chỉ trên đĩa cứng
Chỉ trên đĩa cứng hoặc đĩa CD
Chỉ trên đĩa cứng hoặc thiết bị nhớ Flash
Có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Lời giải:
Em có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Câu 32: Trình bày sơ đồ khối cấu trúc rẽ nhánh đang thiếu, dạng đủ
Lời giải:
Sơ đồ thuật toán câu lệnh rẽ nhánh dạng thiếu
Câu 33: Viết chương trình nhập một xâu ký tự St từ bàn phím và một ký tự ch. In ra màn hình xâu St sau khi xóa hết các ký tự ch trong xâu đó.
Lời giải:
uses crt;
var i : byte; St : string; ch : char;
begin
clrscr;
write(‘Nhap xau ki tu : ‘); readln(St);
write(‘Nhap ki tu : ‘); readln(ch);
i := 1; while i <= length(St) do
begin if St[i] = ch then begin
delete(St, i, 1); i := i; end
else i := i + 1; end;
write(‘Xau moi : ‘, St);
readln
end.
Câu 34: Viết chương trình nhập vào một số nguyên n rồi in ra màn hình tổng các chữ số của n
Lời giải:
uses crt;
var m,n,s:longint;
begin
clrscr;s:=0;
write(‘Nhap n: ‘);readln(n);
while n<>0 do
begin
m:=n mod 10;
n:=n div 10;
s:=s+m;
end;
write(‘Tong cac chu so cua n la: ‘,s);
readln
end.
Câu 35: Viết chương trình tính tổng 20 số tự nhiên đầu tiên
Lời giải:
uses crt;
var i,t:integer;
begin
clrscr;
t:=0;
for i:=1 to 20 do
t:=t+i;
writeln(t);
readln;
end.
Câu 36: Viết chương trình tính tổng các số chia hết cho 2 của một mảng số được nhập từ bàn phím.
Lời giải:
uses crt;
var a:array[1..100]of integer;
n,i,t:integer;
begin
clrscr;
write(‘Nhap n=’); readln(n);
for i:=1 to n do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
writeln(‘Tong cac so chan la: ‘,t);
readln;
end.
Câu 37: Viết chương trình in ra các số hoàn thiện khoảng từ M đến N
Lời giải:
Câu 38: Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin nào dưới đây?
A. Thông tin về Trái Đất
B. Từ điện trực tuyến để trả cứu
C. Lời giải của mọi bài toán
D. Chương trình kể chuyện lớp 3
Lời giải:
Đáp án đúng là: C
Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin về lời giải của mọi bài toán. Bởi vì sẽ có những bài toán không tìm thấy trên Internet.
Câu 39: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả A, B, C đều sai
Lời giải:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là For..do, câu Readln (A[i]) là nhập dữ liệu từ bàn phím cho từng phần tử.
Đáp án: A
Câu 40: Viết chương trình pascal nhập vào 30 phần tử số thực và in ra 1 cột số lớn hơn hoặc bằng 5 và tính tổng dãy số đó
Lời giải:
uses crt;
var a:array[1..30]of real;
i:integer;
t:real;
begin
clrscr;
for i:=1 to 30 do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
writeln(‘Cac so lon hon 5 trong day la: ‘);
t:=0;
for i:=1 to 30 do
if a[i]>5 then
begin
write(a[i]:4:2,’ ‘);
t:=t+a[i];
end;
writeln;
writeln(‘Tong cac so lon hon 5 trong day la: ‘,t:4:2);
readln;
end.
Câu 41: Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
Chỉ trên đĩa cứng
Chỉ trên đĩa cứng hoặc đĩa CD
Chỉ trên đĩa cứng hoặc thiết bị nhớ Flash
Có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Lời giải:
Em có thể lưu trên đĩa cứng, đĩa CD hoặc thiết bị nhớ Flash
Câu 32: Trình bày sơ đồ khối cấu trúc rẽ nhánh đang thiếu, dạng đủ
Lời giải:
Sơ đồ thuật toán câu lệnh rẽ nhánh dạng thiếu
Câu 33: Viết chương trình nhập một xâu ký tự St từ bàn phím và một ký tự ch. In ra màn hình xâu St sau khi xóa hết các ký tự ch trong xâu đó.
Lời giải:
uses crt;
var i : byte; St : string; ch : char;
begin
clrscr;
write(‘Nhap xau ki tu : ‘); readln(St);
write(‘Nhap ki tu : ‘); readln(ch);
i := 1; while i <= length(St) do
begin if St[i] = ch then begin
delete(St, i, 1); i := i; end
else i := i + 1; end;
write(‘Xau moi : ‘, St);
readln
end.
Câu 34: Viết chương trình nhập vào một số nguyên n rồi in ra màn hình tổng các chữ số của n
Lời giải:
uses crt;
var m,n,s:longint;
begin
clrscr;s:=0;
write(‘Nhap n: ‘);readln(n);
while n<>0 do
begin
m:=n mod 10;
n:=n div 10;
s:=s+m;
end;
write(‘Tong cac chu so cua n la: ‘,s);
readln
end.
Câu 35: Viết chương trình tính tổng 20 số tự nhiên đầu tiên
Lời giải:
uses crt;
var i,t:integer;
begin
clrscr;
t:=0;
for i:=1 to 20 do
t:=t+i;
writeln(t);
readln;
end.
Câu 36: Viết chương trình tính tổng các số chia hết cho 2 của một mảng số được nhập từ bàn phím.
Lời giải:
uses crt;
var a:array[1..100]of integer;
n,i,t:integer;
begin
clrscr;
write(‘Nhap n=’); readln(n);
for i:=1 to n do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
writeln(‘Tong cac so chan la: ‘,t);
readln;
end.
Câu 37: Viết chương trình in ra các số hoàn thiện khoảng từ M đến N
Lời giải:
Câu 38: Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin nào dưới đây?
A. Thông tin về Trái Đất
B. Từ điện trực tuyến để trả cứu
C. Lời giải của mọi bài toán
D. Chương trình kể chuyện lớp 3
Lời giải:
Đáp án đúng là: C
Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin về lời giải của mọi bài toán. Bởi vì sẽ có những bài toán không tìm thấy trên Internet.
Câu 39: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả A, B, C đều sai
Lời giải:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là For..do, câu Readln (A[i]) là nhập dữ liệu từ bàn phím cho từng phần tử.
Đáp án: A
Câu 40: Viết chương trình pascal nhập vào 30 phần tử số thực và in ra 1 cột số lớn hơn hoặc bằng 5 và tính tổng dãy số đó
Lời giải:
uses crt;
var a:array[1..30]of real;
i:integer;
t:real;
begin
clrscr;
for i:=1 to 30 do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
writeln(‘Cac so lon hon 5 trong day la: ‘);
t:=0;
for i:=1 to 30 do
if a[i]>5 then
begin
write(a[i]:4:2,’ ‘);
t:=t+a[i];
end;
writeln;
writeln(‘Tong cac so lon hon 5 trong day la: ‘,t:4:2);
readln;
end.
Câu 41: Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
Lời giải:
uses crt;
var a:array[1..100]of integer;
n,i,t:integer;
begin
clrscr;
write(‘Nhap n=’); readln(n);
for i:=1 to n do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
writeln(‘Tong cac so chan la: ‘,t);
readln;
end.
Câu 37: Viết chương trình in ra các số hoàn thiện khoảng từ M đến N
Lời giải:
Câu 38: Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin nào dưới đây?
A. Thông tin về Trái Đất
B. Từ điện trực tuyến để trả cứu
C. Lời giải của mọi bài toán
D. Chương trình kể chuyện lớp 3
Lời giải:
Đáp án đúng là: C
Khi truy cập Internet, chúng ta không thể tìm kiếm thông tin về lời giải của mọi bài toán. Bởi vì sẽ có những bài toán không tìm thấy trên Internet.
Câu 39: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả A, B, C đều sai
Lời giải:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh lặp với số lần biết trước là For..do, câu Readln (A[i]) là nhập dữ liệu từ bàn phím cho từng phần tử.
Đáp án: A
Câu 40: Viết chương trình pascal nhập vào 30 phần tử số thực và in ra 1 cột số lớn hơn hoặc bằng 5 và tính tổng dãy số đó
Lời giải:
uses crt;
var a:array[1..30]of real;
i:integer;
t:real;
begin
clrscr;
for i:=1 to 30 do
begin
write(‘A[‘,i,’]=’); readln(a[i]);
end;
writeln(‘Cac so lon hon 5 trong day la: ‘);
t:=0;
for i:=1 to 30 do
if a[i]>5 then
begin
write(a[i]:4:2,’ ‘);
t:=t+a[i];
end;
writeln;
writeln(‘Tong cac so lon hon 5 trong day la: ‘,t:4:2);
readln;
end.
Câu 41: Các chữ số từ 0 đến 9, nếu một chữ số bất kỳ có một đường khép kín thì ta gọi chữ số đó có 1 lỗ hổng, có hai đường khép kín thì ta gọi số đó có 2 lỗ hổng, và không có đường khép kín nào thì ta gọi chữ số đó có 0 lỗ hổng. Vậy các chữ số 0, 4, 6, 9 có 1 lỗ hổng, chữ số 8 có 2 lỗ hổng và các chữ số 1, 2, 3, 5, 7 có 0 lỗ hổng.
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
Cho một số nguyên dương N (1 ≤ N ≤2147483647), ta luôn đếm được số lỗ hổng của các chữ số xuất hiện trong nó.
Ví dụ: Với N = 388247 thì ta đếm được N có 5 lỗ hổng.
Lời giải:
const
fi=’lohongcs.inp’;
fo=’lohongcs.out’;
var
f:text;
i,s:integer;
n:longint;
a:array[0..9] of byte;
begin
assign(f,fi);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,a[i]);
a[8]:=2;
a[0]:=1; a[4]:=1; a[6]:=1; a[9]:=1;
a[1]:=0; a[2]:=0; a[3]:=0; a[5]:=0; a[7]:=0;
close(F);
assign(f,fo);
rewrite(F);
s:=0;
repeat
i:=n mod 10;
s:=s+a[i];
n :=n div 10 ;
until n=0;
write(f,s);
close(F);
end.
Câu 42: Viết câu lệnh khai báo biến mảng a gồm 20 phần tử, mỗi phần tử có kiểu dữ liệu số nguyên.
Lời giải:
Câu lệnh khai báo: Var a:array[1..20] of integer;
Giải thích:
→Tên mảng: a
→Số phần tử: [1..20]
→Kiểu dữ liệu số nguyên: integer
Cấu trúc: Var <tên biến mảng>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;
Câu 43: Viết thủ tục vẽ 5 hình vuông lồng nhau có cạnh bằng 100 bước Rùa.
Lời giải:
REPEAT 5 [REPEAT 4 [FD 100 RT 90 WAIT 10] RT 360/6]
Câu 44: Viết chương trình nhập vào một xâu cho biết xâu đó có bao nhiêu kí tự không phải là dấu cách
Lời giải:
program khong_phai_cach;
uses crt;
var s:string;
i,d:byte;
begin
clrscr;
write(‘Nhap xau: ‘); readln(s);
d:=0;
for i:=1 to n do
if s[i]<>’ ‘ then d:=d+1;
write(‘Co ‘,d,’ ki tu khong phai dau cach’);
readln;
end.
Câu 45: Viết chương trình tìm ước chung lớn nhất của 2 số a và b ( a,b là các số nhập từ bàn phím)
Lời giải:
Program UCLN;
uses crt;
var a,b : integer;
begin
write (‘nhap so a la’);readln (a);
write (‘nhap so b la’);readln (b);
while a < > b do
if a > b then a:= a – b else b := b – a;
write (‘UCLN la:’,a);
readln
end.
Câu 46: div là gì và mod là gì. Lấy ví dụ
Lời giải:
– Div là chia lấy phần nguyên.
VD:
5 div 4 = 1
8 div 3 = 2
15 div 8 = 1
…
– mod là chia lấy phần dư.
VD:
5 mod 2 = 1
9 mod 6 = 3
23 mod 5 = 3
…
Câu 47: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 48: Hãy cho biết lệnh Orientation trong nhóm lệnh Page Setup của dải lệnh Page Layoutdùng để làm gì?
a.Chia cột đoạn văn bản
b.Ngắt trang văn bản
c.Đặt lề trang
d.Chọn hướng trang
Lời giải:
Đáp án đúng: c
Câu 49:Viết chương trình tính tổng các số chẵn trong dãy số nguyên được nhập từ bàn phím gồm n phần tử
Lời giải:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write(‘n=’); readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then t:=t+a[i];
write(t);
readln;
end.
Câu 50: Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh
a) Em cho biết cú pháp câu lệnh lặp For…do và hoạt động của câu lệnh lặp?
b) Nêu cú pháp của câu lệnh lặp với số lần chưa biết trước?
c) Vẽ sơ đồ khối và trình bày các bước hoạt động của câu lệnh lặp với số lần chưa biết trước While…do?
Lời giải:
a) – Cú pháp For:
For <biến điếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>
-Hoạt động: câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu+1. Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm 1 đơn vị cho đến khi bằng giá trị cuối.
b) – Cú pháp lệnh lặp với số lần chưa biết trước:
While <điều kiện> do <câu lệnh>; trong đó:
+ Điều kiện: thường là 1 phép so sánh
+ Câu lệnh: có thể là câu lệnh đơn giản hay câu lệnh ghép.
c) Sơ đồ:
Cảm ơn bạn đã theo dõi bài viết tại Giải Bài Tập. Mời các bạn cùng xem các nội dung giải trí học tập và các kiến thức thú vị khác tại đây.