1. Trang chủ
  2. » Giáo án - Bài giảng

TỔNG HỢP ĐỀ THI HỌC SINH GIỎI TIN HỌC KHÔNG CHUYÊN CÓ ĐÁP ÁN

23 588 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 225,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đặt tên các bài làm và tên tệp dữ liệu theo quy định trong bảng sau: Stt Bài Quy định đặt tên tệp 1 Bài 1 Bai1.Pas Nhập từ bàn phím Xuất ra màn hình 2 Bài 2 Bai2.Pas Nhập từ bàn phím Xuấ

Trang 1

HỘI THI TIN HỌC TRẺ KC ĐỀ THI PHẦN THỰC HÀNH

Thời gian làm bài: 120 phút

Ngày thi: 30-03-2012

YÊU CẦU CHUNG:

- Nếu thí sinh không sử dụng tệp dữ liệu vào ra, có thể nhập dữ liệu từ bànphím và xuất kết quả ra màn hình

- Tạo thư mục với tên theo quy định C2_SBD trong ổ D:\ (trong đó SBD là sốbáo danh của thí sinh) Các bài làm của thí sinh phải lưu trong thư mục này

- Sử dụng ngôn ngữ lập trình Turbo Pascal hoặc Free Pascal để viết chươngtrình Đặt tên các bài làm và tên tệp dữ liệu theo quy định trong bảng sau:

Stt Bài Quy định đặt tên tệp

1 Bài 1 Bai1.Pas Nhập từ bàn phím Xuất ra màn hình

2 Bài 2 Bai2.Pas Nhập từ bàn phím Xuất ra màn hình

3 Bài 3 Bai3.Pas Nhập từ bàn phím Xuất ra màn hình

4 Bài 4 Bai4.Pas Nhập từ bàn phím Xuất ra màn hình

Số chính phương là một số nguyên có căn bậc hai là một số nguyên (ví dụ: 9 là

số chính phương vì 9=3) Viết chương trình tìm, đếm và tính tổng các số chínhphương có trong dãy số nguyên dương gồm N phần tử A1, A2, …, AN

Dữ liệu vào: Nhập từ bàn phím

Kết quả ra: Xuất ra màn hình gồm 3 dòng:

- Dòng 1 ghi các số chính phương của dãy giữ nguyên thứ tự xuất hiện (mỗi sốcách nhau một dấu cách)

- Dòng 2 ghi số lượng số chính phương trong dãy

- Dòng 3 ghi tổng của các số chính phương trong dãy

165

Bài 3: (20 điểm)

Viết chương trình phân tích một số nguyên dương ra thừa số nguyên tố

Trang 2

Dữ liệu vào: Nhập từ bàn phím số nguyên dương N

Kết quả ra: Xuất ra màn hình

Ví dụ:

Nhập từ bàn phím Xuất ra màn hình

50│2 25│5 5│5 1│

Bài 4: (20 điểm) TỔNG CÁC SỐ FIBONACI

Dãy Fibonaci là dãy gồm các số: 1, 1, 2, 3, 5, 8, được xác định bởi côngthức sau:

F1=1, F2=1, Fi=Fi-1+Fi-2 với i>2

Em hãy biểu diễn một số tự nhiên N thành tổng của ít nhất các số Fibonacikhác nhau

Trang 3

