Cộng đồng chia sẻ tri thức Lib24.vn

Đề thi thử vào 10 chuyên Tin huyện Tân Thành năm 2018-2019

d87b09733bb51690f9c434c720ba5a45
Gửi bởi: Nguyễn Minh Lệ 21 tháng 8 2021 lúc 21:47:29 | Được cập nhật: hôm qua lúc 7:14:49 | IP: 14.243.134.238 Kiểu file: DOC | Lượt xem: 123 | Lượt Download: 0 | File size: 0.306176 Mb

Nội dung tài liệu

Tải xuống
Link tài liệu:
Tải xuống

Các tài liệu liên quan


Có thể bạn quan tâm


Thông tin tài liệu

PHÒNG GIÁO D C VÀ ÀO T O HUY N TÂN THÀNH THI TH L THI TH VÀO L P 10 N M H C 2018-2019 MÔN: TIN H C (CHUYÊN) Th i gian làm bài: 150 phút Ngày thi th : 23 tháng 5 n m 2018 N2 ( H thi có 02 trang, g m 04 câu) ng d n làm bài: - Vi t chơ ng trình trên gi y b ng ngôn ng l p trình Pascal. - Thí sinh không c n ki m tra d li u nh p. Câu 1 (3,0 i m). Nhập vào số nguyên dương n ( 2 ≤ n ≤ 1000 ) và số thực x (| x |≤ 1000 ). Tính và in ra màn hình giá trị của các biểu thức sau: x x +...+ x a) A = x + 2.3 b) B = 1 + + 3.4 4.5 x x x 1! + + 2! 3! +...+ ( n − 1) n x n! Câu 2 (2,0 i m). Nhập vào 2 số nguyên dương a và b ( 2 ≤ a < b ≤ 106 ). a) Tìm số dư phép chia của tổng: a+(a+1)+(a+2)+…+b cho 2018 Ví d :Nh p a=1000, b=2000; In ra màn hình: 108 b) In ra màn hình số lượng các số mà tổng các chữ số của nó chia hết cho 9 Ví d : Nh p a=1000, b=2000; In ra màn hình: 111 Câu 3 (3,0 i m). Nhập vào dãy số nguyên gồm n phần tử a1 , a 2 , a3 ,..., an ≤ 105 , (n 6 ai ≤ 10 , i = 1, 2,3,..., n ). a) Liệt kê ra màn hình phần tử âm có dạng 3 * k +2 (với k là số nguyên). Ví d : + Dãy s g m 5 ph n t : 3, -5, 17, -15, 23. + In ra màn hình: 17, 23. b) Tính tổng: S = − a1 + a 2 − a3 + ... + ( −1)n an Ví d : + Dãy s g m 5 ph n t : 3, -5, 17, -15, 23. + In ra màn hình: -63. Câu 4 (2,0 i m). Cho dãy số nguyên a1, a2,…, an các phần tử đôi một khác nhau. Yêu c u: Hãy tìm giá trị lớn nhất của dãy số đó sao cho giá trị lớn nhất đó phải thuộc tập số nguyên: b1, b2,... bm. D li u vào từ file ‘GETMAX.INP’: 5 ■ Dòng thứ nhất chứa lần lượt các số nguyên dương n, m (n, m<10 ). 6 ■ Trong n dòng tiếp theo, dòng thứ i chứa số nguyên ai (|ai|<2*10 ; i=1,2,...n). a 6 ■ Trong m dòng cuối, dòng thứ j chứa số nguyên bj (|bj|<2*10 ; j=1,2,…m) 1 K t qu ghi vào file ‘GETMAX.OUT’ giá trị lớn nhất thỏa điều kiện trên. Ví d : GETMAX.INP GETMAX.OUT 43 5 3 2 5 9 4 5 1 _____H t_____ Họ và tên thí sinh:................................................... Chữ ký cán bộ coi thi số 1: .................................... Số báo danh: ...................... 2 PHÒNG GIÁO D C VÀ ÀO T O HUY N TÂN THÀNH THI TH VÀO L P 10 N M H C 2018-2019 MÔN: TIN H C (CHUYÊN) HƯ NGD NCH M THITH L N2 (H ng d n ch m có 05 trang) Lưu ý:V i nh ng bài làm c a h c sinh không gi ng h ng d n ch m nh ng gi i úng ( m b o k t qu , ph m vi ki u d li u) thì v n t i m t i a. Nếu chương trình cho kết quả sai thì có thể chấm ý tưởng cho từng phần nhưng điểm không được vượt quá ½ số điểm cho mỗi câu. Câu 1 (3,0 i m). Nhập vào số nguyên dương n ( 2 ≤ n ≤ 1000 ) và số thực x (| x |≤ 1000 ). Tính và in ra màn hình giá trị của các biểu thức sau: a) A = x 2.3 b) B = 1 + + x + 3.4 4.5 x x2 x3 1! TT Khai báo x + 2! + 3! + ... + + ... + x ( n − 1) n xn n! Bài gi i tham kh o var im ngh n, i: longint; A, B, x, u:real; Begin 0.5 write('nhap so nguyen n:'); readln(n); write('x='); readln(x); Câu a A:=0; for i:=2 to n-1 do A:=A+x/(i*(i+1)); writeln('A=',A); Câu b B:=1; u:=1; for i:=1 to N do begin u:=u*x/i; B:=B+u; end; writeln('B = ',B); readln; end. Câu 2 (2,0 i m). 1.25 1.25 Nhập vào 2 số nguyên dương a và b ( 2 ≤ a < b ≤ 106 ). a) Tìm số dư phép chia của tổng: a+(a+1)+(a+2)+…+b cho 2018 Ví d :Nh p a=1000, b=2000; In ra màn hình: 108 b) In ra màn hình số lượng các số mà tổng các chữ số của nó chia hết cho 9 Ví d :Nh p a=1000, b=2000; In ra màn hình: 111 3 Ghi chú TT Bài gi i tham kh o varn, i, a, b, kq: longint; Begin write('nhap a:'); readln(a); write('nhap b:'); readln(b); Câu a kq:=a; for i:=a+1 to b do kq:=((kq mod 2018)+(i mod 2018)) mod 2018; writeln('ket qua la ',kq); Câu b kq:= (b div 9) - ((a-1) div 9); writeln('so luong cac so can tim la ',kq); readln; Câu 3 (3,0 i m). im ngh Ghi chú Khai báo 0.5 1.25 1.25 Nhập vào dãy số nguyên gồm n phần tử a1 , a 2 , a3 ,..., an n ≤ 105 , ( 6 ai ≤ 10 , i = 1, 2,3,..., n ). a) Liệt kê ra màn hình phần tử âm có dạng 3 * k +2 (với k là số nguyên). Ví d : + Dãy s g m 5 ph n t : 3, -5, 17, -15, 23. + In ra màn hình: 17, 23. b) Tính tổng: S = − a1 + a 2 − a3 + ... + ( −1)n an Ví d : + Dãy s g m 5 ph n t : 3, -5, 17, -15, 23. + In ra màn hình: -63. TT Bài gi i tham kh o var n,i,d,s:longint; a:array[1..10000] of longint; begin write('nhap n:'); readln(n); for i:=1 to n do readln(a[i]); Câu a for i:=1 to n do if a[i] mod 3 =2 then writeln(a[i],' '); Câu b d:=-1; s:=0; for i:=1 to n do begin s:=s+a[i]*d; d:=-d; end; writeln('tong can tim la ',s); readln; end. Câu 4 (2,0 i m). Cho dãy số nguyên a1, a2,…, an các phần tử đôi một khác nhau. im ngh Khai báo 4 0.5 1.0 1.5 Ghi chú Yêu c u: Hãy tìm giá trị lớn nhất của dãy số đó sao cho giá trị lớn nhất đó phải thuộc tập số nguyên: b1, b2,... bm. D li u vào từ file ‘GETMAX.INP’: 5 ■ Dòng thứ nhất chứa lần lượt các số nguyên dương n, m (n, m<10 ). 6 ■ Trong n dòng tiếp theo, dòng thứ i chứa số nguyên ai (|ai|<2*10 ; i=1,2,...n). a 6 ■ Trong m dòng cuối, dòng thứ j chứa số nguyên bj (|bj|<2*10 ; j=1,2,…m) K t qu ghi vào file ‘GETMAX.OUT’ giá trị lớn nhất thỏa điều kiện trên. Ví d : GETMAX.INP GETMAX.OUT 43 5 3 2 5 9 4 5 TT Khai báo Sắp xếp Bài gi i tham kh o const fi='GETMAX.INP'; fo='GETMAX.OUT'; type dayso=array[1..100000] of int64; var m,n:longint; kq:int64; a,b:array[1..100000] of int64; f:text; procedure sort(var a:dayso; l,r:int64); var i,j,x,y:int64; begin i:=l; j:=r; x:=a[(l+r) div 2]; repeat while a[i]j) then begin y:=a[i]; a[i]:=a[j]; a[j]:=y; inc(i); j:=j-1; 5 im ngh Ghi chú 0.25 N u HS không tìm nh phân mà dùng hai vòng l p thì: (1) + (2) + (3) = 0.5 0.25(1) Tìm nhị phân Đọc file Xử lý Ghi file end; until i>j; if lc); end; procedure docfile; var i,j:longint; begin assign(f,fi);reset(f); readln(f,n,m); for i:=1 to n do readln(f,a[i]); for j:=1 to m do readln(f,b[j]); close(f); end; procedure xuly; var j:longint; begin sort(a,1,n); sort(b,1,m); for j:=m downto 1 do begin if (timnp(b[j])
0) then begin kq:=b[j]; exit; end; end; end; procedure ghifile; begin assign(f,fo);rewrite(f); 6 0.25(2) 0.25 0.5(3) 0.25 Chương trình chính writeln(f,kq); close(f); end; begin docfile; xuly; ghifile; end. 0.25 ______H t______ 7