Файл: Олимпиадаа дайындалуа арналан есептер жинаЫ 1 Екі санны осындасын табу программасын ру керек.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.11.2023
Просмотров: 74
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
ОЛИМПИАДАҒА ДАЙЫНДАЛУҒА
АРНАЛҒАН ЕСЕПТЕР ЖИНАҒЫ
№1 Екі санның қосындасын табу программасын құру керек.
Program kosindi;
Var a, b, x integer;
Begin
Write (‘a, b-сандарын енгіз');
Readln(a, b);
X:=a+b;
Writeln(‘x =’,x);
End.
№2 Екі санның бөліндісін табу программасын құру керек.
Program bolindi;
Var a, b, x:real;
Begin
Write (‘a, b-сандарын енгіз');
Readln(a, b);
X:=a/b;
Writeln(‘x=’,x);
End.
№3 Екі санның қосындысының квадраттарын және көбейтіндісін табу программасын құру керек. х = (a+ b) 1 , у = a* b
Program esep 1;
Var a, b, x, y:integer;
Begin Write (‘a. b- сандарын енгіз’);
Readln (a, b);
X:=sqr (a+b);
Y:= a*b;
Writeln (‘x=’, x);
Writeln (‘y=’, y);
End.
№4. k =(x2 + y2) * x+y, мұндағы функциясының мәнін есептейтін программа құру керек.
Program esep 2 ;
Var k:real;
Const x = 5, y = 2.8;
Begin
K: = srq (x) + sqr(y)* sqrt (x+y);
Writeln (‘k = ‘, k);
End.
№5. Апта күндерінің реттік нөмірі бойынша олардың аттарын анықтайтын программа құру керек.
Program kyn;
Var kyn: integer ;
Begin
Write (‘ kynnin aptadagi rettik nomirin engizinder: ‘ );
Readln (kyn);
Case kyn of
1: writeln ( ‘ duisenbi’);
2: writeln ( ‘seisenbi’);
3: writeln ( ‘ sarsenbi’);
4: writeln ( ‘ beisenbi’);
5: writeln ( ‘ juma’);
6: writeln ( ‘senbi’);
7: writeln ( ‘ jeksenbi’);
Else writeln ( ‘ 1… 7 araligindagi sandardi engizinder’);
End
End.
№6. Екі санның үлкенін табатын программа құр.
Program max;
Var a, b, max: integer;
Begin
Readln (a,b);
If a>b then max:= a else max:=b;
Writeln (‘ max= ’ , max);
End.
№7. Үш санның үлкенін табатын программа құру керек.
Program max;
Var a, b, c, x, max: integer;
Begin
Readln (a, b, c);
If a>b then max:= x else max:=c;
Writeln (‘ max= ’ , max);
End.
№8 Екі санның кішісін табатын программа құру керек.
Program min;
Var a, b, min : integer;
Begin
Readln (a, b);
If a
Writeln ( ‘ min = ‘ , min) ;
End.
№9. Үш санның кішісін табатын программа құру керек.
Program min;
Var a, b, c, x, min : integer;
Begin
Readln (a, b, c);
If a
If x
Writeln ( ‘ min = ‘ , min) ;
End.
№10 Үш кесіндінің ұзындықтары берілген. Егер бұл үш кесіндіден үшбұрыш құру мүмкін болса, онда оның периметрін және ауданын табыңдар.
Program e5;
Var a, b, c : integer;
P1, p, s: real;
Begin
Readln (a, b, c);
If a+b>c then p1: = a+b+c ;
P:= (a+b+c)/2;
S:=sqrt (p*(p-a)*(p-b)*(p-c));
Writeln ( ‘ p1= ‘ , p1:5:2) ;
Writeln (‘ s=’,s:5:2);
End.
№11. Адам жасына қарап, оларды әлі мектепке бармаған, мектеп оқушысы, жұмысшы, зейнеткер деген төрт топтың біріне жатқызатын программа құрыңдар. Адам жасы пернетақтадан енгізіледі.
Program e6;
Var x : integer;
Begin
Writeln (‘ adam jasin engiz’ );
Readln (x);
If x<=6 then writeln (‘ ali mektepke barmagan’ ) else
If (x>6) and (x<=17) writeln (‘ mektep okushisi ‘) else
If (x>17) and (x<58) writeln (‘ jumisshi’) else writeln (‘ zeinetker’);
End.
№12. Екі сан берілген. Егер бірінші санның абсолют шамасы екінші санның абсолют шамасынан артық болса, онда біріншісін бес есе азайту керек, әйтпесе екі санды да өзгеріссіз экранға шығару керек.
Program e7;
Var x, y : real;
Begin
Writeln (‘x , y-?);
Readln (x, y);
If abs (x)< abs(y) then x:=x/5;
Writeln (x:5:2, y:5:2);
Readln;
End.
№13.Пернетақтадан трамвай билетінің нөмірі (1 орынды 6 сан ) енгізіледі. Билет «бақытты» нөмір болатынын анықтаңдар. Бақытты билеттің алғашқы 3 цифрының қосындысы соңғы 3 цифрының қосындысына тең болады.
Program e8;
Var x, y, z, r, k, t, s, n : integer;
Begin
Read (x, y, z, r. k. t );
S:= x+y+z;
N:= r+k+t;
If S= N then writeln (‘ bakitti nomer’) else writeln (‘ bakitti nomir emes’);
End.
№14. 1-ден n – ге дейінгі сандардың квадраттарының қосындысын табатын программа құру керек.
Program kvadrat;
Var s, i , n: integer;
Begin
WriteLn (‘ n = ’) ;
Readln (n);
I:=1;
S:=0;
While i<=n do
Begin S:=S + sqr (i);
I:= i+1;
WriteLn (‘ S=’ , S);
End;
End.
№15. Y= ex sinx+cosx функциясының мәндерінің [a, b] аралығында h қадамы бойынша өзгеру кестесін құратын программа құрыңдар.
Program y- tap;
Var x, y, a, b, h: real;
Begin
WriteLn (‘ a , b , h -? ’);
ReadLn (a, b , h);
X:= a;
While x<= b do
Begin
Y:=exp (x) * sin (x) + cos(x);
WriteLn (‘x=’, x:5:2, ‘, ‘ , y= ‘, y:5:2);
X:=x+h;
End;
End.
№16. Х € [1; 3] аралығындағы 0,2 қадаммен өзгергендегі y= функциясының мәнін тап.
Program esep;
Var x, y: real;
Begin
X:=1;
While x<=3 do
Begin y:= sqrt (x+1)-1/x;
Writeln (‘ x=’ , x, ‘y=’, y);
x:=x+0.2;
end;
readln;
end.
№17 Р=1*2*3 … * N N ! факториалды табу программасын жаз.
Program fakt;
Var I , n , p: integer;
Begin
WriteLn ( ‘ n= ‘);
ReadLn (n) ;
I: = 1;
P:= 1;
Repeat
P:= p*1;
I:= i+1;
Until i>n;
Writeln (p:4);
End.
№18. у =3x+1 x €[1 ; 2 ], h =0,5 өрнегін WHILE, REPEAT операторларын пайдаланып программа құр.
Program y-tabu;
Var x , y : real ;
Begin
X:=-1;
Repeat
Y: = 3*x+1;
WriteLn (‘ y = ‘ , y);
X:=X+0,5;
Until x>2;
End.
№19. x €[1 ; 3 ] аралығында 0,2 қадаммен өзгергендегі y= функциясының мәнін тап.
Program esep;
Var x, y: real;
Begin
X:=1;
repeat
y:= sqrt (x+1)-1/x ;
Writeln ( x:3, y:5);
x:=x+0.2;
until x>3
readln;
end.
№20. 1- ден 100-ге дейінгі сандарды экранға шығаратын программа құрыңдар.
Program san;
Var i: integer;
Begin
Wtiteln (‘ 1- den 100- ge dein butin san’);
Writeln;
For i:=1 to 100 do
Write (i:4);
End.
№21. 30-дан 10-ға дейінгі барлық жұп сандарды экранға шығаратын программа құрыңдар.
Program jup;
Var i: integer;
Begin
Writeln (’30-dan 10-ga deingi jup san’);
For i:=30 downto 10 do
If I mod 2=0 then
Writeln (i);
End.
№22. 1- ден 100 –ге дейінгі тақ сандардың және жұп сандардың қосындыларын табудың программасын құру керек.
Program tak and jup
Var I, s, s1: integer;
S:=0; S1:= 0;
For i:=1 to 100 do
Begin
If I mod 2 = 0 then s:=s+I else s1:=s1+I;
Writeln (‘ s=’, s, ‘ , ‘ , ‘s1= ‘, s1);
End;
End.
№23. 5- тен 1-ге дейінгі сандардың қосындысын есептеу керек.
Program kosindi;
Var I, s:integer;
Begin
S:=0;
For i:=5 downto 1 do
S:=S+I;
Writeln (‘s = ‘, s);
End.
№24. Кіші латын әріпімен енгізілген жолды, үлкен латын әріптеріне ауыстыру программасын құрыңыз.
Program austir:
Var s:string:
k:byte:
begin
readln(s):
for k:=l to length (s) do
s[K]: =Upcase (s[k]);
writeln(s):
end.
№25. 20 нақты сан берілген. Осы сандардың арифметикалық ортасын табу програмасы . Осы 20 нақты сандар тобын А жиымы деп қарастырсақ , жиымның элементтері A[1], A[2], …,A[20] нақты сандар болады.
Program
Var A: array [l..20] of real;
I:integer;
S:real;
Begin
For i:=1 to 20 do
Read (A[i]);
S:=0;
For i:=l to 20 do
S:=S+A[i];
S:=S\20;
Write (S);
End.
№26. 10 элементтен тұратын А массивтің элементтерін енгізу және шығару программасын құру керек.
Program esepl:
Uses crt:
Var l:integer:
A:array [l..10] of integer;
Begin
Clrscr;
For i:=l to 10 do
Begin
Writeln( ‘a[‘,I,’]-? ’);
Readln (a[i]);
End;
For i:=l to 10 do
Writeln(‘a[‘,I, ’]=’,a[i]);
End
№27. Берілген бір өлшемді A{2,-3,5,8,-2} массив элементтерінің қосындысын есептейтін прграмма жазу керек.
Program esep2:
Uses crt;
Var I,s:integer:
A: array [l…5] of integer;
Begin
Clrscr;
For i:=1to 5 do
Begin S:= 0;
Writeln(`a[`,I`]-?`);
Readln(a[i]);
End;
For i:=1 to 5do
Begin
S:=S+a[i];
Writeln(`S[`,I,`]=`,S);
End;
End.
27. Берілген бір өлшемді А{2,-3,5,-8,2} ма ссив элементтерінің квадраттарының қосындысын есептеу программасын құру керек.
Program esep3;
Uses crt;
Var I,s:integer:
A: array [l…5] of integer;
Begin
Clrscr;
For i:=1to 5 do
Begin S:= 0;
Writeln(`a[`,I,` ]-?`);
Readln(a[i]);
End;
For i:=1 to 5do
Begin
S:=S+sqr(a[i]);
Writeln(`S[`,I,`]=`,S);
End; End.
№28.Берілген бір өлшемді А{2,-3,5,-8,2} массив берілген, оң элементтерін баспаға шығаратын программа құру керек
Program esep4;
Uses crt;
Var I:integer:
A: array [l…5] of integer;
Begin
Clrscr;
For i:=1to 5 do
Begin
Writeln(`a[`,I,` ]-?`);
Readln(a[i]);
End;
For i:=1 to 5do
Begin
If (a[i])>0 then Writeln(`a[`,I,`]=`,a[i]);
End; End.
№29.Бірөлшемді А{2,-3,5,-8,2}
массив берілген, теріс элементтерін баспаға шығаратын программа құру керек.
Program esep5;
Uses crt;
Var I:integer;
A: array [l…5] of integer;
Begin
Clrscr;
For i:=1to 5 do
Begin
Writeln(`a[`,I,` ]-?`);
Readln(a[i]);
End;
For i:=1 to 5do
Begin
If (a[i])>0 then Writeln(`a[`,I,`]=`,a[i]);
End; End.
№30. Бірөлшемді А{2,-3,5,-8,2} массив элементтерінің ең үлкен
баспаға шығаратын программа құру керек.
Program esep6;
Uses crt;
Var I, max :integer:
A: array [l…5] of integer;
Begin
Clrscr;
For i:=1to 5 do
Begin
Writeln(`a[`,I,` ]-?`);
Readln(a[i]);
End;
Max:= a [I];
For i:=2to 5do
Begin
If max<(A[i]) then max :=a[i]);
End.
№31. Екіөлшемді А (3,3) жиым элементтерін енгізу және шығару программасын құру керек.
program esep mas;
uses crt;
var i,j:integer;
A: array [l..3,1..3] of integer;
Begin clrscr;
for i:=1to 3 do
for j:=1to 3 do
begin
writeln(`engiz a[`,i,`,`,j,`]`);
readln(a[i,j]);
end;
for i:=1 to 3 do
begin
for j:=1to 3 do
write (a[i,j]:3);
Writeln; end;
R.eadln; end.
№32. Екіөлшемді жиым элементтерінің қосындысын және көбейтіндісін табу.
program esep 1;
uses crt;
var i,j,s,k:integer;
A: array [l..3,1..3] of integer;
Begin clrscr;
for i:=1to 3 do
for j:=1to 3 do
begin
writeln(`engiz a[`,i,`,`,j,`]`);
readln(a[i,j]);
end;
for i:=1 to 3 do
begin
for j:=1to 3 do
write (a[i,j]:3);
writeln; end;
k:=1; s:=0;
for i:=1to 3 do
for j:=1to 3 do
s:=s+a[i,j];
for i:=1to 3 do
for j:=1to 3 do
k;=k*a[i,j];
writeln(`s=`,s): writeln(`k=`,k);
readln; end.
№33. Екі өлшемді жиым элементтерінің квадраттарын табатын программа құру керек.
program esep1;
uses crt;
var i,j:integer;
A:array[1..3,1..3] of integer;
begin
clrscr;
for i:=1to 3 do
for j:=1to 3 do
begin
writeln(`engiz a[`,i,`,`,j,`]`);
readln(a[i,j]);
end;
for i:=1 to 3 do
begin
for j:=1to 3 do
write (a[i,j]:3);
writeln;
end;
writeln;
for i:=1 to 3 do
begin
for j:=1to 3 do
write (sgr(a[i,j]):3):
writeln;
end;
readln;
end.
№34. Екіөлшемді жиым элементтерінің түбірлерін табатын программа құру керек.
program esep1;
uses crt;
var i,j:integer;
A:array[1..3,1..3] of integer;
begin
clrscr;
for i:=1to 3 do
for j:=1to 3 do
begin
writeln(`engiz a[`,i,`,`,j,`]`);
readln(a[i,j]);
end;
for i:=1 to 3 do
begin
for j:=1to 3 do
write (a[i,j]:3);
writeln;
end;
writeln;
for i:=1to 3 do
begin
for j:=1to 3 do
write (sgr(a[i,j]):3):
writeln;
end;
readln;
end.
№35. А (3,3) матрицасының оң элементтерінің қосындысын табу программасын құр.
Program matr;
Const n=3;
Var I,j,k:integer;
A:array[1..n,1..n] of integer;
Begin for i:=1to n do
for j:=1to n do
begin read (A[I,J]);
if A[I,J]>0 Then k:=k+A[I,J];
end;
writeln (k:3):
end.
№36. Берілген А (3,3) матрицасының оң және теріс элементтерінің санын санау программасын құру керек.
var i,j,o,i:integer;
a:array[1..3,1..3] of integer;
begin
for i:=1to 3 do
for j:=1to 3 do
begin
writeln(`engiz a[`,i,`,`,j,`]`);
readln(a[i,j]);
end;
for i:=1 to 3 do
for j:=1to 3 do
if a[i,j]>0 then 0:=0+1else t:=t+1;
writeln (`0=`,0, `t=`,t);
end.
№37. Берілген А (3,3) матрицасындағы оң элементтерді баспаға шығару программасын керек.
var i,j,o : integer;
a:array [1..3,1..3] of integer;
begin
for i :=1 to 3 do
for j:=1 to 3 do
begin
writeln (`engiz a[`,i,`,`,j,`]`);
readln (a[i,j]);
end;
for i:=1 to 3 do
if a [i,j] >0 then writeln (`on san=`, a[i,j]);
end.
№38. 2-ден 5-ке дейінгі сандардың көбейту таблицасын баспаға шығаратын программа керек.
Var i,j: byte;
begin
for i:=2to 5do
begin
for j:=1to 10 do
writeln ( i,`x`j,`=`,i*j);
writeln
end;
end.
№39. Берілген кез келген үш санның үлкенін және кішісін анықтайтын процедура жаса.
program procl;
label k;
var x1, x2, x3, m1, m2:real ;
function max (a,b: real):real;
begin
if a>b then max:= a else max:=b
end;
function min (a,b: real):real;
begin
if a>b then min:= a else min:=b
end;
procedure xxx(a,b,c: real; var mx, mn:real);
begin
mx:=max(max(a,b),c);
mn:=min(a,b),c);
end;
begin
k:write(`3san engiz:`); readln(x1,x2,x3);
xxx(x1,x2,x3,m1,m2);
writeln(`3sannin ylkeni=`,m1:5:2);
writeln(`3sannin kishisi=`,m1:5:2);
end.
№40. дөңес төртбұрыштың төртқабырғасы мен бір диоганалының ұзындығы бойынша оның ауданын табу программасын құру керек.
program misal2;
var ab, bc, cd, da, ac, sl, s, a,b,c,p:real;
procedure strl;
begin
p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c))
end;
begin
read (ab, bc, cd, da, ac);
a:=ab;b:=bc; c:=ac; strl; Sl:=s; a:=da; b:=ac; c:=cd; strl; sl:=Sl+s;
write (`sl=`,s);
end.
№41. Калкульятор жұмысына программа құру (+,-,*,/,div, mod амалдары арқылы).
Program calculiator;
Var k1, k2: integer;
Belgi: char;
Procedure calc;
begin
Case Belgi of
‘*’: writeln (kl, ’*’, K2, ’=’, k1*k2);
‘+’: writeln (kl, ’+’, K2, ’=’, k1+k2);
‘/’: writeln (kl, ’/’, K2, ’=’, k1/k2);
‘-’: writeln (kl, ’-’, K2, ’=’, k1-k2);
‘d’: writeln (kl, ’div’, k2, ’=’, k1divk2);
‘m’: writeln (kl, ’mod’, k2, ’=’, k1modk2);
End;
End;
Begin
Write (‘1-san’) readln (k1);
Write (‘2-san’) readln (k2);
Write (‘belgi’) readln (belgi);
Calc;
End.
№42. Экранда бұрыш жасаған екі түзу сызық, шеңбер центрінде орналасқан нүкте салу программасын құру керек.
program syret;
uses Graph Crt;
var graphdriver,graphmode:integer;
begin
clrscr;
initgraph(graphdriver,graphmode,’d:\bp\bgi’);
setColor(3)’line(250,50,475,200);line(200,50,25,300);
setcolor(8);circle(250,200,100);putpixel(250,200,5);
readln;closegraph;
№43. Әр түрлі түспен берілген геометриялық фигуралардың астына аттарын жазатын программа құру керек.
program syrettext;
uses Graph, Crt;
var GraphDriver: integer; GraphMode:Integer;
Begin ClrScr;
GraphDriver:=0;
InitGraph(GraphDriver,GraphMode,’d:\bp\bgi’);
SetBkColor(15);SetColor(10);
rectangle (60, 40, 100, 80);SetFillStyle(1,3);FloodFill(300,70,10);
SetColor (0); ;SetTextStyle (5,0,3);
OutTextXY(60,65’RectanglE’);