10 Август 2011 – 18:58 | 40 пікір

Құрметті ИНФОРМАТИКТЕР!
Cайтымыз сіздердің арқаларыңызда, аз уақытта Қазақстандағы ең танымал сайттардың біріне айналып келеді. Кейбір қазақ тілді сайттар өз контенттерін біздің сайтқа қарап өзгертіп қолданушыларын да көбейтті. Біздің үлгімізбен біршама жаңа сайттар ашылды. Соған қарағанда Информатик …

Толығырақ »
Информатика

Бәрі информатикаға байланысты

Педагогика

Тәлім-тәрбиеге байланысты материалдар

Басқа пәндер

Ұстаздар шығармашылығы

Оқушылар шығармашылығы

Басты бет » Информатика, Паскаль туралы

I-тур. Информатикадан 2011-2012 жылғы аудандық олимпиадасы, 2-этап, 5 сағат (2012 облыстық І-тур)..

Опубликовал inust в 28 Январь 2012 – 16:355 пікір
Бұл мақала 1890 рет оқылды, 3 рет бүгін

Есептерді шығарғандар: Шоңбаев Жеңс  Павлодар, Миржан Темирбеков ШКО Тарбагатай ауданы Акмектеп ауылы, Жақаев М Жамбыл, Нұрсұлтан Алматы, КазЭУ 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
assign(inpB,’B.in’);
reset(inpB);
read(inpB,N,M,A,B);
for i := 1 to M do
read(inpB,Ways[i].fromC,Ways[i].toC);
close(inpB);
l := -1;
C := [A];
C2 := [A];
while not(B in C2) and (C2 <> []) do Begin
C3 := [];
for i := 1 to M do Begin
if (Ways[i].fromC in C2) then
include(C3,Ways[i].toC);
if (Ways[i].toC in C2) then {второе условие. т.к. по дороге можно перемещяться в обоих направлениях }
include(C3,Ways[i].fromC);
end;
C2 := C3 - C;
C := C + C3;
l := l+1;
if (C2 = []) then l := -2; {ответа нет }
end;
assign(outpB,’output.txt’);
rewrite(outpB);
writeln(outpB,l);
close(outpB);
end.

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;
write(fInput, N, M, A, B);
V:= 1; U:= 2;
write(fInput, V, U);
V:= 2; U:= 3;
write(fInput, V, U); }

read(fInput, Byte(N), Byte(M), Byte(A), Byte(B));
writeln(N, M, A, B);
begin_a:= 0;
min_dlina:= 0;
for i:= 1 to M do
begin
read(fInput, Byte(aDor[1, i]), Byte(aDor[2, i]));
if aDor[1, i] = A then begin_a:= i;
writeln(aDor[1, i], aDor[2, i]);
end;
i:= begin_a - 1;
repeat
i:= i + 1;
V:= aDor[1, i];
U:= aDor[2, i];
min_dlina:= min_dlina + 1;
until aDor[2, i] = B;
writeln(min_dlina);
readln;
close(fInput);
close(fOutput);
end.

В.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;
end.

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 файлын осы программамен бір папкаға сақтау керек.

Ұқсас тақырыптар:

5 пікір »

  • Adik пишет:

    Көп Рахмет ағайлар! Алла разы болсын! сіздерден өтінерім программанын әр жолына казакша түсінік бере аласыздар ма, мен енді-енді үйреніп келе жатыр едім. Алдын ала рахмет

  • inust пишет:

    С есебі: Түбір
    Енгізу файлының аты: С.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.

  • inust пишет:

    Нұрсұлтан. КазЭУ ІІ-курс. 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-те орындалады екен деп ренішпен қайтып келді. Неге оқу бөлімі ескерту айтпады, осы программа бойынша түсінік берсеңіздер. Алдын -ала рахмет!!!

  • Инуст пишет:

    Информатикадан олимпиада кезінде оқушы, есептің программасын өзі жақсы білетін кез-келген тілде жаза берсе болады. Сіздің балаңыздың программасы тестілеуден өтпеген немесе оқушыңыз өз құқын қорғай алмаған.

Оставьте комментарий

Добавьте комментарий ниже или обратную ссылку со своего сайта. Вы можете также подписаться на эти комментарии по RSS.

Всего хорошего. Не мусорите. Будьте в топе. Не спамьте.

Вы можете использовать коды HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

На сайте используются Gravatar. Чтобы его получить зарегистрируйтесь Gravatar.