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

Tài liệu và lời giải luyện thi HSG tin 11

4 242 3

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 69,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

Bài tập luyện thi olympic tin học 11cấp trường Giáo viên: Bùi Văn TháiBài 1 Tìm các số nguyên dương nhỏ nhơn m m>1 và nguyên tố cùng với m.Hai số a, b là nguyên tố cùng nhau nếu UCLNa,b

Trang 1

Bài tập luyện thi olympic tin học 11cấp trường Giáo viên: Bùi Văn Thái

Bài 1 Tìm các số nguyên dương nhỏ nhơn m (m>1) và nguyên tố cùng với m.Hai số a, b là

nguyên tố cùng nhau nếu UCLN(a,b)=1 Khi đó ta nói a nguyên tố cùng với b.

Vi du m=8 là 1 3 5 7 hoặc m=14 là 1 3 5 11 13

Bài 2 Tìm tất cả các các số hoàn chỉnh nhỏ hơn một số n cho trước Số hoàn chỉnh là số bẳng

tổng các ước thật sự của nó.(ví dụ 6 có các ước thực sự là 1, 2, 3).

Bài 3 Xét hai số nguyên dương x, y bất kỳ có phải là cặp số bạn bè hay không.( x bạn bè với y

khi tổng các ước thật sự của x = y và ngược lại).

Bài 4 Tìm các số nguyên tố nhỏ hơn số nguyên dương n cho trước.

Bài 5 Tìm các cắp số nguyên tố sinh đôi nhỏ hơn số nguyên dương N ( nếu k là sô nguyên tố và

k+2 cũng là nguyên tố thì k với k+2 là cặp số nguyên tố sinh đôi)

Bài 6 Viết ra dãy số Fibonacci có số lớn nhất không vượt quá một số k cho trước.

Hướng dẫn

Bước 1: a=1, b=1 viết ra a.

Bước 2: Nếu b > k thì kết thuc.

Nếu b <= k thì viết ra b.

Bước 3: c  a+b

a  b;

b  c

quay lại bước 2.

Bai 7.Cho một số tự nhiên N (N ≤ 150)

a) N có bao nhiêu chữ số.

b) Tính tổng các chữ số của n.

c) Tìm chữ số đầu, cuối của n.

(ví dụ N=142, có 3 chữ số, tổng các chữ số 7, số đầu là 1 số cuối 2)

Bài 8 Cho số n nguyên dương(n nhập từ bàn phím) Viết chương trình in ra màn hình các số

chính phương <= n.

Bài 9 Cho số n nguyên dương(n nhập từ bàn phím) Viết chương trình phân tích n ra các thừa số

nguyên tố.

Bai 10 Cho ma trận vuông n.Ma trận A được gọi là ma phương nếu tổng mỗi hàng, tổng mỗi cột,

tổng mỗi đường chéo (gồm đường chéo chình và đường chéo phụ) đều bằng nhau.

Bai 11 Cho dãy sô nguyên a1, a2,…an nguyên, các giá trị a1, a2,…an được tạo ngẫu nhiên và

không lớn hơn 100 Hãy sắp xếp các phân tử chẵn lên đầu dãy, lẻ xuống cuối dãy.

Bai 12 Cho dãy số nguyên a1, a2,…an nguyên, các giá trị a1, a2,…an được tạo ngẫu nhiên và

không lớn hơn 100 Hãy xoá các phần tử của dãy lớn 50.

Bai 13 Cho dãy số nguyên a1, a2,…an nguyên, các giá trị a1, a2,…an được tạo ngẫu nhiên và

không lớn hơn 100 Cho số k(k nhập từ bàn phím).Hãy sắp xếp dãy số đã cho theo chiều giảm dần và chèn k vào đúng thứ tự mà không phải xếp lại dãy.

Bai 14 Cho ma trận gồm m dòng, n cột, giá trị của các phân tử được sinh ngẫu nhiên là số 0 hoặc

1.Hãy in ra màn hình tam giác trên và tam giác dưới của ma trận trên.(tam giác dưới là các phần

tử nằm bên dưới đường chéo chính, còn lại là tam giác trên).

Trang 2

Bài tập luyện thi olympic tin học 11cấp trường Giáo viên: Bùi Văn Thái

Bai 15 Vẽ hình thoi gồm n(nếu n >0 và n lẻ nhập từ bàn phím) dòng bằng các dấu * ra màn hình.

Bài 16 Cho xâu s (nhập từ bàn phím) là họ tên của một người bất kỳ Viết chương trình xoá tất cả các dấu cách ở đầu và cuối xâu Khoảng cách giữa các từ chỉ duy nhất một dấu cách.

Vd: TRAN NGOC SON hoặc: tran ngoc son đều phải đưa về dạng: Tran Ngoc Son.

Bai 17 cho xâu s (nhập từ bàn phím) là họ tên của một người bất kỳ Viết chương trình lấy ra phân tên ra một xâu và họ đệm một xâu: Vd: Le Thi Thao Van Thành Le Thi Thao và Van.

uses crt;

var x,y,i,j,n:byte;

begin

