Kỳ thi chọn học sinh giỏi cấp tỉnh môn Tin học Lớp 9 - Năm học 2015-2016
Bài 1: Cặp số thân thiết (6,0 điểm):
Hai số nguyên dương được gọi là thân thiết nếu chúng có cùng ước số nguyên tố lớn nhất.
Hãy viết chương trình kiểm tra xem hai số nguyên dương có là cặp số thân thiết hay không?
Dữ liệu vào là hai số nguyên dương a, b (1< a, b <1010) nhập từ bàn phím.
Dữ liệu ra gồm:
- Ước nguyên tố lớn nhất của từng số;
- Kết luận: “La cap so than thiet” hoặc “Khong than thiet”.
Ví dụ:
Input | Output | |
Nhap hai so: 18 2016 |
UNTLN tuong ung: 3, 7 Khong than thiet | |
Input | Output | |
Nhap hai so: 50 15 |
UNTLN tuong ung: 5, 5 La cap so than thiet |
Bạn đang xem tài liệu "Kỳ thi chọn học sinh giỏi cấp tỉnh môn Tin học Lớp 9 - Năm học 2015-2016", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- ky_thi_chon_hoc_sinh_gioi_cap_tinh_mon_tin_hoc_lop_9_nam_hoc.doc
Nội dung text: Kỳ thi chọn học sinh giỏi cấp tỉnh môn Tin học Lớp 9 - Năm học 2015-2016
- trong 2 ô lân cận ở hàng tiếp theo (theo hướng mũi tên) cho đến khi đến được một ô ở hàng cuối cùng và thu nhặt các điểm số có ở các ô trên đường đi qua (lộ trình sẽ thăm đúng N ô) (Hình vẽ dưới minh họa cho một ví dụ với N=4). Cho trước một bảng biểu thị giá trị điểm số các ô trên từng hàng. Hãy lập trình tìm một lộ trình hợp quy định của luật chơi và thu được điểm số cao nhất. Dữ liệu vào là tệp DUONGDI.INP có cấu trúc như sau: - Dòng thứ nhất chứa số tự nhiên N; - N dòng tiếp theo sẽ chứa các giá trị điểm số trên các ô điểm ở dòng tương ứng. Dòng thứ i sẽ có i giá trị. Các giá trị cách nhau một khoảng trắng. Dữ liệu ra là tệp DUONGDI.OUT gồm 2 dòng: - Dòng thứ nhất chứa giá trị tổng điểm lớn nhất thu được theo lộ trình tối ưu; - Dòng thứ 2 chứa N số nguyên là giá trị các ô điểm mà lộ trình tối ưu đi qua. 8 5 1 2 6 9 3 4 2 3 Ví dụ: DUONGDI.INP DUONGDI.OUT 4 23 8 8 5 6 4 5 1 2 6 9 3 4 2 3 Chú ý: Nếu chỉ nêu được số điểm lớn nhất mà không chỉ được lộ trình đi thì được ½ số điểm của bài. ___
- Writeln('La cap so than thiet') Else Writeln('Khong than thiet'); Readln End; Begin Nhap; Xuli; End. Bài 2: Dãy có giá trị lớn nhất: Program Daymax; Type Strings=String[100]; Const A:Array['1' '9'] of Byte = (1,2,3,4,5,6,7,8,9); B:Array[1 9] of String = ('1','2','3','4','5','6','7','8','9'); fi='D:\Daycon.Inp'; fo='D:\Daycon.Out'; Var S:Strings; k:Byte; f:Text; Procedure Nhap; Begin Assign(f,fi); Reset(f); Readln(f,s); Read(f,k); Close(f); End; Function Vitri(S:Strings):Strings; Var i,n,max:Byte; Begin n:=Length(s); max:=1; For i:=2 to n-k+1 do If a[s[max]] < a[s[i]] then max:=i; Vitri:=Copy(s,max,n-max+1); End;
- Read(g,n); For i:=1 to n do Begin For j:=1 to i do Read(g,A[i,j]); Readln(g); End; Close(g); End; Function Max(i,j:Word):Word; Begin If i>j then max:=i Else max:=j; End; Procedure Toiuu; Var i,j :Word; Begin For i:=1 to n-1 do Begin F[i,0]:=-1; F[i,i+1]:=-1; End; F[0,0]:=0; F[1,1]:=A[1,1]; For i:=2 to n do For j:=1 to i do F[i,j]:=Max(F[i-1,j-1],F[i-1,j])+A[i,j]; End; Procedure Truyvet(i,j :Word); Begin If (F[i,j]=F[i-1,j-1]+A[i,j]) then Dec(j); Dec(i); If (i>0) then Begin Trace(i,j); Write(g,a[i,j],' '); End; End; Procedure Xuat; Var i,iMax :Word; Begin Assign(g,fo); Rewrite(g); iMax:=1; For i:=2 to n do If (F[n,iMax]<F[n,i]) then iMax:=i;