WRITELN(CHUONG TRINH TINH TONG S=1+1.2+1.2.3+ +1.2.3 N LA');

WRITE(‘NHAP VAO MOT SO: ‘);READLN(N);

Số chính phương là một số nguyên có căn bậc hai là một số nguyên (ví dụ: 9 là

số chính phương vì 9=3) Viết chương trình tìm, đếm và tính tổng các số chínhphương có trong dãy số nguyên dương gồm N phần tử A1, A2, …, AN

Dữ liệu vào: Nhập từ bàn phím

Kết quả ra: Xuất ra màn hình gồm 3 dòng:

- Dòng 1 ghi các số chính phương của dãy giữ nguyên thứ tự xuất hiện (mỗi sốcách nhau một dấu cách)

- Dòng 2 ghi số lượng số chính phương trong dãy

- Dòng 3 ghi tổng của các số chính phương trong dãy

165program So_Chinh_Phuong;

uses crt;

var n,i,j,dem,tong,tam:integer;

a:array[1 100] of integer;

Trang 4

Viết chương trình phân tích một số nguyên dương ra thừa số nguyên tố.

Dữ liệu vào: Nhập từ bàn phím số nguyên dương N

Kết quả ra: Xuất ra màn hình

Ví dụ:

Nhập từ bàn phím Xuất ra màn hình

50│2 25│5 5│5 1│

Trang 5

Bài 4: (20 điểm) TỔNG CÁC SỐ FIBONACI

Dãy Fibonaci là dãy gồm các số: 1, 1, 2, 3, 5, 8, được xác định bởi côngthức sau:

F1=1, F2=1, Fi=Fi-1+Fi-2 với i>2

Em hãy biểu diễn một số tự nhiên N thành tổng của ít nhất các số Fibonacikhác nhau

write(‘NHAP VAO MOT SO: ’);READLN(N);

for i:=1 to 1000 do a[i]:=-1;

Trang 7

( thi có 02 trang, g m 3 b i) Đề ồ a Th i gian : ờ 150 phút (không k th i gian giao ) ể ờ đề

Ng y thi : à 18/2/2011

C u truc thi: â đê

STT Tên b i a Tên file b i l m a a Tên file INPUT Tên file OUTPUT

K t qu ra:ế ả Xu t ra m n hình g m các dòngấ à ồ

- Dòng 1 ghi các s nguyên t c a dãy gi nguyên th t xu t hi n (m i số ố ủ ữ ứ ự ấ ệ ỗ ốcách nhau m t d u cách).ộ ấ

- Dòng 2 ghi s l ng s nguyên t trong dãy.ố ượ ố ố

- Dòng 3 ghi t ng c a các s nguyên t trong dãy.ổ ủ ố ố

Trang 8

WRITE('NHAP VAO SO A = ');READLN(A);

WRITE('NHAP VAO SO B = ');READLN(B);

IF (A<>0) THEN

BEGIN

IF (A>0) THEN WRITELN('PT CO NGHIEM LA X >= ',-B/A:2:2)

ELSE WRITELN('PT CO NGHIEM LA X < ',-B/A:2:2);

END

ELSE

BEGIN

Trang 9

IF (B>=0) THEN WRITELN('PT CO VO SO NGHIEM') ELSE WRITELN('PT VO NGHIEM');

for i:=2 to trunc(sqrt(k)) do

if k mod i = 0 then exit;

Trang 10

for i:=2 to length(st) do

if st[i]=s[1] then s:=s+st[i]

if length (s)=1 then write(s)

else write (length(s),s[1]);

Write(‘Cho biet so cot: ‘);readln(n);

Write(‘Cho biet so dong: ‘);readln(m);

For i:=1 to n do

For j:=1 to m do

BEGIN

Write(‘a[‘,I,’]: ‘);Readln(A[i,j]); END;

Trang 11

C u truc thi: â đê

STT Tên b i a Tên file b i l m a a Tên file INPUT Tên file OUTPUT

Vi t ch ng trình ki m tra xem m t m ng s nguyên cho tr c có l p th nh ế ươ ể ộ ả ố ướ ậ à

m t c p s c ng hay không ? N u có cho bi t công sai.ộ ấ ố ộ ế ế

Trang 12

D li u v o:ữ ệ à Nh p t b n phím: ậ ừ à

+ Dòng u ghi s nguyên d ng N (N<=10000), đầ ố ươ

+ Dòng ti p theo ghi N s nguyên d ng (m i s cách nhau m t d u cách).ế ố ươ ỗ ố ộ ấ

5 11 9 15 13 7 17 LA CAP SO CONGCONG SAI 2

Vi t ch ng trình nh p v o m t chu i g m các ký t ‘a z’ v ‘A Z’ v ế ươ ậ à ộ ỗ ồ ự à à

‘0 9’ nh p liên t c không có kho ng tr ng v xen k nhau gi a các s v ch có ậ ụ ả ắ à ẻ ữ ố à ữ

d i L (4 ký t <L<40 ký t ) Sau ó tính t ng các ch s có trong chu i ó

Trang 13

-H t -ế

B I GI I À Ả Bài 1:

Trang 16

clrscr;

write('Nhap chuoi: ');readln(s);

writeln('Cac so co trong chuoi vua nhap la:');

C u truc thi: â đê

STT Tên b i a Tên file b i l m a a Tên file INPUT Tên file OUTPUT

Cho mảng 2 chiều A có kích thước MxN số nguyên Phần tử A[i,j] được gọi là phần

tử yên ngựa nếu nó là phần tử nhỏ nhất trong hàng i đồng thời là phần tử lớn nhất trong cột j.

Em hãy l p ch ng trình tìm ph n t yên ng a c a m ng A ậ ươ ầ ử ự ủ ả

Dữ liệu vào: Nhập từ bàn phím gồm:

- Dòng đầu tiên gồm 2 số M, N (0 ≤ M,N ≤100)

- M dòng tiếp theo, mỗi dòng gồm có N số nguyên của mảng A

(các giá trị cách nhau ít nhất 1 khoảng cách).

Dữ liệu ra: Xuất ra màn hình vị trí của các phần tử yên ngựa (nếu có) hoặc dòng

thông báo “Không có phần tử yên ngựa”.

Ví dụ:

Nhập từ bàn phím Xuất ra màn hình

3 3

Trang 17

Em hãy vi t ch ng trình tìm các s siêu nguyên t có N ch s (0 < N <10) v s ế ươ ố ố ữ ố à ố

l ng các s tìm ượ ố đượ c.

D li u v o ư ê a : cho trong File SIEUNT.INP ch a s N.ứ ố

K t qu ê a: ghi ra file SIEUNT.OUT g m các dòng:

- Dòng 1: s l ng các s siêu nguyên t có N ch s ố ượ ố ố ữ ố

- Dòng ti p theo li t kê các s siêu nguyên t tìm ế ệ ố ố đượ c.

-H T - Ế

H v tên thí sinh: ọ à S báo danh: ố Giám th 1: ị Ký tên: Giám th 2: ị Ký tên:

Trang 18

CHƯƠNG TRÌNH MẪU BÀI 1:

Write(‘Cho biet so cot: ‘);readln(n);

Write(‘Cho biet so dong: ‘);readln(m);

for i := 1 to n do Min[i] := MaxLongInt;

for j := 1 to m do Max[j] := -MaxLongInt;

for i := 1 to n do

begin

for j := 1 to m do

begin

if Min[i] > a[i,j] then Min[i] := a[i,j];

if Max[j] < a[i,j] then Max[j] := a[i,j];

Trang 19

Until (a>=m) and (b>=m);

if a<b then begin t:=a;a:=b;b:=t;end;

Repeat

a:=a-b;

b:=b-a;

Until ( (kt(a)) and (a<m)) or ( (kt(b)) and (b<m) );

If a>b then writeln(a);

if b>a then writeln(b);

Trang 21

Viết chương trình tìm tất cả các số nguyên tố nhỏ hơn hoặc bằng số n cho trước

(n<=1000000) Tìm số lượng các số nguyên tố tìm được trong khoảng từ 1 đến n.

Yêu cầu:

− Dòng thứ nhất gồm các số nguyên tố tìm được ngăn cách bởi dấu cách

− Dòng thứ 2 là số lượng các số nguyên tố tìm được ngăn cách bởi dấu cách

Trang 23

for i:=2 to trunc(sqrt(n)) do

if (n mod i=0) then exit;

Ngày đăng: 14/11/2016, 13:08

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w