clrscr; x:=40;y:=2;

write('nhap n=');readln(n);

for i:=1 to n div 2 do

begin

gotoxy(x,y); x:=x-1;y:=y+1;

for j:=1 to i do

write('*',' ');

writeln;

end;

for i:=1 to n-n div 2 do

begin

gotoxy(x,y); x:=x+1;y:=y+1;

for j:=n-n div 2 downto i do

write('*',' ');

writeln;

end;

readln

end

uses crt;

var i,n:byte;

begin clrscr;

write('nhap n=');readln(n);

i:=1;

while n >1 do begin

inc(i);

while (n mod i) =0 do

begin write(i,'.');

n:=n div i;

end;

end;

readln end

uses crt;

var n,x,y,dem,tong,d,c:integer;

begin

clrscr;

write('nhap n=');readln(n);

while (n < 0) or (n>255) do

begin

write('nhap lai n='); readln(n);

end;

x:=n; tong:=0; dem:=0;

while x > 0 do

begin

c:=n mod 10;

y:=x mod 10;

x:=x div 10;

if y < 10 then d:=y;

tong:=y+tong;

dem:=dem+1;

end;

writeln('tong cac chu so la:',tong);

writeln('so chu so cua n la:',dem);

writeln('so dau cua n la:',d);

writeln('so cuoi cua n la:',c);

readln

end

uses crt;

var b:array[1 100,1 100] of byte;

i,j,m,n:byte;

begin clrscr;

randomize;

write('nhap n=');readln(n);

for i:=1 to n do for j:=1 to n do

b[i,j]:=random(2);

writeln('tam giac tren:');

for i:=1 to n do begin

for j:=i to n do begin

gotoxy(6*(1+j),3+i);

write(b[i,j]);

end;

writeln;

end;

writeln('tam giac duoi:');

for i:=2 to n do begin

for j:=1 to i-1 do write(b[i,j]:4);

writeln;

end;

writeln('ma tran day du:');

Trang 3

Bài tập luyện thi olympic tin học 11cấp trường Giáo viên: Bùi Văn Thái

for i:=1 to n do begin

for j:=1 to n do write(b[i,j]:4);

writeln;

end;

readln end

uses crt;

var c,a,b,k:integer;

begin

clrscr;

a:=1;b:=1;

write('nhap k=');readln(k);

writeln(a);

while b <k do

begin

c:=a+b;

a:=b;

b:=c;

if a< k then writeln(a);

end;

readln

end

uses crt;

var a:array[1 50] of integer;

i,d,n:byte;

begin clrscr;

write('nhap n=');readln(n);

d:=0;

for i:=1 to n do begin

write('a[',i,']=');

readln(a[i]);

end;

for i:=1 to n do begin

write(a[i]:5);

if a[i] >5 then begin

d:=d+1;

a[d]:=a[i];

end;

end;

writeln;

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

readln end

var s:string;

i,l:byte;

begin

clrscr;

write('nhap ho ten:');readln(s);

l:=length(s);

while s[1] = ' ' do delete(s,1,1); {xoa

cac dau cach dau xau}

while s[l]=' ' do

begin

delete(s,l,1); {xoa dau cach o cuoi

xau}

l:=l-1;

end;

i:=1;

while i< l do

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

delete(s,i,1) {xoa hai dau cach lien

tiep}

else i:=i+1;

{chuyen xau ve ki tu thuong}

for i:=1 to l do

if s[i] in ['A' 'Z'] then s[i]:=

chr(ord(s[i])+32);

{chuyen cac chu cai dau moi tu thanh hoa}

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

for i:=2 to l do

if s[i]=' ' then s[i+1]:=upcase(s[i+1]);

write('xau sau khi chuan hoa:',s);

readln

uses crt;

var s,HD,Ten:string;

vt,i,l:byte;

begin clrscr;

write('nhap ho ten:');readln(s);

l:=length(s);

i:=l;

while s[i] <> ' ' do i:=i-1;

vt:=i;

Ten:=copy(s,vt,l-vt+1);

HD:=copy(s,1,vt-1);

writeln(hd);

write(ten);

readln end

Trang 4

Bài tập luyện thi olympic tin học 11cấp trường Giáo viên: Bùi Văn Thái

end

uses crt;

var n,s,j,i,k:integer;

begin

clrscr;

write('nhap n=');readln(n);

for i:=2 to n do

begin

s:=1;

for j:=2 to i div 2 do

if i mod j =0 then s:=s+j;

if s=i then writeln(s);

end;

readln

end

uses crt;

var i,x,y,s1,s2:integer;

begin clrscr;

writeln('nhap x=');readln(x);

write('nhap y=') ;readln(y);

s1:=1;

for i:=2 to x div 2 do

if x mod i = 0 then s1:=s1+i;

s2:=1;

for i:=2 to y div 2 do

if y mod i =0 then s2:=s2+i;

if (x=s2) and (y=s1) then write(x,' va ',y,' la cap so ban be') else write(‘khong la so ban be’);

readln end

Ngày đăng: 01/05/2015, 14:00

TỪ KHÓA LIÊN QUAN

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

w