Назар аударыңыз. Бұл материалды сайт қолданушысы жариялаған. Егер материал сіздің авторлық құқығыңызды бұзса, осында жазыңыз. Біз ең жылдам уақытта материалды сайттан өшіреміз
Жақын арада сайт әкімшілігі сізбен хабарласады
Бонусты жинап картаңызға (kaspi Gold, Halyk bank) шығарып аласыз
Олимпиада есептері
Дипломдар мен сертификаттарды алып үлгеріңіз!
Материалдың толық нұсқасын
жүктеп алып көруге болады
10 сынып
Олимпиада есебі
№1. Массивтің элементтерінің 1-ден 7-ге дейінгі қосындысын тап:
№2 Х және У массив элементтері кему ретімен орналасқан. Массив элементтерін бір Z массивіне қосып, оның элменттерінде кему ретілігімен орналстырып программа жаз.
№3 Жалқаулық.
Енгізу файлының аты: D.in
Шығару файылының аты: D. Out
Есептің жауабы файылының аты: D. pas
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Оқытушы емтиханға дайындалуға үшін оқушыларына N сұрақтарды берді. Осы сұрақтардан ол емтиханға үшін А сұрақты таңдайды, ал оқушы, бесті алу үшін В сұрақты (бұларды А сұрақтан) жауап беру тиісті. Ку оқушы барлық сұрақтарды оқытуға қаламайды. Бесті алу үшін, сұрақтардың қандай ең аз саны оған жатап алу керек?
Мәліметтерді енгізу форматы
Кіріс файлдың жекеше жолында үш бүтін сан жазылған: N, A және В (1<=N<=100000, 1<=B<=A<=N). Сандар аралары пробел арқылы бөлінген.
Мәліметтерді шығару форматы
Шығыс файлда бір бүтін сан жазылу керек.
10 сынып
Олимпиада есебінің жауабы
№1. Массивтің элементтерінің 1-ден 7-ге дейінгі қосындысын тап:
Программасы:
Program ma;
Const n=7;
Type m1=array [1…n] of real;
Var a:m1; k: integer; S: real;
begin
for k:=1 to n do
begin read (a[1,...7]);
end;
S:=ø
for k:=1 to n do
if a[k]>0 then S:=S+a[k];
Write (S);
End.
№2 Х және У массив элементтері кему ретімен орналасқан. Массив элементтерін бір Z массивіне қосып, оның элменттерінде кему ретілігімен орналстырып программа жаз.
Program F10_d1;
Const n=5;
Var x,y:array[1..n] of integer; z :array[1..2*n] of integer; I,j,k,m:integer;
Begin
For I:=1 to n do
Begin
Write(‘x,y элементінің нөмірін енгіз’, i); readln (x[i], y[i]);
end;
k:=0;
for i:=1 to n do
begin
k:=k+1; z[k]:=x[i];
k:=k+1; z[k]:=y[i];
End;
For i:=1 to n do
Begin
M=z[i]; k:=I;
For j:=I to n do if z[j]>m then begin m:=z[j]; k:=j end;
B:=z[i]; z[i]=z[k]; z[k]:=b
End;
For i:=1 to n do write(‘ ‘,z[i])
End.
№3 Жалқаулық.
Енгізу файлының аты: D.in
Шығару файылының аты: D. Out
Есептің жауабы файылының аты: D. pas
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Оқытушы емтиханға дайындалуға үшін оқушыларына N сұрақтарды берді. Осы сұрақтардан ол емтиханға үшін А сұрақты таңдайды, ал оқушы, бесті алу үшін В сұрақты (бұларды А сұрақтан) жауап беру тиісті. Ку оқушы барлық сұрақтарды оқытуға қаламайды. Бесті алу үшін, сұрақтардың қандай ең аз саны оған жатап алу керек?
Мәліметтерді енгізу форматы
Кіріс файлдың жекеше жолында үш бүтін сан жазылған: N, A және В (1<=N<=100000, 1<=B<=A<=N). Сандар аралары пробел арқылы бөлінген.
Мәліметтерді шығару форматы
Шығыс файлда бір бүтін сан жазылу керек- есептің жауабы.
Мысал
D.in |
D.out |
10 7 3 |
6 |
uses crt;
var i,j,k,l,m,n:longint;
begin
assign(input,'d.in');reset(input);
assign(output,'d.out');rewrite(output);
readln(i,j,k);
writeln(i-(j-k));
close(input);close(output);
end.
11 сынып
Олимпиада есебі
№1 Дәрежесі
Енгізу файлының аты: F.in
Шығару файылының аты: F. Out
Есептің жауабы файылының аты:F. pas
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Сіздерге А,В және С бүтін сандары берілген. АВ(А-нің В дәрежесі) С-ға бөлуінің қалдығы шығарыңыздар. Назарды ықылас білдіріңіздер:
(Х-Y) mod Z=((X mod Z)* (Y mod Z)) mod Z
(Х-Y) mod Z=((X mod Z)+ (Y mod Z)) mod Z
Мәліметтерді енгізу форматы
Кіріс файлдың жекеше жолында үш бүтін сан жазылған А,В,С(0<=A, B<=1018,1<=C<=1018). Сандар аралары пробел арқылы бөлінген.
Мәліметтерді шығару форматы
Шығыс файлда бір бүтін сан жазылу керек.
№2 Латын кестесі
Берілген 4х4 екі өлшемді массивтің қатары мен бағанасында 1 ден 4-ке дейінгі сандар бір рет қана кездесетін матрица екенін анықтайтын программа жаз. Мысалы:
-
1
2
3
4
2
1
4
3
3
4
1
2
4
3
2
1
№3. Меретой. Ғасыр мерейтойы деп атақты адамдардың туылған күнінен бастап 100 немесе 200 жыл өтуін айтамыз. Қалада атақты бір ақынның ғасырлық мерейтойын тойламақшы. Осыған орай ұйымдастырушылар қала орталығында үлкен табло іліп қоюды дұрыс деп тапты. Бұл таблоның қызметі мерейтойға дейін неше күн қалғаны көрсету.
Тапсырма: осы таблоның жұмыс істеуін қамтамасыз ететін, ақынның туылған күні мен ағымдағы мерзімге қарап мерейтойға неше күн қалғанын анықтайтын программа жазу керек.
Ескерту: сіз жазған программа таблоның 1999-2099 жылдар аралығында дұрыс жұмыс жасауын қаматамасыз ету керек.
Кіру файылындағы мәліметтің форматы: кіру файлы екі қатардан тұрады. Бірініші қатарда- ақынның туылған күні мына форматта :кк:аа:жжжж; екінші қатарда , дәл осы форматтағыдай ағымдағы мерзім берілген.
Шығу файылындағы мәліметтің форматы: сіз жазған программа шығу файлына мерейтойға қалған күндердің санын, егер мерейтой өту үстінде болса немесе өтіп кеткен болса «тойлануда» деген жауап шығару керек.
Есептің алгоритмдік шешуі: бұл есепте берілген ақынның туылған күні айы, жылы мен ағымдағы күн, ай, жыл айырмашылығын есепке аламыз.
11 сынып
Олимпиада есебінің жауабы
№1 Дәрежесі
Енгізу файлының аты: F.in
Шығару файылының аты: F. Out
Есептің жауабы файылының аты:F. pas
Уақыт шектеу: 2 секунд
Жадыға шектеу: 64 мегабайт
Сіздерге А,В және С бүтін сандары берілген. АВ(А-нің В дәрежесі) С-ға бөлуінің қалдығы шығарыңыздар. Назарды ықылас білдіріңіздер:
(Х-Y) mod Z=((X mod Z)* (Y mod Z)) mod Z
(Х-Y) mod Z=((X mod Z)+ (Y mod Z)) mod Z
Мәліметтерді енгізу форматы
Кіріс файлдың жекеше жолында үш бүтін сан жазылған А,В,С(0<=A, B<=1018,1<=C<=1018). Сандар аралары пробел арқылы бөлінген.
Мәліметтерді шығару форматы
Шығыс файлда бір бүтін сан жазылу керек-есептің жауабы.
Мысал
F. in |
F. out |
3 4 5 |
1 |
uses crt;
var i,j,k,l,m,n:longint;
begin
assign(input,'f.in');reset(input);
assign(output,'f.out');rewrite(output);
readln(i,j,k);
l:=1;m:=0;
repeat
inc(m);
l:=l*(i mod k);
until(m=j);
writeln(l mod k);
close(input);close(output);
end.
№2 Латын кестесі
Берілген 4х4 екі өлшемді массивтің қатары мен бағанасында 1 ден 4-ке дейінгі сандар бір рет қана кездесетін матрица екенін анықтайтын программа жаз. Мысалы:
-
1
2
3
4
2
1
4
3
3
4
1
2
4
3
2
1
Program f13_d1;
Label 1,2;
Const n=4;
Var I,j,s,s1:integer: a: array[1..n,1..n] of integer;
Begin
For i:=1 to n do
For j:=1 to n do
Begin
Write(‘’,I,j); read( a[I,j]);
End;
Writeln(‘’);
For i:=1 to n do
Begin
For j:=1 to n do write(a[I,j]:3);
Writeln
End;
S1:=0;
For i:=1 to n do s1:=s1+I;
For i:=1 to n do
Begin
S:=0;
For j:=1 to n do s:=s+a[I,j];
If s<>s1 then goto 1
End;
For i:=1 to n do
Begin
S:=0;
For j:=1 to n do s:=s+a[j,i];
If s <> s1 then goto 1
End;
Write(‘латын квадрат’);