Lập chương trình thực hiện yêu cầu sau: Viết chương trình cho phép nhập từ bàn phím số nguyên dương a và thực hiện: a.. Cho biết a là số có mấy chữ số.. Cho biết tổng các chữ số của a..
Trang 1PHÒNG GD&ĐT
Năm học: 2018 - 2019 Môn: Tin học lớp 9
Thời gian 150 phút không kể thời gian giao đề
Hướng dẫn chấm trên máy tính.
Chấm theo bộ Test thử, đúng test nào giám khảo cho điểm test đó.
Phần 1: Lập trình giải các bài toán sau
Câu 1 (6,0 điểm) Lập chương trình thực hiện yêu cầu sau:
Viết chương trình cho phép nhập từ bàn phím số nguyên dương a và thực hiện:
a Cho biết a là số có mấy chữ số.
b Cho biết tổng các chữ số của a.
c Ta gọi số “đối xứng” với a là số nguyên dương thu được từ a bằng cách đảo ngược thứ tự các chữ số của a Viết chương trình in ra số đối xứng của số nguyên dương a.
d Cho a và b là 2 số nguyên dương Ta gọi tổng đối xứng của a và b là số đối xứng với tổng của số đối xứng với a và số đối xứng với b Viết chương trình cho phép nhập hai số nguyên dương a, b và in ra tổng đối xứng của chúng.
Khai báo
Program Cau1abcd;
Var M: array[1 20] of integer;
n,i,j,tam:integer;
xh,chinh:integer;
ok: boolean;
0.5
Nhập dãy
số
Begin Write('Nhap n: ');Readln(n);
For i:= 1 to n do Begin
Write('M[',i,']='); Readln(M[i]);
End;
0.5
Sắp xếp
dãy số
For i:=1 to n-1 do For j:=i+1 to n do
if M[j]> M[i] then Begin
Tam:=M[i];
M[i]:=M[j];
M[j]:=Tam;
End;
1.5
In dãy số
đã sắp
xếp
Write('Day so sau khi sap xep: ');
For i:=1 to n do Write(M[i],';'); 0.5
Phần tử
có giá
trị tuyệt
đối lớn
nhất
Writeln;
Write('Phan tu co gia tri tuyet doi lon nhat:');
if abs(M[1])>abs(M[n]) then write(M[1]) else write(M[n]);
0.5
In các
phần tử
là số
chính
phương
Writeln;
Write('Cac phan tu la so chinh phuong: ');
For i:=1 to n do
if M[i]>=0 then
if sqr(trunc(sqrt(M[i]))) = M[i] then write(M[i],';');
1.0
Trang 2Tìm và in
ra phần
tử chính
của dãy
Writeln;
ok:=false;
For i:= 1 to n do Begin
xh:=0;
For j:=1 to n do if M[i]=M[j] then xh:=xh+1;
if xh >= n div 2 then Begin chinh:=M[i]; ok:=true end;
End;
if ok then write('Phan tu chinh la: ',chinh) else Write('Khong co phan tu chinh');
Readln;
End
1.5
Câu 2 (6,0 điểm).
Viết chương trình cho phép rút gọn một phân số
Yêu cầu:
- Dữ liệu vào: Tử số và mẫu số của phân số cần rút gọn.
- Dữ liệu xuất: Rút gọn và xuất kết quả dạng c/d Với c/d là phân số sau khi rút gọn.
Ví dụ: Nhập tử: 6 - Nhập mẫu: 8 Kết quả xuất: “6/8 = 3/4 ”
Nhập tử: 10 - Nhập mẫu: 5 Kết quả xuất: “10/5 = 2 ”
Nhập tử: 10 - Nhập mẫu: 0 Kết quả xuất: “Khong phai phan so ”
Program Rut_Gon_Phan_So;
uses crt;
var Tu,Mau: Integer;
‘Nhập phân số:’
Begin
clrscr;
Write('Nhap tu so: ');readln(Tu);
Write('Nhap mau so: '); readln(Mau);
0.5
if Mau = 0 then writeln(‘Khong phai phan so’)
else
Begin
write(Tu,’/’,Mau);
0,5
‘Tìm UCLN của tử và mẫu:’
a:= Tu;
b:= Mau;
r:= a mod b;
0,5
while r <> do
Begin
a:=b;
b:=r;
r:= a mod b;
end;
2,0
‘Thực hiện rút gon:’
Tu:=Tu div UCLN;
Trang 3‘In phân số sau khi rút gọn:’
if Mau <> 1 then
write('=',tu,’/’,mau)
else write(Tu);
end;
readln;
End
0.5
Bộ Test thư
Nhập tử: 6 - Nhập mẫu: 8 Kết quả xuất: “6/8 = 3/4 ”
Nhập tử: 10 - Nhập mẫu: 5 Kết quả xuất: “10/5 = 2 ”
Nhập tử: 10 - Nhập mẫu: 0 Kết quả xuất: “Khong phai phan so ”
Trang 4Phần 2: Tin học ứng dụng (8,0 điểm)
1
(2,5đ)
Phần
Lịch Sử
2
(4đ)
Chấm
trên máy
Nhập và định dạng dữ liệu Đánh số thứ tự cho
- Nếu (Phụ cấp chức vụ + Lương)*2/3 < 25000 thì Tạm ứng = (Phụ cấp chức vụ + Lương)*2/3 1,5 Còn lại = Phụ cấp chức vụ + Lương - Tạm ứng 1,0
3
(1,5đ)
Tạo đúng
bài trình
chiếu
Tạo màu
nền, màu
chữ, kiểu
chữ
(Tổng điểm toàn bài là 20 điểm)
* Lưu ý: Học sinh có nhiều cách giải khác nhau, nếu đúng giám khảo cho điểm
tương ứng của phần đó.