Tải bản đầy đủ (.doc) (3 trang)

De cho HSG Tin_Pascal

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (98.56 KB, 3 trang )

ĐỀ THI CHỌN HỌC SINH GIỎI TỈNH LỚP 9
NĂM HỌC 2009 - 2010
MÔN THI: TIN HỌC
Thời gian làm bài: 150 phút không kể thời gian phát đề
Đề thi này gồm 03 câu trong 01 trang
Lập trình để giải các bài toán sau đây bằng ngôn ngữ Pascal
Bài 1: (6 điểm)
a. Nhập một dãy số nguyên có n phần tử (0< n ≤ 100)
b. Sắp xếp dãy vừa nhập theo thứ tự tăng dần, in ra màn hình dãy đã sắp thứ tự
Bài 2: (6 điểm)
Nhập vào từ bàn phím ba số thực bất kỳ là độ dài ba cạnh của một tam giác tính
diện tích tam giác đó.
Bài 3: (8 điểm)
Cho số tự nhiên N. Lập chương trình tính:
a/ Số N có bao nhiêu chữ số.
b/ Tính tổng các chữ số của N.
HƯỚNG DẪN CHẤM THI HỌC SINH GIỎI TỈNH LỚP 9
NĂM HỌC 2009 - 2010
MÔN THI: TIN HỌC
Thời gian làm bài: 150 phút không kể thời gian phát đề
Hướng dẫn này gồm 05 câu trong 3 trang
Lưu ý chung: Học sinh có thể viết theo cách khác, chương trình chạy cho kết quả đúng,
cho điểm tối đa, ngược lại chấm theo hướng dẫn sau đây. Tùy theo mức độ sai, trừ điểm
hợp lý, tổng số điểm không quá 50% điểm tối đa.
Bài 1: (5 điểm)
- Nhập một dãy số nguyên: viết đúng cho 2 đ
- Sắp xếp dãy vừa nhập theo thứ tự tăng dần: viết đúng cho 4 đ
Bài 2: (6 điểm)
- Nhập vào 3 số thực kiểm tra xem đó có thoả mãn 3 cạn của một tam giác hay
không: viết đúng cho 4 đ
- Tính diện tích tam giác đó: viết đúng cho 2 đ


Bài 3: (8 điểm)
a/ Tìm số N có bao nhiêu chữ số: viết đúng cho 4 đ
b/ Tính tổng các chữ số của N.viết đúng cho 4 đ
Sau đây là các chương trình hoàn chỉnh để tham khảo thêm
****************************************************
Program bai1;
var a:array[1 100] of integer;
i,j,n,t,x,p,q:integer;
found:boolean;
Begin
{********a. Nhap**************}
Write('Nhap so phan tu cua day:');Readln(n);
For i:=1 to n do readln(a[i]);
{*********b. Sap xep, in day ra man hinh *************}
For i:=1 to n-1 do
For j:=1 to n-i do
if a[j]>a[j+1] then
begin
t:=a[j];
a[j]:=a[j+1];
a[j+1]:=t;
end;
For i:=1 to n do write(a[i],' ');
readln;
End.
Program bai2;
Var
a, b, c, p, s: real;
D : boolean;
Begin

Writeln (‘Nhap canh a cua tam giac : ‘); Readln (a);
Writeln (‘Nhap canh b cua tam giac : ‘); Readln (b);
Writeln (‘Nhap canh c cua tam giac : ‘); Readln (c);
p := (a +b+c)/2;
D:= ((a>0) and (b>0) and (c>0) ) and ((p > a) and (p > b) and (p > c));
If D then
Begin
s := sqrt(p*(p-a)*(p-b)*(p-c));
Writeln (‘Dien tich cua tam giac la S = : ‘, s : 20:2);
End
Else
Writeln (‘ a, b, c khong the la 3 canh cua tam giac‘);
Readln
END.
Program bai3;
Var
I, k , s: byte;
n : longint;
Begin
Write (‘Nhap n : ‘); Read (n);
k := 1; s := 0;
For i := 1 to 10 do
Begin
s := s + n mod 10;
n := n div 10;
If n <> 0 then k := k + 1;
End;
Writeln ( ‘N cos ‘, k: 2, ‘chu so’);
Writeln ( ‘Tong cac chu so cua N la: ’, s : 8);
Readln;

END.

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×