Yêu cầu: Kiểm tra 3 số vừa nhập có là 3 cạnh của tam giác hay không.. Nếu là 3 cạnh của tam giác thì xem tam giác đó là tam giác vuông, tam giác có 3 góc nhọn hay là tam giác có 1 góc tù
Trang 1PHÒNG GD&ĐT
Năm học: 2014 -2015 Môn: Tin học
Thời gian 150 phút không kể thời gian giao đề
(Đề này gồm 03 câu, 02 trang)
Câu 1 (Tên file bài làm là cau1.pas)
Cho a, b, c là 3 số thực
Yêu cầu: Kiểm tra 3 số vừa nhập có là 3 cạnh của tam giác hay không.
Nếu là 3 cạnh của tam giác thì xem tam giác đó là tam giác vuông, tam giác có 3 góc nhọn hay là tam giác có 1 góc tù Tính diện tích và bán kính đường tròn tiếp xúc với ba cạnh của tam giác đó
Dữ liệu vào: Ba số thực a, b, c được nhập từ bàn phím
Dữ liệu ra: Ghi ra màn hình các thông tin sau:
- Nếu không là ba cạnh của tam giác thì ghi ra màn hình:
+ Dòng 1 ghi ra các số vừa nhập và thông báo "Khong la 3 canh cua tam giac" + Dòng 2 ghi ra số "0"
- Nếu là ba cạnh của tam giác thì ghi ra màn hình:
+ Dòng 1 ghi các số vừa nhập và thông báo rõ là ba cạnh của tam giác gì + Dòng 2 ghi ra diện tích tam giác có 3 cạnh là a, b, c và bán kính đường tròn tiếp xúc với ba cạnh của tam giác đó Hai giá trị cách nhau ít nhất 1 khoảng trắng
Ví dụ:
Dữ liệu vào Dữ liệu ra
3,00 4,00 5,00 3,00 4,00 5,00 la ba canh tam giac vuong
6,00 0,50
Câu 2 (Tên file bài làm là cau2.pas).
Cho 2 số tự nhiên a, b (3< a< b<109)
Yêu cầu: - Kiểm tra xem có bao nhiêu số nguyên tố nằm giữa 2 số tự
nhiên a và b
- Tìm tổng bình phương của các số nguyên tố giữa a và b và tích
của hai chữ số tận cùng của tổng vừa tìm được với số 30102014
- Tìm dạng tối giản của phân số a/b.
Dữ liệu vào: Hai số tự nhiên a và b thỏa mãn a<b được nhập từ bàn phím.
Dữ liệu ra: Ghi ra màn hình các thông tin sau:
- Nếu có số nguyên tố giữa a và b thì ghi kết quả như sau:
+ Dòng 1 ghi ra hai số: Số thứ nhất là số các số nguyên tố giữa hai số a và b; số thứ hai là tổng bình phương các số nguyên tố nằm giữa a và b; mỗi số cách
nhau ít nhất một khoảng trắng
+ Dòng 2 ghi ra tích của hai chữ số tận cùng của tổng vừa tìm được với
số 30102014,
+ Dòng 3 ghi ra dạng tối giản của phân số a/b.
ĐỀ CHÍNH THỨC
Chú ý: - Thí sinh phải đặt tên file bài làm theo đúng yêu cầu.
- Các chương trình viết trên TURBO PASCAL hoặc FREE PASCAL.
- Số thực làm tròn đến 2 chữ số sau phần thập phân.
010
Trang 2- Nếu không có số nguyên tố nào thì ghi kết quả như sau:
+ Dòng 1 ghi ra ra thông báo: “Không”
+ Dòng 2 ghi ra dạng tối giản của phân số a/b.
Ví dụ:
752550350 3/6 = 1/2
Câu 3 (Tên file bài làm là cau3.pas).
Cho dãy số thực a1, a2, … an (1<n<100, ai<109)
Yêu cầu: Hãy tính giá trị trung bình của dãy số trên; tìm phần tử có giá trị
gần với giá trị trung bình nhất và chỉ rõ đó là phần tử thứ mấy trong dãy(Tính từ trái sang phải)
Dữ liệu vào: Đọc từ file văn bản có tên là dayso.inp: dòng đầu ghi số
nguyên n, các dòng tiếp theo ghi giá trị các số thực a1, a2, … an
Dữ liệu ra: - Ghi ra file văn bản có tên là dayso.out, các giá trị nằm trên
cùng một dòng gồm: giá trị trung bình, phần tử có giá trị gần với giá trị trung bình và chỉ số của phần tử đó, mỗi số cách nhau ít nhất một khoảng trắng
Ví dụ:
5 15,00 -2,00 6,00 -9,00 4,00 2,80 4,00 5
-Hết -Họ và tên thí sinh: , SBD:
Trang 3YÊN KHÁNH Môn: Tin học
Năm học: 2014- 2015
(HD này gồm 03 câu, 02 trang)
Hướng dẫn chấm:
Giám khảo chấm lần lượt từng thí sinh Mỗi thí sinh chấm lần lượt từng bài Với mỗi bài chấm lần lượt từng test theo quy trình sau:
1 Sao chép bài làm của thí sinh từ đĩa bài thi vào ổ cứng
2 Sao chép test *.inp vào cùng thư mục với bài làm(đối với bài 3)
3 Chạy chương trình của thí sinh
4 Kiểm tra file *.out do chương trình sinh ra, nếu có , mở file đó, so sánh với đáp án và cho điểm
- Nếu chương trình của thí sinh không sinh được file *.out thì không cho điểm
- Nếu chương trình treo hoặc chạy quá lâu(20 giây), giám khảo thực hiện CTRL+BREAK để ngắt
5 Xóa sạch các file *.inp, *.out và quay lại bước 2 cho đến hết
6 Cộng, tính điểm cả bài
Biểu điểm:
Câu 1: (6 điểm)
1 3 4 5 3,00 4,00 5,00 la ba canh tam giac vuong
2 2 2 3 2,00 2,00 3,00 Khong la 3 canh cua tam giac
3 100,9 300 290 100,90 300,00 290,00 la ba canh tam giac nhon
4 -6 -9 -12 -6,00 -9,00 -12,00 khong la ba canh tam giac
5 123 134 141 123,00 134,00 141,00 la ba canh tam giac nhon
6 32 -2 27 32,00 2,00 27,00 Khong la 3 canh cua tam giac
Câu 2: (6 điểm)
6
1 25 752550350
10
2 74 2227549036
20000
2258 276734559026 782652364
29800
3226 880564038586 2588773204
010
Trang 4TT Dữ liệu nhập Kết quả Điểm
5 142857
857142 54887 2068651419992980099386
Câu 3: (8 điểm)
15 -2 6 -9 4
2 7
3 14 3 24 -1 15 18
(Tổng điểm toàn bài là 20 điểm)
Chương trình tham khảo:
Câu 1
uses crt;
var a,b,c:real;
S,Cv,p,r:real;
begin
read(a,b,c);
clrscr;
if (a+b<c) or (b+c<a) or (c+a<b) or
(a+b=c) or (b+c=a) or (c+a=b) or (a<0) or (b<0) or
(c<0)
then
begin
writeln(a:1:1,' , ',b:1:1,' , ',c:1:1,' ko la 3 canh cua tam giac ');
writeln(' 0 ');
end;
if (a+b>c) and (b+c>a) and (c+a>b) and (a>0) and (b>0) and (C>0)
then
begin
write(a:1:1,' , ',b:1:1,' , ',c:1:1);
Cv:=a+b+c;
p:=Cv/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
R:=s/Cv;
if (sqr(a)=(sqr(b)+sqr(c)))
or (sqr(b)=(sqr(c)+sqr(a)))
or (sqr(c)=(sqr(b)+sqr(a)))
Trang 5then
writeln(' la ba canh tam giac vuong ');
if (sqr(a)<(sqr(b)+sqr(c)))
and (sqr(b)<(sqr(c)+sqr(a)))
and (sqr(c)<(sqr(b)+sqr(a)))
then
writeln(' la ba canh tam giac nhon ');
if (sqr(a)>(sqr(b)+sqr(c)))
or (sqr(b)>(sqr(c)+sqr(a)))
or (sqr(c)>(sqr(b)+sqr(a)))
then
writeln(' la ba canh tam giac tu '); writeln(S:1:2,' ',r:1:2);
end;
readln;
readln
end.
Câu 2:
uses crt;
var a,b,r,d,m,n,BC:longint;
i,j,dem:integer;
kt:boolean; S:INT64;
begin
readln(a,b);
clrscr;
m:=a;n:=b;dem:=0; S:=0;
while b<>0 do
begin
r:=a mod b;
a:=b;
b:=r;
end;
d:=a;
for i:= m+1 to n-1 do
begin
if i>1 then kt:=true else kt:=false;
if i> 2 then for j:=2 to Trunc(sqrt(i)) do
if (i mod j =0)
then kt:=false;
if kt
then
begin
S:=S+sqr(i);
dem:=dem+1;
end;
end;
if s= 0 then writeln('khong')
else
begin
writeln(dem,' ', S);
writeln((s mod 100)*30102014);
end;
writeln(m,'/',n,'=',(m div d),'/',(n div d));
Trang 6readln;
end.
Câu 3:
uses crt;
Const fi= 'dayso.inp';
fo= 'dayso.out';
var a,b:array[1 100] of real;
imin,j,i,n,tt:Longint;
s,tb,min,c:real;
f,g:Text;
BEGIN
BEGIN
ASSign(f,fi);
RESET(F);
Read(f,n);
for i:= 1 to n do
read(f,a[i]);
Close(f);
ENd;
ASSIGN(g,fo);
REWRITE(g);
s:=0;
for i:= 1 to n do
begin
s:=S+ a[i];
end;
tb:=s/n;
begin
for j:= 1 to n do
b[j]:=abs(tb-a[j]);
min:=b[1];
for j:=1 to n do
if b[j]<min then
begin
min:=b[j];c:=a[j];
TT:=j;
end;
end;
writeln(g,tb:12:2,' ',c:2:2,' ',tt:2);
Close(g);
END.
Biểu điểm:
- Câu 1 và câu 2 mỗi câu có tổng điểm là 6 điểm; Câu 3 có tổng điểm là 8 điểm
- Nếu bài làm của học sinh không đọc được file thì có thể trừ tối đa 25% điểm toàn bài
- Bài điểm quá thấp có thể kiểm tra cú pháp, thuật toán để cho điểm nhưng không qua 50% điểm của mỗi bài