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

De thi hsg tin hoc cap huyen 0809-thuchanh so1

4 1,7K 40
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lập trình Pascal
Chuyên ngành Tin học
Thể loại Đề thi
Năm xuất bản 2008-2009
Định dạng
Số trang 4
Dung lượng 54,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

Câu 22đ: Viết chơng trình nhập số nguyên n có 9 chữ số.. Tính xem trong số nguyên đó chữ số a xuất hiện bao nhiêu lần với a là số nguyên có một chữ số đợc nhập từ bàn phím.

Trang 1

Đề thi olympic tin học cấp huyện lần thứ nhất

năm học 2008-2009

Môn : Lập trình pascal (Thời gian : 90 phút)

Câu 1(1,5đ):Viết chơng trình tính giá trị của biểu thức sau và in kết quả ra màn hình.

S =

Với a, x đợc nhập từ bàn phím

Câu 2(2đ): Viết chơng trình nhập số nguyên n có 9 chữ số Tính xem trong số

nguyên đó chữ số a xuất hiện bao nhiêu lần (với a là số nguyên có một chữ số đợc nhập từ bàn phím)

Ví dụ: Nhập: N = 13213411

a=1 Kết quả: Số 1 xuất hiện 4 lần

Câu 3(3,5đ): Cho mảng một chiều gồm n phần tử (n nhập từ bàn phím, n <=100) là số

nguyên Hãy viết chơng trình nhập giá trị cho các phần tử của mảng và :

a Tính tổng các phần tử là số nguyên tố của mảng

b Tìm phần tử lớn nhất của mảng

c Sắp xếp mảng theo chiều tăng dần

Câu 4(3): Cho trớc một xâu kí tự bất kì Xâu gồm các phần tử là chữ cái tiếng anh từ

'a' đến 'z' và dấu cách Viết chơng trình chuẩn hoá xâu(xâu chuẩn hoá là xâu không có dấu cách ở đầu và cuối xâu, giữa các từ cách nhau đúng một dấu cách)

Ví dụ: Cho xau= " nguyen tuan anh "

Kết quả in ra : "Nguyen Tuan Anh"

-Hết -Câu 1(1,5đ):

const PI=3.14;

var s:real;

a,x:integer;

begin

write('Nhap gia tri cho a=');readln(a);

write('Nhap gia tri cho x=');readln(x);

ea + sin2(x)-x

0,5đ

0,5đ

Trang 2

s:=exp(a+sin((x*PI)/180)*sin((x*PI)/180)-x);

writeln(s:4:2);

readln;

end

C©u 2(2®):

var n:longint;

k,a,i,j:byte;

begin

write('Nhap gia tri cho a=');readln(n);

write('Nhap gia tri cho x=');readln(a);

j:=0;

repeat

k:=n mod 10;

if k=a then j:=j+1;

n:=n div 10;

until n=0;

writeln('Chu so ',a,'xuat hien ',j,' lan');

readln;

end

C©u 3(3®):

program bt3;

var a:array[1 100] of integer;

kt,s,n,i,j,max,tg:integer;

begin

repeat

write('Nhap so phan tu cho mang n=');readln(n);

until (n>0) and (n<=100);

for i:=1 to n do

begin

write('Nhap gia tri cho phan tu a[',i,']=');

readln(a[i]);

end;

i:=1;

kt:=0;

0,5®

0,25®

0,25®

1,25®

0,25®

0,25®

0,25®

0,25® 1®

Trang 3

for i:=1 to n do

begin

for j:=2 to a[i] div 2 do

if a[i] mod j = 0 then kt:=kt+1;

if kt=0 then s:=s+a[i];

kt:=0;

end;

max:=a[1];

for i:=2 to n do

if a[i]>max then max:=a[i];

for i:=1 to n-1 do

for j:=i+1 to n do if a[i]>a[j] then

begin

tg:=a[i];

a[i]:=a[j];

a[j]:=tg;

end;

writeln('Tong cac phan tu duong cua mang s=',s);

writeln('Phan tu lon nhat cua mang la : ',max);

writeln('Mang sau khi sap xep la : ');

for i:=1 to n do write(a[i]);

readln;

end

C©u 4(3®):

var st:string;

l,i:integer;

begin

write('Nhap mot xau can chuan hoa: ');readln(st);

while st[1]=' 'do delete(st,1,1);

l:=length(st);

while st[l]=' 'do

begin

delete(st,l,1);

l:=length(st);

end;

l:=length(st);

i:=1;

repeat

if( st[i]=' ') and (st[i+1]=' ') then

0,5®

0,25®

0,25®

0,25®

0,5®

0,5® 0,75®

Trang 4

begin

delete(st,i,1);

i:=i-1;

l:=length(st);

end;

inc(i);

until i=l;

st[1]:=upcase(st[1]);

for i:=1 to l-1 do

if (st[i]=' ') and (st[i+1]<>' ') then st[i+1]:=upcase(st[i+1]);

writeln('xau sau khi da chuan hoa : ', st);

readln;

end

0,5®

0,25®

Ngày đăng: 14/10/2013, 06:11

TỪ KHÓA LIÊN QUAN

w