Microsoft Word DE THI OLYMPIC TIN HOC 11 NAM 2009 2010 doc SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học 2009 – 2010 Môn Tin học Thời gian 90 p[.]
SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học 2009 – 2010 Môn: Tin học Thời gian: 90 phút Ngày thi: 16-03-2010 Chú ý: Đề thi gồm có hai trang Đề 654 Phần trắc nghiệm: (8 điểm) 01 Trong ngơn ngữ lập trình Pascal, mặt cú pháp câu lệnh sau sai? A x:=12,7; B b:=(a=5)or(a=7); C c:=pi*12; D a:=3.12; 02 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? i:=pos(' ',st); {' ' dấu cách} while i0 Begin delete(st,i,1); i:=pos(' ',st); End; A Xóa dấu cách liền xuất xâu st B Xóa hai dấu cách liền xâu st C Xóa dấu cách liền cuối xâu st D Xóa dấu cách xâu st để xâu st khơng cịn dấu cách liền 03 Trong ngơn ngữ lập trình Pascal, phát biểu sau câu lệnh WHILE - DO sai? A Câu lệnh sau DO khơng thực lần B Câu lệnh sau DO không phép câu lệnh While-do C Câu lệnh sau DO không phép câu lệnh For-do D Câu lệnh sau DO thực lần 04 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? if (ch>'A') and (ch ) then S:= * + ( - i ) * 2; if ( i > ) then S:= * i else S:= 0; End A 40 B C 17 D 25 11 Trong ngơn ngữ lập trình Pascal, để hoán đổi giá trị phần tử mảng chiều A hai vị trí i j, ta viết mã lệnh sau: A A[i]:=Tag; A[i]:=A[j]; A[j]:=Tag; B Tag:=A[i]; A[j]:=A[i]; A[j]:=Tag; C Tag:=A[i]; A[i]:=A[j]; A[j]:=Tag; D Tag:=A[i]; A[i]:=A[j]; Tag:=A[j]; 12 Cho st biến kiểu xâu Cho biết kết sau thực đoạn chương trình sau? st:='ABCDEF'; delete(st,3,2); insert('XYZ',st,2); write(st); A AXYZBCDEF B AXYZBEF C AXYZ D ABXYZEF 13 Trong ngơn ngữ lập trình Pascal, biểu thức (55 div + / * 3) có giá trị là? A 18.8 B 34.5 C 25.5 D 8.5 14 Trong ngơn ngữ lập trình Pascal, thủ tục chèn xâu S2 vào xâu S1 vị trí vt viết là: A insert(S1,vt,S2); B insert(S2,S1,vt); C insert(vt,S1,S2); D insert(S2,vt,S1); 15 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? S:=0; for i:=1 to N S:=S+A[i]; A Đếm số phần tử mảng A B Không thực công việc C In hình mảng A D Tính tổng phần tử mảng A 16 Cho S,i N (N>0) biến kiểu nguyên Để tính giai thừa N (S = N!), ta thực hiện: A S:=1; for i:=1 to N S:=S*i; B S:=0; for i:=1 to N S:=S*i; C S:=1; for i:=1 to N S:=S+i; D S:=1; for i:=1 to N S:=S*N; Phần tự luận: (12 điểm) Câu (8 điểm) Nhập vào từ bàn phím số nguyên dương N (1 < N ≤ 20) dãy gồm N số nguyên có giá trị tuyệt đối ≤ 109 Xuất hình kết sau đây: + Dịng 1: Hiện hình dãy số vừa nhập, số dãy cách ký tự trống + Dịng 2: Tìm hiển thị giá trị âm lớn (Maxam) dương nhỏ (Minduong) + Dòng 3: Tách lấy giá trị Minduong chuyển giá trị sang Hệ nhị phân + Dòng 4: Từ số nhị phân có hốn đổi vị trí bit cho dãy bit có giá trị lớn hệ nhị phân chuyển ngược hệ thập phân đưa hình Ví dụ: INPUT N=5 -3 12 -7 OUTPUT -3 12 -7 -3 101 Câu (4 điểm) Viết chương trình nhập vào xâu ký tự mã hóa lại xâu cách thay ký tự ký tự đứng sau k vị trí bảng chữ Alphabet Giá trị k số nguyên nhập từ bàn phím Ví dụ: INPUT OUTPUT k=3 ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học 2009 – 2010 Môn: Tin học Thời gian: 90 phút Ngày thi: 16-03-2010 Chú ý: Đề thi gồm có hai trang Đề 598 Phần trắc nghiệm: (8 điểm) 01 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? if (ch>'A') and (ch0) biến kiểu nguyên Để tính giai thừa N (S = N!), ta thực hiện: A S:=1; for i:=1 to N S:=S+i; B S:=1; for i:=1 to N S:=S*i; C S:=0; for i:=1 to N S:=S*i; D S:=1; for i:=1 to N S:=S*N; 09 Phép toán (105 div 10 +105 mod 5) có giá trị A B 15 C 10 D 10 Trong ngơn ngữ lập trình Pascal, mặt cú pháp câu lệnh sau sai? A c:=pi*12; B a:=3.12; C b:=(a=5)or(a=7); D x:=12,7; 11 Sau chạy chương trình đây, giá trị S Var S, i : Integer; Begin i := 5; S:= 40; if ( i > ) then S:= * + ( - i ) * 2; if ( i > ) then S:= * i else S:= 0; End A 40 B C 17 D 25 12 Cho st biến kiểu xâu Cho biết kết sau thực đoạn chương trình sau? st:='ABCDEF'; delete(st,3,2); insert('XYZ',st,2); write(st); A AXYZBEF B ABXYZEF C AXYZ D AXYZBCDEF 13 Trong ngôn ngữ lập trình Pascal, phát biểu sau câu lệnh WHILE - DO sai? A Câu lệnh sau DO không phép câu lệnh While-do B Câu lệnh sau DO khơng thực lần C Câu lệnh sau DO thực lần D Câu lệnh sau DO không phép câu lệnh For-do 14 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? S:=0; for i:=1 to N S:=S+A[i]; A Đếm số phần tử mảng A B In hình mảng A C Tính tổng phần tử mảng A D Không thực công việc 15 Trong ngơn ngữ lập trình Pascal, thủ tục chèn xâu S2 vào xâu S1 vị trí vt viết là: A insert(S2,vt,S1); B insert(S2,S1,vt); C insert(S1,vt,S2); D insert(vt,S1,S2); 16 Trong ngơn ngữ lập trình Pascal, Kết biến x có giá trị nào? S:='Hoang Thu Thuy'; x:='';i:=length(S); while S[i] ' ' begin x:=x+S[i]; i:=i-1; end; A Xâu rỗng B 'Thu' C 'Hoang' D 'Thuy' Phần tự luận: (12 điểm) Câu (8 điểm) Nhập vào từ bàn phím số nguyên dương N (1 < N ≤ 20) dãy gồm N số nguyên có giá trị tuyệt đối ≤ 109 Xuất hình kết sau đây: + Dịng 1: Hiện hình dãy số vừa nhập, số dãy cách ký tự trống + Dòng 2: Tìm hiển thị giá trị âm lớn (Maxam) dương nhỏ (Minduong) + Dòng 3: Tách lấy giá trị Minduong chuyển giá trị sang Hệ nhị phân + Dòng 4: Từ số nhị phân có hốn đổi vị trí bit cho dãy bit có giá trị lớn hệ nhị phân chuyển ngược hệ thập phân đưa hình Ví dụ: INPUT N=5 -3 12 -7 OUTPUT -3 12 -7 -3 101 Câu (4 điểm) Viết chương trình nhập vào xâu ký tự mã hóa lại xâu cách thay ký tự ký tự đứng sau k vị trí bảng chữ Alphabet Giá trị k số nguyên nhập từ bàn phím Ví dụ: INPUT OUTPUT k=3 ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học 2009 – 2010 Môn: Tin học Thời gian: 90 phút Ngày thi: 16-03-2010 Chú ý: Đề thi gồm có hai trang Đề 566 Phần trắc nghiệm: (8 điểm) 01 Trong ngơn ngữ lập trình Pascal, mặt cú pháp câu lệnh sau sai? A x:=12,7; B c:=pi*12; C a:=3.12; D b:=(a=5)or(a=7); 02 Trong ngôn ngữ lập trình Pascal, thủ tục chèn xâu S2 vào xâu S1 vị trí vt viết là: A insert(vt,S1,S2); B insert(S2,S1,vt); C insert(S1,vt,S2); D insert(S2,vt,S1); 03 Phép tốn (105 div 10 +105 mod 5) có giá trị A B 15 C 10 D 04 Trong ngơn ngữ lập trình Pascal, Kết biến x có giá trị nào? S:='Hoang Thu Thuy'; x:='';i:=length(S); while S[i] ' ' begin x:=x+S[i]; i:=i-1; end; A Xâu rỗng B 'Thuy' C 'Thu' D 'Hoang' 05 Trong ngơn ngữ lập trình Pascal, phát biểu sau câu lệnh WHILE - DO sai? A Câu lệnh sau DO không phép câu lệnh For-do B Câu lệnh sau DO không thực lần C Câu lệnh sau DO không phép câu lệnh While-do D Câu lệnh sau DO thực lần 06 Xét biểu thức Logic (m mod 1000) Kết thỏa mãn biểu thức trên? A 100 B 150 C 88 D 508 07 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? i:=pos(' ',st); {' ' dấu cách} while i0 Begin delete(st,i,1); i:=pos(' ',st); End; A Xóa hai dấu cách liền xâu st B Xóa dấu cách liền cuối xâu st C Xóa dấu cách liền xuất xâu st D Xóa dấu cách xâu st để xâu st khơng cịn dấu cách liền 08 Cho S,i N (N>0) biến kiểu nguyên Để tính giai thừa N (S = N!), ta thực hiện: A S:=1; for i:=1 to N S:=S*i; B S:=1; for i:=1 to N S:=S+i; C S:=1; for i:=1 to N S:=S*N; D S:=0; for i:=1 to N S:=S*i; 09 Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? if (ch>'A') and (ch ) then S:= * + ( - i ) * 2; if ( i > ) then S:= * i else S:= 0; End A 25 B 17 C 40 D 11 Trong ngôn ngữ lập trình Pascal, hàm Upcase(ch) cho kết là: A Xâu ch toàn chữ in thường B Biến ch thành chữ in thường C Xâu ch toàn chữ in hoa D Chữ in hoa tương ứng với ch 12 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? S:=0; for i:=1 to N S:=S+A[i]; A Không thực công việc B Đếm số phần tử mảng A C In hình mảng A D Tính tổng phần tử mảng A 13 Cho st biến kiểu xâu Cho biết kết sau thực đoạn chương trình sau? st:='ABCDEF'; delete(st,3,2); insert('XYZ',st,2); write(st); A ABXYZEF B AXYZ C AXYZBEF D AXYZBCDEF 14 Trong ngơn ngữ lập trình Pascal, biểu thức (55 div + / * 3) có giá trị là? A 8.5 B 25.5 C 34.5 D 18.8 15 Trong ngơn ngữ lập trình Pascal, để hoán đổi giá trị phần tử mảng chiều A hai vị trí i j, ta viết mã lệnh sau: A Tag:=A[i]; A[j]:=A[i]; A[j]:=Tag; B Tag:=A[i]; A[i]:=A[j]; Tag:=A[j]; C Tag:=A[i]; A[i]:=A[j]; A[j]:=Tag; D A[i]:=Tag; A[i]:=A[j]; A[j]:=Tag; 16 Cho S i biến kiểu nguyên Giá trị S in hình số sau chạy đoạn chương trình sau: S:=0; for i:=1 to 10 S:=S+i; writeln(S); A 55 B 21 C 11 D 101 Phần tự luận: (12 điểm) Câu (8 điểm) Nhập vào từ bàn phím số nguyên dương N (1 < N ≤ 20) dãy gồm N số nguyên có giá trị tuyệt đối ≤ 109 Xuất hình kết sau đây: + Dịng 1: Hiện hình dãy số vừa nhập, số dãy cách ký tự trống + Dòng 2: Tìm hiển thị giá trị âm lớn (Maxam) dương nhỏ (Minduong) + Dòng 3: Tách lấy giá trị Minduong chuyển giá trị sang Hệ nhị phân + Dòng 4: Từ số nhị phân có hốn đổi vị trí bit cho dãy bit có giá trị lớn hệ nhị phân chuyển ngược hệ thập phân đưa hình Ví dụ: INPUT N=5 -3 12 -7 OUTPUT -3 12 -7 -3 101 Câu (4 điểm) Viết chương trình nhập vào xâu ký tự mã hóa lại xâu cách thay ký tự ký tự đứng sau k vị trí bảng chữ Alphabet Giá trị k số nguyên nhập từ bàn phím Ví dụ: INPUT OUTPUT k=3 ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học 2009 – 2010 Môn: Tin học Thời gian: 90 phút Ngày thi: 16-03-2010 Chú ý: Đề thi gồm có hai trang Đề 343 Phần trắc nghiệm: (8 điểm) 01 Trong ngơn ngữ lập trình Pascal, mặt cú pháp câu lệnh sau sai? A a:=3.12; B c:=pi*12; C x:=12,7; D b:=(a=5)or(a=7); 02 Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? S:=0; for i:=1 to N S:=S+A[i]; A In hình mảng A B Đếm số phần tử mảng A C Không thực công việc D Tính tổng phần tử mảng A 03 Xét biểu thức Logic (m mod 1000) Kết thỏa mãn biểu thức trên? A 508 B 150 C 88 D 100 04 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? if (ch>'A') and (ch0) biến kiểu nguyên Để tính giai thừa N (S = N!), ta thực hiện: A S:=1; for i:=1 to N S:=S*i; B S:=1; for i:=1 to N S:=S+i; C S:=1; for i:=1 to N S:=S*N; D S:=0; for i:=1 to N S:=S*i; 10 Trong ngơn ngữ lập trình Pascal, thủ tục chèn xâu S2 vào xâu S1 vị trí vt viết là: A insert(S2,vt,S1); B insert(vt,S1,S2); C insert(S1,vt,S2); D insert(S2,S1,vt); 11 Phép tốn (105 div 10 +105 mod 5) có giá trị A 15 B C 10 D 12 Cho S i biến kiểu nguyên Giá trị S in hình số sau chạy đoạn chương trình: S:=0; for i:=1 to 10 S:=S+i; writeln(S); A 55 B 11 C 101 D 21 13 Sau chạy chương trình đây, giá trị S Var S, i : Integer; Begin i := 5; S:= 40; if ( i > ) then S:= * + ( - i ) * 2; if ( i > ) then S:= * i else S:= 0; End A B 25 C 40 D 17 14 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng việc gì? i:=pos(' ',st); {' ' dấu cách} while i0 Begin delete(st,i,1); i:=pos(' ',st); End; A Xóa dấu cách liền xuất xâu st B Xóa hai dấu cách liền xâu st C Xóa dấu cách xâu st để xâu st khơng cịn dấu cách liền D Xóa dấu cách liền cuối xâu st 15 Trong ngơn ngữ lập trình Pascal, phát biểu sau câu lệnh WHILE - DO sai? A Câu lệnh sau DO không phép câu lệnh For-do B Câu lệnh sau DO không thực lần C Câu lệnh sau DO không phép câu lệnh While-do D Câu lệnh sau DO thực lần 16 Trong ngơn ngữ lập trình Pascal, Kết biến x có giá trị nào? S:='Hoang Thu Thuy'; x:='';i:=length(S); while S[i] ' ' begin x:=x+S[i]; i:=i-1; end; A Xâu rỗng B 'Hoang' C 'Thuy' D 'Thu' Phần tự luận: (12 điểm) Câu (8 điểm) Nhập vào từ bàn phím số nguyên dương N (1 < N ≤ 20) dãy gồm N số nguyên có giá trị tuyệt đối ≤ 109 Xuất hình kết sau đây: + Dịng 1: Hiện hình dãy số vừa nhập, số dãy cách ký tự trống + Dòng 2: Tìm hiển thị giá trị âm lớn (Maxam) dương nhỏ (Minduong) + Dòng 3: Tách lấy giá trị Minduong chuyển giá trị sang Hệ nhị phân + Dịng 4: Từ số nhị phân có hốn đổi vị trí bit cho dãy bit có giá trị lớn hệ nhị phân chuyển ngược hệ thập phân đưa hình Ví dụ: INPUT N=5 -3 12 -7 OUTPUT -3 12 -7 -3 101 Câu (4 điểm) Viết chương trình nhập vào xâu ký tự mã hóa lại xâu cách thay ký tự ký tự đứng sau k vị trí bảng chữ Alphabet Giá trị k số nguyên nhập từ bàn phím Ví dụ: INPUT OUTPUT k=3 ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! ... ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học... ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học... ‘QefEPDslkdExf’ ‘ThiHSGvonghai’ ………………Hết……………… Ghi chú: Cán coi thi khơng giải thích thêm! SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ THI OLYMPIC HỌC SINH GIỎI LỚP 11 Năm học