I-тур. Информатикадан 2011-2012 жылғы аудандық олимпиадасы, 2-этап, 5 сағат (2012 облыстық І-тур)..
Есептерді шығарғандар: Шоңбаев Жеңс Павлодар, Миржан Темирбеков ШКО Тарбагатай ауданы Акмектеп ауылы, Жақаев М Жамбыл, Нұрсұлтан Алматы, КазЭУ 2-курс.
А есебі. Тақта.
Енгізу файлының аты / имя входного файла: А.in
Шығару файлының аты / имя выходного файла: А.out
Уакыт шектеуі / ограничение по времени: 2 сек.
Жадыға шектеу / ограничение по памяти: 64Мб
N натурал саны берілген. Еегер түстер шахмат тәртібімен жазылғаны және (1, 1) – ұяшығы ақ түске боялғаны белгілі болса, N х N тақтаның әр ұяшығының түсін анықтаңыз.
Мәліметтерді енгізу форматы: Енгізу файлының бірінші жолында бір бүтін сан N (1<= N <= 10) берілген.
Мәліметтерді шығару форматы: Әр N жолда ұяшықтың түсіне сійкес N символ шығарыңыз; егер ақ болса- ‘W’, егер қара болса- ‘B’.
Мысалы / пример:
А.in | А.out | Комментарий |
3 | WBW BWB WBW |
Есептің программасы:
Жеңіс Шоңбаев | Миржан Темирхан |
program A_esep-Takta; function f(x,y:integer):char; begin F:=’B'; if (x+y) mod 2 = 0 then F:=’W'; end; var i,j,k:integer; begin write(‘k=’);readln(k); For i:=1 to K do begin For j:=1 to K do Write(F(i,j)); writeln; end; readln; end. Кіріс файлынсыз. |
program A; var fInput: file of Byte; fOutput: file of String; strVar: String; n, i, j: Byte; bCol: Boolean; begin assign(fInput,’A.in’); {$I+} reset(fInput) {$I-}; assign(fOutput,’A.out’); rewrite(fOutput); read(fInput, n); bCol:= true; (* birinshisi - W *) for i:= 1 to n do begin strVar:= ”; for j:= 1 to n do begin case bCol of true: strVar:= strVar + ‘W’; false: strVar:= strVar + ‘B’; end; bCol:= not(bCol); end; writeln(strVar); write(fOutput, strVar); end; readln; close(fInput); close(fOutput); end.А.in файлын осы программамен бір папкаға сақтау керек. |
В есебі. Қалалар.
Енгізу файлының аты / имя входного файла: В.in
Шығару файлының аты / имя выходного файла: В.out
Уакыт шектеуі / ограничение по времени: 2 сек.
Жадыға шектеу / ограничение по памяти: 64Мб
Мемлекетте N қала бар Атшабар А қаласынан В қаласына жету керек. Сізге қай қалалардың арасында жол бар екені белгілі. Ең аз қала санынан өтетін А қаласынан В қаласына дейінгі маршрутты табыңыз. Аршрут бар екеніне кепілдік беріледі.
Мәліметтерді енгізу форматы: Енгізу файлының бірінші жолында төрт бүтін сан N, М, А, және В берілген (1<= N <= 10, 1<= М <= 50, 1<= А <= 10, 1<= В <= 10) берілген. N, М, А, В сәйкесінше қалалар, жолдар саны және маршрут табу керек қалалардың нөмірлері. Келесі М жолда сәйкес жолдың сипаттамасы екі бүтін сан U (1<=V, U<=N) осы жолдар қосатын қалалрдың нөмірлері берілген.
Мәліметтерді шығару форматы: А қаласынан В қаласына дейінгі ең минималды қала саынан өтетін маршруттың ұзындығы:
Мысалы / пример:
В.in | В.out | Комментарий |
3 2 1 5 1 2 2 3 |
1 |
Есептің программасы:
program B__esep-Kalalar; const MaxM = 50; Type Citys = set of byte; Type Way = record fromC:byte; toC:byte; end; var N:integer; M:integer; A:byte; B:byte; inpB:text; outpB:text; i:integer; Ways:array[1..MaxM] of Way; C:Citys; C2:Citys; C3:Citys; l:integer; Begin |
program B1; uses Crt; var fInput, fOutput: file of Byte; N, A, B, V, U: 0..10; M, i, begin_a, min_dlina: 0..50; aDor: array [1..2, 1..50] of 0..10; begin ClrScr; assign(fInput,’B.in’); {$I+} reset(fInput) {$I-}; assign(fOutput,’B.out’); rewrite(fOutput); { N:= 3; M:= 2; A:= 1; B:= 3; read(fInput, Byte(N), Byte(M), Byte(A), Byte(B)); В.in файлын осы программамен бір папкаға сақтау керек. |
С есебі. Ғажайып сан.
Енгізу файлының аты / имя входного файла: С.in
Шығару файлының аты / имя выходного файла: С.out
Уакыт шектеуі / ограничение по времени: 2 сек.
Жадыға шектеу / ограничение по памяти: 64Мб
Егер сан өзінен кіші бөлгіштерінің қосындысына тең болса, онда оны ғажап сан деп атайды. Берілген бүтін N санының ғажап сан немесе ғажап сан емес екенін анықтаңыз.
Мәліметтерді енгізу форматы: Енгізу файлының бірінші жолында бір бүтін сан N берілген. (1 <= N <= 1000000).
Мәліметтерді шығару форматы: Егер ғажап сан болса “YES” сөзін шығарыңыз, болмаса “NO”:
Мысалы / пример:
С.in | С.out | Комментарий |
3 6 |
NO YES |
Есептің программасы:
program C_esep-Gazhapsan; uses crt; var i,j,k,m,sum:longint; b:array[1..50]of longint; begin clrscr; write(‘Butin san engiziniz: ‘);readln(i); sum:=0;k:=1; for j:=1 to i-1 do if i mod j=0 then begin b[k]:=j;inc(k); end; for j:=1 to k-1 do sum:=sum+b[j]; if i=sum then begin write(‘ ‘,i,’ gajap san ‘);inc(i)end else write(i,’ gajap san emes’); readln; |
program C; var fInput: file of Integer; fOutput: file of String; N, N2, S, i: Integer; bool: Boolean; strAns: String; begin assign(fInput,’C.in’); {$I+} reset(fInput) {$I-}; assign(fOutput,’C.out’); rewrite(fOutput); read(fInput, N); bool:= false; S:= 0; if (N > 1) and (N < 1000000) then if N = 1 then bool:= true else if N > 5 then begin N2:= Trunc(N/2); for i:= N2 downto 1 do if (N mod i = 0) then S:= S + i; if S = N then bool:= true; end; if bool then strAns:= ‘YES’ else strAns:= ‘NO’; writeln(strAns); write(fOutput, strAns); readln; close(fInput); close(fOutput); end. В.in файлын осы программамен бір папкаға сақтау керек. |
Ұқсас тақырыптар:
- ІІ-тур. Информатикадан 2011-2012 жылғы аудандық олимпиадасы, 2-этап.
- Pascal-да программалар: 2-лік->10 сан, 10-дық->2 сан, 4 амал, Қазақша жыл.
- Паскаль. Кіріс, шығыс файлдары
- Информатикадан факультативтік сабақ: Графикалық көмекшi программалар.
- Информатикадан мектеп олимпиадасы 2011-2012
- Информатика. Аудандық олимпиада есептерінің шығарылуы, II этап, 2008-2009
- Паскаль. «Бақытты билет», Бүтін санды жай көбейтінділерге бөлшектеу, ASCII таблицасын шығару, Фамилияларды сұрыптау, Хоар процедурасы
- 2008-2009 Олимпиада есептері шешулерімен.
- И-9. Сызықты құрылымды алгоритмдер мен программаларды құру
- Қалалық олимпиада тапсырмалары 2012.
Көп Рахмет ағайлар! Алла разы болсын! сіздерден өтінерім программанын әр жолына казакша түсінік бере аласыздар ма, мен енді-енді үйреніп келе жатыр едім. Алдын ала рахмет
С есебі: Түбір
Енгізу файлының аты: С.in
Шығару файлының аты: С out
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Берілген А санынынң N дәрежелі түбірін табыңыз (яғни Хn=A шарты орындалатындай Х саны). Егер жауап бүтін емес сан болса, онда оны қарапайым жуықтау ережелерімен жауықтаңыз.
Енгізу файлының форматы
Енгізу файлының жалғыз жолына бос орынмен бөлінген А және N – екі бүтін сан берілген ( ).
Шығару файлының форматы
Есептің шешуі – бір бүтін санды шығарыңыз.
Мысал
С. in С. out
4 2 2
31 2 6
30 2 5
Паскаль операторын және матемтаикалық формуланы ескеріп бул есепті былай шығарыпты КазЭУдің студенті Нурсултан:
program ss;
uses crt;
var
a,n:integer;
t:real;
f1,f2:text;
begin
clrscr;
assign(f1,’c:\in.txt’);
reset(f1);
read(f1,a,n);
t:=exp(1/n*ln(a));
assign(f2,’c:\out.txt’);
rewrite(f2);
write(f2,round(t));
close(f1);
close(f2);
readkey;
end.
Нұрсұлтан. КазЭУ ІІ-курс. 2012 облыстық олимпиада
Информатика пәні бойынша 9-сынып
А есебі. Ферзьдер
Енгізу файлының аты: A.in
Шығару файлының аты: A out
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Ферзь – бір жүрісте вертикаль, горизонталь немесе диогональ бойынша (егер жолында басқа фигура болмаса) кез келген тор көз санына жылжый алатын, ең мықты шахматтың фигурасы. Егер ферзь тор көзге бір жүрісте жете алса, онда ол сол тор көзді ұра алады. N x N тақтада К ферзь қойылған. Ешқандай ферзь ұрмайтын бос тор көздер санын санаңыз.
Енгізу файлының форматы
Енгізу файлдың бірінші жолында екі бүтін сан N және К берілген Келесі К жолдың әрқайсысынд екі сан - тиісті ферзьдің қатары мен бағанасының нөмірлері жазылған (қатарлар мен бағаналар 1-ден N-ге дейінгі бүтін сандармен нөмірленген). Әр ферзьдің орны (позициясы) әр түрлі. Жолдардағы сандар бос орынмен бөлінген.
Шығару файлының форматы
Есептің шешуі – бір бүтін санды шығарыңыз.
Мысал
А. in A. out
3 2
3 2
2 3 1
Кирис файлсыз
program ss;
uses crt;
var
i,j,m,n,k,s:integer;
a,t:array[1..1000,1..1000] of integer;
begin
write(‘n,k=’);
readln(n,k);
for i:=1 to k do
for j:=1 to 2 do read(t[i,j]);
for i:=1 to k do
for j:=1 to n do
begin
a[t[i,1],j]:=1;
a[j,t[i,2]]:=1;
end;
for m:=1 to k do
for i:=1 to n do
for j:=1 to n do
begin
if (t[m,1]+t[m,2])=(i+j) then a[i,j]:=1;
if (t[m,1]-t[m,2])=(i-j) then a[i,j]:=1;
end;
s:=0;
for i:=1 to n do
for j:=1 to n do
if a[i,j]=0 then s:=s+1;
writeln;
writeln(s);
end.
Биылғы оқу жылында, яғни 2011/2012 оқу жылында оқушым облыстық олимпиадаға қатысып қайтты, бірақ облысқа барғанда ол есептерін паскальда орындаған екен, оқушының айтуы бойынша есептер паскальда емес, басқа программалау тілінде, TurboNet-те орындалады екен деп ренішпен қайтып келді. Неге оқу бөлімі ескерту айтпады, осы программа бойынша түсінік берсеңіздер. Алдын -ала рахмет!!!
Информатикадан олимпиада кезінде оқушы, есептің программасын өзі жақсы білетін кез-келген тілде жаза берсе болады. Сіздің балаңыздың программасы тестілеуден өтпеген немесе оқушыңыз өз құқын қорғай алмаған.