ОЛИМПИЯДА ЕСЕПТЕР ЖИНАҒЫ
Оценка 5

ОЛИМПИЯДА ЕСЕПТЕР ЖИНАҒЫ

Оценка 5
Научные работы
docx
информатика
9 кл
10.01.2017
ОЛИМПИЯДА ЕСЕПТЕР ЖИНАҒЫ
№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) , у = 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№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) , у = 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
ОЛИМПИАДА ЕСЕПТЕР ЖИНАҒЫ.docx

 

 

 

 

 

 

 

 

 


ОЛИМПИАДАҒА ДАЙЫНДАЛУҒА

АРНАЛҒАН ЕСЕПТЕР ЖИНАҒЫ

 

 

 

Информатика пәні мұғалімі

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

№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<b  then min: = a  else  min : = b;

            Writeln ( ‘ min = ‘ , min) ;

            End.

 

№9. Үш санның кішісін табатын программа құру керек.

Program min;

            Var a, b, c, x,  min : integer;

            Begin

            Readln (a, b, c);

            If a<b  then x: = a  else  x : = b;

            If x<c  then min: = x  else  min : = c;

            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’);

setcolor(11);circle(200,65,20);setfillstyle(2,4);

setcolor(1);settextstyle(4,0,4);outtextxy (180,80’ circle’);

ellipse(300,80,0,360,50,30); settextstyle(5,0,5); outtextxy(250,90,’ ellipse’)

setcolor(5); line (360,65,450,65);settextstyle (6,0,6); outtextxy(360,80,’  line’);

setcolor(4)arc(500,70,260,,90,20); settextstyle (6,0,6); outtextxy (500,90,’arc’);

readln;

closegraph

end.

№44. Төмендегі суреттерді салуға жазылған программаның қатесін тауып,  толықтырып жаз

  UsesGraph,  Crt;

Var GraphDriver,  GraphMode:integer;

Begin  ClrScr;

GraphDriver:=0;

InitGraph (GraphDriver,GraphMode,’);

If  GraphResult <> 0 then

Begin Writeln; Writeln ;Halt;End;

Setbcolor(2)  Setcolor(4)Cirkle (250,150,50);

Setfill style(1,3); floodfill(250,210,2);  Setbcolor(14);

Line(250,50,175,225);line(175,75,325);

Readln;closeckapn; End.

№2.  Uses Graph, Crt;

Var GraphDriver, GraphMode:integer;

Begin ClrScr; GraphDriver:=0;

InitGraph(GraphDriver,GraphMode,’’);

If  GraphResult <> 0 then

Begin Writeln; Writeln;Halt;End;

Setbcolor(14); setcolor(6);

Line (150,100,170,300);lin(150,100,350,300);

Setbkolor(5); Circie(250,500,50);Flooclfill(250,200,5)

Srtfillstyle(3,4)

readln; end.

 

№3. Uses Graph, Crt; Var GraphDriver, GraphMode:integer;

Begin ClrScr; GraphDriver:=0;

InitGraph(GraphDriver,GraphMode,’’);

If  GraphResult <> 0 then

Begin Writeln; Writeln;Halt;End;

setbcolor(1); setcolor(15);

Line (250,50,475,200);Line(200,50,25,300);

Setcolor(3);

Circle(250,200,100,);

Srtfill style(1,3) floodfill(250,200,3);

Readln; gloseckapk; end.

№45. 10 элементтен тұратын А жиымы берілген. Осы жиым элементтерінің қосындысын табатын программа жазыңыз.

Dim a(6) As iteger

Dim і, s As iteger

For i=1 to 6 do

a(i)=InputBox(“Видите a” +str(i))

Next i

S=0

For i=1 to 6

S=s+a(i)

Next i

Print “s=”; s

№46 А(6) бүтін сандары берілген. Жиым элементтерінде кездесетін бірдей көршілес сандар неше рет кездесетінін анықтайтын программа жазыңыз.

Dim a(6) As iteger

Dim i  As iteger

For i=1 to 6 do

a(i)=InputBox(“Видите a” +str(i))

Next i

S=0

For i=1 to 6

k=0

IF a(i)=a(i+1) then k=k+1

PRINT “k=”; k

Next i

№47 Жиымның нөлдік емес элементерін бірге арттыратын прогрпмма жазыңыз.

Dim a(6) As iteger

Dim i As iteger

For i=1 to 6 do

a(i)=InputBox(“Видите a” +str(i))

Next i

For i=1 to 6

IF a(i)<>0 then k=k+1

PRINT “a(i)=”; a(i)

Next i

№48 А жиымының элементтерін өсу ретімен орналастырыңыз.

Dim a(5) As iteger

Dim і,j,k,R As iteger

For i=1 to 5 do

a(i)=InputBox(“Видите a” +str(i))

Next i

k=i

For j=i+1 to 5

k=0

IF a(i)<a(k) then k=j

Next j

R=a(i): a(i)=a(k): a(k)=R

PRINT “a(i)=”; a(i)

Next i

№49 А жиымының элементтерін кему ретімен орналастырыңыз.

Dim a(5) As iteger

Dim і,j,k,R As iteger

For i=1 to 5 do

a(i)=InputBox(“Видите a” +str(i))

Next i

k=i

For j=i+1 to 5

k=0

IF a(i)>a(k) then k=j

Next j

R=a(i): a(i)=a(k): a(k)=R

PRINT “a(i)=”; a(i)

Next i

№50 Реттік нөмірі жұп болып келетін жиым элеметтерін 100 санымен алмастырыңыз.

Dim a(10) As iteger

Dim і As iteger

For i=1 to 10 do

a(i)=InputBox(“Видите a” +str(i))

Print “(a(i)=”; a(i)

Next i

a(i)=100

For i=2 to 100 step 2

a(i)=100

PRINT “a(“;i;”)=100

Next i

№51 Бір өлшемді А(5) жиымы берілген. А-ның элементтерінің жеке  жиым құру керек.

Dim a(10), b(5), c(5) As iteger

For i=1 to 10 do

a(i)=InputBox(“Видите a” +str(i))

Next i

For i=1 to 5

b(i)=a(2*i-1)

c (i)=a(2*i)

Next i

For i=1 to 5

PRINT “b(“i”)=”;b(i)

Next i

For i=1 to 5

PRINT “c(“i”)=”;c(i)

Next i

№52  Жиым А(5) берілген. Егер нольге тең элементтер болса, онда олардың алғашқы бесеуінің нөмірін анықтайтын программа жаз.

Dim a(7) As iteger

Dim і, k As iteger

For i=1 to 7 do

a(i)=InputBox(“Видите a” +str(i))

Next i

For i=1 to 7

IF a(i)=0 then PRINT “a(“;i;”)=0”

Next i

k=k+1

IF k=5 then End

№53 А матрицасы берілген. Барлық баған элементтерінен азайту программасын жазыңыз.

Dim a(3,3) As iteger

Dim і, j As iteger

N=3

For i=1 to 3 do

For j=1 to 3 do

a(i)=InputBox(“Видите a” +str(i))

Next i

Next j

For i=1 to N-1

For j=1 to 3 do

a(i,j)=a(I,j)-a(1,N)

Next i

Next j

For i=1 to 3 do

For j=1 to 3 do

PRINT “a(“i,j”)=0”

IF a(i)=0 then PRINT “a(“;i;”)=”;a(i,j)

Next j

Next i

№54 Келесі шарттарға сәйкесті жиым элементтерінің мәнін өзгертіңіз.

Егер а(і)=7, онда а(i)=1

Егер а(і)=6, онда а(i)=2

Егер а(і)=5, онда а(i)=3

Dim a(9) As iteger

Dim і, k As iteger

For i=1 to 9 do

a(i)=InputBox(“Видите a” +str(i))

Next i

For i=1 to 9 do

IF a(i)=7 then a(i)=1

IF a(i)=7 then a(i)=2

IF a(i)=5 then a(i)=3

Print “a(i)=”;a(i)

Next i

№55 А(9) жиым берілген. Нөлге тең емес элементтерді жиымның алдыңғы жағына, нольге тең элементтерді жиымның соңына орналастыру керек.

Dim a(9) As iteger

Dim і, k As iteger

For i=1 to 9 do

a(i)=InputBox(“Видите a” +str(i))

Next i

For i=1 to 9

IF a(i)<>then PRINT “a(“;i;”)=”; a(i)

Next i

For i=1 to 9

IF a(i)=0 then PRINT “a(i)=”; a(i)

Next i

№56 Екі өлшемді жиым А(4,4) берілген үшінші жолының элементтерінің қосындысын табыңыз.

Dim a(4,4) As iteger

Dim і, j, S As iteger

S=0

For i=1 to 4 do

For j=1 to 4 do

a(i,j)=InputBox(“Видите a” +str(i))

Next i

Next j

For i=1 to 4

Next i

For i=1 to 4

S=S+a(3.j)

Next j

Print “S=”;S

№57      Массасы 5 г дене түзу сызықты қозғалғандығы жылдамдық уақыты берілген. Денеге әсер етуші күшті тап.

Программасы:

10. Rem

20. Read  m, z1, z2, t

30. Let  F=(m*(z1-z2))/t

40. Print  “F=”;F

50. End

Run F5.  Enter

 №58. 1-ден 15-ке дейінгі барлық полиндром сандардың тізімін басып шығаратын программа құр (полиндром сан деп кері оқығанда да сол санға тең сан, яғни берілген есеп үшін бірінші және үшінші цифрлары тең сандар).

Программасы:

Program Polindrom;

 Var a, b, c, P1: integer;

Begin

            For a:=1 to 15 do

            For c:=0 to 15 do

            For b:=1 to 15 do

    Begin

P1:=a*100+b*10+c;

If a=c then write (P1:5);

End.

№59. Массивтің  элементтерінің  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.

№60  Мына өрнекті есептеп программасын құр? Q=(1+12/f*d*g).

Программасы:

10. Rem

20. Input Q, f, d, g

30. Q=(1+12/f*d*g).

40. Print “d=”;d

50. End.

№61  Тиын ақшаны n рет лақтырғанда  цифр жағымен  түсу жиіліктігін  жуық шамамен  анықтау программасын құрыңыз?

Программасы:

Program G; uses ctr;

{жиіліктік}

Label 10;

   Var n, m, k, r:  integer; W: real;

Begin clrscr;

10: Write  (‘n=?’); readln (n); m:=0;

For k:=1 to n do

Begin  r:=round(random)

If r:=1 then m:=m+1;

end;  W:=m/n;

Writeln(n; сынақта сифр көрінуі-? , m ‘, рет’);

Writeln(‘бос орын клавишын бас’);

Repeat until (key pressed); goto 10

End.

№62 S1, V1 жылдамдықпен ағып жатқан өзеннен судың ағысына қатысты V2 жылдамдықпен қарсы жағаға қайықпен  ағысқа перпендикуляр бағытта  жүзіп өту  үшін қанша уақыт кетеді?  t=S/V өтуге кеткен уақыт формуласы.

10. Rem

20. Input S,V1,V2

30. S=80

40. If V1>V2 then 90

50. V=Sqr(V2^2-V1^2)

60. t=S/V

70. Print “t=”;t

80. Stop

90. Print “қайық қарсы жағаға өте алмайды

100. End.

№63 Жазық бетте жатқан денеге горизонталь бағытта күш әсер  етеді. Осы күштің әсерінен t - секунтта дене қанша жол жүреді?

10. Rem

20. Input M, F, k, t

30. If F>9.8*k*M then A=(F-9.8*k*M)/M

40. S=A*(t^2)/2 else S=0

50. Print “S=”;S

60. End.

№64  25м мыс. Сымның массасы 100,7г. Сымның диаметрін табыңдар?

   L=2500 m=100.7  p=8.94 v=m/p  d=Sqr((4*v)/(p*L))

10. Rem

20. Input L, M, R

30. v=mirIf F>9.8*k*M then A=(F-9.8*k*M)/M

40. d=Sqr((4*v)/(p*L))

50. Print “d=”;d

60. End.

№65  Ұжымдық  мекемеде дипломы бар азаматқа жұмыс ұсыну процесі  жүруде. Оған мамандарды ретімен қабылдайды. Программасын құр?

 Program ds;

   Var x, y, z, m: real;

Begin read(x, y, z);

If  x>0 then writeln (‘m=’, жұмысқа қабылдау);

Else Writeln(‘y=’, жұмысқа қабылдамау);

If  y>3.5 then writeln (‘m:=’, инженер конструктор);

Else Writeln(‘m :=’, ғылыми қызметкер);

If  z>2 then writeln (‘m:=’, инженер қызметін ұсыну);

Else Writeln(‘m :=’, жұмысқа қабылдамау);

End.

 

№66  Шеңбер

Енгізу файлының аты:  А.in

Шығару файылының аты: А. Out

Есептің жауабы  файылының аты: A. pas

Уақыт шектеу: 2 секунд

Жадыға шектеу:  64 мегабайт

 

Шеңберде бірдей қашықтықта  N нүктелер  белгіленген, олар қарсы сағаттық тілдің бүтін сандармен 1-ден  N-ға нөмірленген. Сіздерге осы шеңбердің бірнеше қос хордалар берілген, хорданың ұштары сол нүктелер болады. Әрбір хордалар үшін анықтаңыздар, олар қиылып  кетеді ме, немесе қиылымайды (сүйкелмейген хордалар қиылған деп саналады).

 

Мәліметтерді енгізу  форматы

Кіріс файлдың бірінші жолында екі бүтін сан тұрады: N және К (1 <=N <=109, 1<=K<=100).  Келесі  К жолда 4 бүтін сан тұрады: А1, В1, А2, В2- бірінші хорданын (А1, В1) және екінші хорданын (А2, В2) нүктелерінің нөмірлері. Жолдағы сандар пробелмен арқылы бөлінген.

 

Мәліметтерді  шығару форматты

Шығыс файлға әрбір қос хорладың үшін бір жол жазылу керек-  YES, егер хордалар  қиылып кетеді, немесе Noегер хордалар қиылыспайды (сүйкелмейді).

 

Мысал

A.in

A.out

4 3

1 3 2 4

1 2 3 4

1 2 3 2

YES

NO

YES

 

uses crt;

var e,w,q,i,j,k,l,m,n:longint;

    a:array[1..4,1..100]of longint;

    b:boolean;

    function min(var i,j:longint):longint;

    begin

        if(i<j)then min:=i else min:=j;

    end;

    function max(var i,j:longint):longint;

    begin

 

        if(i<j)then max:=j else max:=i;

    end;

    begin

 assign(input,'a.in');reset(input);

 assign(output,'a.out');rewrite(output);

 readln(n,k);

   for i:=1 to k do readln(a[1,i],a[2,i],a[3,i],a[4,i]);

   for i:=1 to k do begin

   if(a[1,i]=a[3,i])or(a[2,i]=a[4,i])then writeln('YES')else begin

   b:=false;

   q:=abs(a[1,i]-a[2,i]);

   if(q<=n-q)then begin

    for l:=min(a[1,i],a[2,i])to max(a[1,i],a[2,i])do begin

    for j:=max(a[3,i],a[4,i])downto min(a[3,i],a[4,i])do

    if(l=j)then begin

        b:=true;

        writeln('YES');

        break;

    end;

    if b then break;

    end;

   if(not b)then writeln('NO');

   end else begin

       e:=max(a[1,i],a[2,i]);

       w:=max(a[3,i],a[4,i]);

       b:=false;

    for l:=min(a[1,i],a[2,i])to max(a[1,i],a[2,i])do begin

    if(e=n+1)then e:=1 else inc(e);

    for j:=min(a[3,i],a[4,i])to max(a[3,i],a[4,i])do

    begin

    w:=w-1;

    if(e=w)then begin

        b:=true;

        writeln('YES');

        break;

    end; end;

    if b then break;

    end;

    if not b then begin writeln('NO');end;

      end;

   end;  end;

   close(input);close(output);

   end.

№67  Бөлгіштер

Енгізу файлының аты: В.in

Шығару файылының аты: В. Out

Есептің жауабы  файылының аты: В. pas

Уақыт шектеу: 2 секунд

Жадыға шектеу:  64 мегабайт

 

А оң саны В санының бөлгіші аталып жатыр, егер В А санға қалдықсыз бөлінсе. Мысалы, 15 санында 4 бөлгіш бар: 1,3,5,15. Әрбір берілген сандардың үшін, оның бөлгіштердің саны жұп сан немесе тақ сан болады ма  сіздерге анықтау қажетті.

 

Мәліметтерді енгізу форматы

Кіріс файлдың бірінші жолында бір бүтін сан N (1<n<=105) жазылған. Келесі жолда  N бүтін сан  Хі(1<=Xi<=1018) жазылған. Бір жолдағы сандар аралары пробелмен бөлінген.

 

Мәліметтерді шығару форматы

Шығыс файлда аралары пробелмен бөлінген N сан жазылу керек: i- ші сан 0 деп жазылады, егер Х, бөлгіші саны жұп сан болады, немесе 1, егер Х, бөлгіші саны тақ сан болады.

 

B. in

B. out

2

4 5

1 0

uses crt;

var i,j,k,l,m,n:longint;

    function prime(n:longint):boolean;

    var i:longint;

    begin

        prime:=true;

        for i:=2 to trunc(sqrt(n))do

        if(n mod i=0)then begin prime:=false;break;end;

    end;

    procedure aaa(l:longint);

    var i:longint;

 begin

    k:=2;

        for i:=2 to (l div 2) do

        if(l mod i=0)then inc(k);

    end;

    begin

  assign(input,'b.in');reset(input);

 assign(output,'b.out');rewrite(output);

    readln(n);

    for i:=1 to n do

   begin

   read(l);

        if(prime(l))then write('0 ')else begin

            k:=0;

            aaa(l);

            if(odd(k))then write('1 ')else write('0 ');

        end;

    end;

 close(input);close(output);

    end.

 

№68  Пайда.

Енгізу файлының аты: C.in

Шығару файылының аты: C. Out

Есептің жауабы  файылының аты: C. pas

Уақыт шектеу: 2 секунд

Жадыға шектеу:  64 мегабайт

 

Компьютер процессор бөлігінен және монитордан құралады.Қоймада цессор бөлігі және М  монитор болып жатыр. І-ші  процессор бөлігінің бағасы- Аі тугрик, j-ші монитордың бағасы- Вj тугрик. Дүниежүзілік қаражаттық дағдарыс артынан, і- ші процессор бөлігінен және j-ші монитордан құралған компьютердің бағасы Аi,Bj  (көбейту) тугрик болады. Сіздерге дәл осылай компьютерлердің ең үлкен мүмкін саны  жинау керек, олардың барынша ең көп мүмкін болған жиынтық бағасы болу үшін.

Мәліметтерді енгізу форматты

Кіріс файлдың бірніші жолда екі бүтін сан тұрады N және М (1<=N, M<=1000). Екінші жолда N бүтін сан тұрады: і-ші жолдағы сан Аі. Үшінші жолда М бүтін сан тұрады: j-ші жолдағы сан Вj(1<=Aj, Bj<=1000). Жолдағы сандар пробелмен арқылы бөлінген.

 

Мәліметтерді шығару форматы

Шығыс файлға пробелмен бөлінген екі бүтін сан жазылу керек-ең үлкен мүмкін болған компьютердің саны және олардың барынша ең көп мүмкін болған жиынтық бағасы.

Мысал

C.in

C.out

3 2

1 2 3

4 5

2 23

 

uses crt;

type mas=array[1..1000]of longint;

var

i,j,k,l,m,n,min:longint;

sum:longint;

a,b:mas;

procedure sort(var a:mas;n:longint);

begin

    for i:=1 to n-1 do

     for j:=i+1 to n do

     if(a[i]<a[j])then begin

     l:=a[i];

     a[i]:=a[j];

     a[j]:=l;

     end;

     end;

begin

 assign(input,'c.in');reset(input);

 assign(output,'c.out');rewrite(output);

 readln(n,m);

 for i:=1 to n do read(a[i]);

 for j:=1 to m do read(b[j]);

 sort(a,n);sort(b,m);

 if(n>m)then min:=m else

 min:=n;

 for i:=1 to min do

 sum:=sum+(a[i]*b[i]);

 write(min,' ',sum);

 close(input);close(output);

 end.

 

№69  Жалқаулық.

Енгізу файлының аты: 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.

 

№70  Серіппе

Енгізу файлының аты: E.in

Шығару файылының аты: E. Out

Есептің жауабы  файылының аты: E. pas

Уақыт шектеу: 2 секунд

Жадыға шектеу:  64 мегабайт

N  мөлшерлі серіппе- натуральды сандарлардың NxN мөлшерімен кестесі, кесте орталығында әрқашан 1 тұрады, одан оң жақтан 2, серіппе қарсы сағаттық  тілдің бұралып қалып жатыр. N  мөлшерлі серіппесін шығарыңыздар.

Мәліметтерді енгізу форматы

Кіріс файлдың жекеше жолында бір бүтін сан жазылған-  N(1,=N<100, N-тақ сан).

Мәліметтерді  шығару форматы

Шығыс файылдың N жолда N бүтін саны жазу керек- N мөлшерлі спираль. Сандар аралары пробелмен бөлінген болу керек.

 

Мысал

E.in

E. out

1

1

3

5 4 3

6 1 2

7 8 9

5

17 16 15 14   13

18  5   4   3    12

19  6   1   2    11

20  7   8   9    10

21 22 23  24  25

uses crt;

var w,q,o,i,j,k,l,m,n:longint;

a:array[1..100,1..100]of longint;

b:array[1..100,1..100]of boolean;

procedure aaa(l:longint);

begin

if(n>0)then begin

inc(m);

 

if(m=1)then begin

    for i:=1 to n do begin

    if(b[l,i]=false)then begin

    b[l,i]:=true;

    a[l,i]:=o;

    dec(o);

    end;

    end;

    aaa(n);

end else

if(m=2)then begin

for i:=1 to n do

begin

if(b[i,l]=false)then begin

    b[i,l]:=true;

    a[i,l]:=o;dec(o);

end;

end;

aaa(n);

end else

if(m=3)then begin

    for i:=n downto 1 do

    if(b[l,i]=false)then begin

        a[l,i]:=o;dec(o);

        b[l,i]:=true;

    end;

inc(w);

aaa(w);

end else

if(m=4)then

begin

for i:=n downto 1 do

if(b[i,l]=false)then begin

    b[i,l]:=true;a[i,l]:=o;dec(o);

end;

m:=0;

if(m=0)then begin inc(k);dec(n);end;

aaa(k);

end;

end;end;

begin

assign(input,'e.in');reset(input);

assign(output,'e.out');rewrite(output);

w:=0;

readln(n);q:=n;k:=1;

m:=0;o:=sqr(n);

fillchar(a,sizeof(a),0);

fillchar(b,sizeof(b),false);

aaa(1);

for i:=q downto 1 do

begin for j:=q downto 1 do write(a[i,j],' ');writeln;end;

close(input);close(output);

end.

 

№71   Дәрежесі

Енгізу файлының аты: 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.

№72  Спортшы бірінші күні 10 км жүгірді. Әр күні ол  күнделікті жүгіру нормасына 10 %  қосып отырды.Спортшы неше күнен кейін:

а) 20 км астам жол жүгіреді;

b) қосқанда 100 км астам жол жүгіреді.

a) Program F7_a1;

Var  s: real; i: integer;

Begin

S:=10; i:=1;

While s<=20 do

Begin

I:=i+1;s:=s+0.1*s end;

Write (‘20 км астам жол жүгіреды ол ',I,’күні’);

End.

 

b) Program F7_b1;

Var  s, sum: real; i: integer;

Begin

S:=10; i:=1; sum:=s;

While sum<=100 do

Begin

I:=i+1;s:=s+0.1*s;sum:=sum+s end;

Write (‘қосқанда 100 км астам жол жүгіреді, ол.',I,’күні’);

End.

№73  Берілген үштаңбалы санның бірдей цифрларының бар екенін анықтайтын программа жаз.

 

Program F8_a1;

Var x,x1,x2,x3: integer;

Begin  writeln; write(‘үш таңбалы санды енгіз’); read(x);

x1:=x mod 10;

x2:= x mod 10;

x:=x div 10;

x3:=x div 10;

if (x1=x2) or (x2=x3) or (x1=x3) then  write(‘бар ’) else  write (‘ жоқ’);

end.

№74   N элементтен түратын массив берілген. Оны төмендегі берілген ереже бойынша өзгертіп жаңа массив құрастыратын программа жаз(егер хкі- мағынасында берілсе  к-жаңа массивтің элементы болады):

a)      Xri =max  x, егер       I<=i<=k;

b)       массив элементтерінің  кері жағдайдағы;

c)      XiN=XI, xik=xk+1 , мұнда k=1,2,…N-1 .

 

a)      Program F9_d1;

Const n=5;

Var  x:array[1..n] of integer; i, k, max : integer;

Begin

For I:=1 to n do

Begin

  Write(‘массив элементінің нөмірін енгіз, i); readln (x[i]);

End;

For k:=1 to n do

Begin

 Max= x[k];

For i:=1 to k do if x [i]>  max  then max:= x[i];

X[k]:= max;

End;

For i:=1 to n do write (‘  ‘,x[i])

End.

             

b)       Program F9_d2;

Const n=5;

Var  x:array[1..n] of  integer; i,z : integer;

Begin

For I:=1 to n do

Begin

  Write(‘массив элементінің нөмірін енгіз, i); readln (x[i]);

End;

For i:=1 to n do

Begin

 z:= x[i];

 x [i]:= x[n-i+1];

x[n-i+1]:= z;

End;

For i:=1 to n do write (‘  ‘,x[i])

End.

 

c)      Program F9_d3;

Const n=5;

Var  x:array[1..n] of integer; I, z : integer;

Begin

For I:=1 to n do

Begin

  Write(‘массив элементінің нөмірін енгіз, i); readln (x[i]);

End;

Z:= x[n];

                           x [n]:= x[1];

for i:=1 to n-2 do x[i]= x[i+1];

x[n-1];=z;

For i:=1 to n do write (‘  ‘,x[i])

End.

 

№75   Х және У  массив элементтері кему ретімен орналасқан. Массив элементтерін  бір  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])

№76   Қашықтан сегіру жарысының қортындысы келесі матрицада көрсетіледі 5х3(5- спортшы, 3- әр споршының кезегі). Қандай споршы, қай кезекте ең жоғары нәтиже көрсететін программа жаз.

   Program f11_d1;

   Var I,j,max,k,m: integer; a:array[1..5,1..3]  of  integer;

 Begin

      For  i:=1  to  5  do

      For   j:=1 to 3 do

Begin

     Write(‘енгіз а ’, I,j); read (a[I,j]);

End;

Writeln(‘енгізілген екі өлшемді массивтің түрі:’);

For  i:=1 to 5 do

Begin

  For  j:=1 to 3  do  write(a[I,j]:3);

Writeln end;

Max:=a[1,1]; k:=1; m:=1;

For   i:=1  to 5  do

For  j:=1  to 3  do

If  a(I,j)>  max  then  begin  max:=a[I,j];  k:=I; m:=j  end;

Write(‘жоғары нәтиже =’. max);

Write(‘споршы нөмірі’, k,’кезекті нөмірде, m)  end.

№77  3х3 берілген екі өлшемді массивтің қатар , бағана  және диагональ бойынша сандардың қосындысы бірдей матрицаны шығаратын программа жаз. Мысалы:

 

2

9

4

7

5

3

6

1

8

 

Program f12_d1;

Const  n=3;

Var I,j,x1,k,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;

X1:=0;

For  i=1  to  n  do  x1:=x1+ a(1,i)  k:=0; for  i:=1  to  n  do

Begin  s:=0;

For  j:=1  to  n  do  s:=s+a[I,j];

If  s=x1  then  k:=k+1;

End;

For   i:=1  to  n  do

Begin   s:=0;

For  j:=1   to  n  do  s:=s+a[j,i];

If  s=x1  then  k:=k+1  end;

S:=0;  s1:=0;

For  i:=1 to  n  do  begin

S:=s+a[I,i];

S1:=s1+a[I,n-i+1]  end;

If  s=x1  then  k=k+1;  if  s1=x1  then  k=k+1;

If  k=2*n+2   then   write(‘магикалық квадрат’)  else  write (‘жоқ’)  end.

№78  Латын кестесі

Берілген 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(‘латын квадрат’);

Goto 2;

1: write(‘’);

2: end.

 

№79 Берілген санды ондық жүйеден : а) екілік санау жүйесіне;

b) сегіздік санау  жүйесіне аударатын программа жаз.

Program f14_d1;

Var  x,x1:integer;

Function  dv(x:integer): integer;

Var  y,z,k: integer;

Begin z:=1; y:=0;

While  x> 0  do  begin

K:=x   mod 2;  y:=y+k*z; z:=z*10;x:=x  div  2  end; end;

Function   vos(x: integer): integer;

Var  y,z,k: integer;

Begin  z:=1;  y:=0;

While  x>0  do  begin

K:=x  mod  8;  y:=y+ k*z; z:=z*10; x:=x  div  8

End; end;

Begin

Write(‘ санды енгіз’,x); x1:= dv(x);

Write(‘сан’, x,’екілік санау жүйесі=’, x1);

X1:=vos(x);

Write(‘саны’, x,’сегіздік санау жүйесінде=’, x1);

End.

№80   

                     1,            мұнда  n =0

Xn=  {    1/x|n|          мұнда  n< 0

              X*xn-1      мұнда  n > 0

Х саның  n- дәріжесін, жоғардағы формула  бойынша табатын программа жаз.

 

Program f15_d1;

Var  x,y:real; k,n:integer;

Function xn(x:real; n: integer): real;

Begin

  If  n=0  then  xn:=1  else  xn:=x*xn(x,n-1) 

 End;

Begin

Writeln; write( ‘x,n енгіз’); readln(x,n);

If  n< 0 then  begin k:=-1; n:=abs(n)  end;

Y:=xn(x,n);

If  k=-1  then  y:=1/y;

Write(‘x-тің  дәрежесі  n=’, y) end.

 

№81 M мен N  натурал сандары берілген. М  санынан  кіші және   N санның  цифрлардың квадратына  тең  сандарды табатын программа жаз.

Program f16_d1;

Label 1;

Var  I,j,m,n,x,a,s: integer;

Begin  writeln; write(‘M,N енгіз’  ) ; readln(m,n);

For i:=1 to  m-1  do  begin

S:=0; x:=I;

1: a:=x mod  10;  s:=s+a;

X:=x  div  10;

If  x> 0  then  goto 1;

If  s*s= n   then  write(‘  ‘, i)

End;

Readln;

End.

 

№82  Берілген натурал санды 16-лық есептеу өлшеміне  ауыстыратын программа жаз.

Program f17_d1;

Var n,k,r,x,x1: integer; as.bs: string;

Begin

Writeln; write(‘ондық  санды енгіз ’); read (x); x1:=x;

As:= ‘’; write (‘есепетеу жүйенің негізін енгіз’); read(n);

While  x> 0 do  begin k:=x  mod  n; x:=x div  n;

If  k < 10  then  str (k,bs)  else  bs:= chr(ord(‘A’)+k-10);

As:= bs+as  end;  write (‘сан’, x1,’ есесптеу өлшемінің негізі’, n,’=’, as)  end.

 

№83  Берілген мәтіннің ішіндегі ең ұзын  сөзды  таңдайтын программа жаз.

Program f18_d1;

Label 1;

Var  I,m,l,k,d: longint; t,n: string;

Begin

  Writeln; write (‘мәтін енгіз’); readln(t); t:=+’ ’;

I:= length(t); m:=0; k:=1; i:=1;

While i<=l  do  begin

If  copy (t,I,1)=’’  then   begin  d:=i-k;

If  d> m  then   begin

M:=d; n:= copy(t,k,d);

End;

K:=i+1; end;

1: I:=i+1  end;  write(‘ ең ұзын сөз’’  ‘,n,’’’әріптер саны  ‘, m); readln; end.

№84 Мәтін ішіндегі  сөздердің соңында берілген әріп қанша кездеседі, оны пайыз түрін аудар.

Program f19_d1;

Var  I,s,l,k,s1:  longint; t,a: string;  p: real;

Begin

    Writeln; write (‘мәтін енгіз’); readln(t); t:=+’ ’;

I:= length(t); write(‘берілген әріпті енгіз ’); readln(a);

K:=1; s:=0; s1:=0;

For  i:=1 to l  do  begin

If   copy  (t,I,1)= ‘ ‘   then  begin

If  copy  (t,k,1)= a   then s1:=s1+1;

S:=s+1; k:=i+1;

End; end; p:=s1*100/s;

Write(‘берілген әріптің пайызы ’’’, а, ‘’’ тең=’, p);  readln; end.

 

№85 Фамилия  тізімін пробел арқылы енгізіп, осы  тізімді берілген әріптен бастап құрайтын программа жаз.    

Program f20_d1;

Var  I ,m ,l, k, d: longint; t, a: string;

Begin writeln; write(‘тізімді енгіз ’); readln(t); t:=t+’;

L:= length(t); write(‘берілген әріпті енгіз  ‘); readln(a); k:=l;

For   i:=1  to l  do  begin

If  copy (t,I,1)= ‘  ‘  then  begin

If  copy (t,k,1)= a  then   write(‘ ‘,  copy(t,k,i-k)); k:=i+1;

 end; end;  readln;  end.

 

№86 Берілген  екі таңбалы санды жазу  түрінде жазылатын программа жаз (мысалы, 64 –ті  «алпыс төрт » деген мәлімет шығару).

Program  f21_d1;

Label 1;

Var  n,n1, n2: longint; s: string;

Begin

 Writeln; write(‘’); readln(n);

N1:= n  mod  10;

N2:= n  div  10;

If  (n>=10)  and  (n<20)  then  begin

If  n=10  then  s:=’он’;

If  n=11  then  s:=’он  бір’;

If  n=12  then  s:=’он екі’;

If  n=13  then  s:=’он  үш’;

If  n=14  then  s:=’он  төрт’;

If  n=15  then  s:=’он  бес’;

 If  n=16  then  s:=’он  алты’;

If  n=17  then  s:=’он  жеті’;

 If  n=18  then  s:=’он  сегіз’;

If  n=19  then  s:=’он  тоғыз’;

Goto 1  end;

If  n2=2  then  s:=’жиырма’;

If  n2=3  then  s:=’отыз’;

If  n2=4  then  s:=’қырық’;

If  n2=5  then  s:=’елу’;

If  n2=6  then  s:=’алпыс’;

If  n2=7  then  s:=’жетпіс’;

If  n2=8  then  s:=’сексен’;

If  n2=9  then  s:=’тоқсан’;

If   n1=1   then  s:=s+’бір ‘;

If   n1=2   then  s:=s+’ екі‘;

If   n1=3   then  s:=s+’үш ‘;

If   n1=4   then  s:=s+’төрт ‘;

If   n1=5   then  s:=s+’ бес‘;

If   n1=6   then  s:=s+’ алты‘;

If   n1=7   then  s:=s+’жеті ‘;

If   n1=8   then  s:=s+’ сегіз‘;

If   n1=9   then  s:=s+’ тоғыз‘;

1:write(s);

Readln; end.

 

№87  Берілген квадратық матрицаның элементтерін спираль бойымен орналастыр. Мысалы, 7 х7 квадраттық матрицасы берілген, оны толықтыру ретілгі

1         2     3    4    5    6    7

24   25  26  27  28   29  8

23   40  41  42  43  30   9

22  39  48   49  44  31  10

21  38  47   46  45  32  11

20  37  36   35  34  33  12

19  18  17   16  15  14  13

           

              Program f22_d1;

            Label 1,2;

            Const  n=7;

            Var  I,j,k,c,r,m,g,p: integer;

            Begin  k:=1; c:=0; r:=1;

            Writeln;

            For  i:=1  to  (n  div 2)  +1  do  begin

            For  j:=I  to n-i+1  do  begin

            C:=c+1; a[r,c]:=k; k:=k+1; write(a[r,c], ‘ ’)  end;

For  m:=i+1  to  n-i+1  do  begin  r:=r+1; a[r,c]:=k; k:=k+1  end;

For  p:=n-I  downto  I  do  begin  c:=c-1; a[r,c]:=k; k:=k+1  end;

For  q:=n-i+1  downto  i+2 do begin  r:=r-1; a[r,c]:= k; k:=k+1  end; end;

Writeln; for  i:=1  to  n  do  begin  writeln;

For j:=1  to  n  do  write(a[I,j]-5); end; end.

№88  a,b,c  натурал сандары берілген, олар келесі  күнің  күнін, айын және жылын белгілейтін сандар болатын программа жаз.  

Program f23_ d1;

Label 1;

Var  a,b,c,a1,b1,c1: integer;

D: array[1..12]  of  integer;

Begin writeln; write(‘күн, ай және жылын енгіз’); read(a,b,c);

D[1]:=31; if  c  mod  2 =0  then  d[2]:=29  else  d[2]:=28;

If(c  mod  100=0)  and  (c mod 400 <>0)  then d[2]:=28;

D[3]:=31; d[4]:=30; d[5]:=31; d[6]:=30; d[7]:=31; d[8]:=31;

d[9]:=30; d[10]:=31; d[11]:=30; d[12]:=31;

if (b=12) and (a=31) then  begin  a1:=1; b1:=1; c1:=c+1; goto 1 end;

if  a=d[b]  then  begin a1:=1; b1:=b+1;c1:=c  end  else  begin  a1:=a+1; b1:=b; c1:=c  end;

1: writeln; write(‘’, a1,’’,b1,’’,c1); end.

№89 Мұғалімдер күні жыл сайын қазан айның бірнші жексенбісінде  аталып өтеді. Берілген n саны  жыл нөмірін белгілейді. Көрсетілген жылдың мұғалімдер мерекесіне  сәйкес келетін санын анықта.

Program f24_d1;

Label 1,2,3;

Var  n,i,s,s1,d1,v,v1,d2,c : integer;

Begin   writeln; write(‘ жылын енгіз’); read(n);

S:=1; for i:=1  to  n-1  do  begin

if (I  mod  4)= 0  then  v:=366 else v:=365;

if (I  mod  100= 0)  and (I  mod 400 <>0)  then  v:=365 ;

 

s:=s+v;end; s1:=5*31+28+3*30;

if (n  mod  4)= 0  then  v1:=1 else v:=0;

if (n  mod  100= 0)  and (I  mod 400 <>0)  then  v:=0;

s1:=s1+v1; s:=s+s1;d2:=s  mod  7;  c:=7-d2;

write(‘c,s1,d1,d2’,c,s1,d1,d2);

if  c >7  then  c:=c-7;  write(‘f’,v); writeln; write(‘’); 

End.


 

Скачано с www.znanio.ru



 

ОЛИМПИАДАҒА ДАЙЫНДАЛУҒА АРНАЛҒАН

ОЛИМПИАДАҒА ДАЙЫНДАЛУҒА АРНАЛҒАН

Екі санның қосындасын табу программасын құру керек

Екі санның қосындасын табу программасын құру керек

Begin Readln (a,b);

Begin Readln (a,b);

Writeln (‘x , y-?); Readln (x, y);

Writeln (‘x , y-?); Readln (x, y);

Р =1*2*3 … * N N ! факториалды табу программасын жаз

Р =1*2*3 … * N N ! факториалды табу программасын жаз

Program tak and jup

Program tak and jup

For i:=l to 10 do Writeln(‘a[‘,I, ’]=’,a[i]);

For i:=l to 10 do Writeln(‘a[‘,I, ’]=’,a[i]);

Program esep 5 ; Uses crt;

Program esep 5 ; Uses crt;

Екі өлшемді жиым элементтерінің квадраттарын табатын программа құру керек

Екі өлшемді жиым элементтерінің квадраттарын табатын программа құру керек

А (3,3) матрицасының оң элементтерінің қосындысын табу программасын құр

А (3,3) матрицасының оң элементтерінің қосындысын табу программасын құр

Var i,j: byte; begin for i:=2to 5do begin for j:=1to 10 do writeln ( i,`x`j,`=`,i*j); writeln end; end

Var i,j: byte; begin for i:=2to 5do begin for j:=1to 10 do writeln ( i,`x`j,`=`,i*j); writeln end; end

K2, ’=’, k1-k2); ‘d’: writeln (kl, ’div’, k2, ’=’, k1divk2); ‘m’: writeln (kl, ’mod’, k2, ’=’, k1modk2);

K2, ’=’, k1-k2); ‘d’: writeln (kl, ’div’, k2, ’=’, k1divk2); ‘m’: writeln (kl, ’mod’, k2, ’=’, k1modk2);

Begin Writeln; Writeln;Halt;End;

Begin Writeln; Writeln;Halt;End;

For j=i+1 to 5 k=0 IF a(i)<a(k) then k=j

For j=i+1 to 5 k=0 IF a(i)<a(k) then k=j

IF k=5 then End №53 А матрицасы берілген

IF k=5 then End №53 А матрицасы берілген

For i=1 to 4 Next i For i=1 to 4

For i=1 to 4 Next i For i=1 to 4

Label 10; Var n, m, k, r: integer;

Label 10; Var n, m, k, r: integer;

Else Writeln (‘ m : =’, жұмысқа қабылдамау ) ;

Else Writeln (‘ m : =’, жұмысқа қабылдамау ) ;

YES'); break; end; if b then break ; end; if(not b)then writeln('NO'); end else begin e:=max(a[1,i],a[2,i]); w:=max(a[3,i],a[4,i]); b:=false; for l:=min(a[1,i],a[2,i])to max(a[1,i],a[2,i])do begin if(e=n+1)then e:=1 else…

YES'); break; end; if b then break ; end; if(not b)then writeln('NO'); end else begin e:=max(a[1,i],a[2,i]); w:=max(a[3,i],a[4,i]); b:=false; for l:=min(a[1,i],a[2,i])to max(a[1,i],a[2,i])do begin if(e=n+1)then e:=1 else…

Пайда. Енгізу файлының аты:

Пайда. Енгізу файлының аты:

Жалқаулық. Енгізу файлының аты:

Жалқаулық. Енгізу файлының аты:

Серіппе Енгізу файлының аты:

Серіппе Енгізу файлының аты:

Дәрежесі Енгізу файлының аты:

Дәрежесі Енгізу файлының аты:

Х-Y) mod Z=((X mod Z) + (Y mod

Х-Y) mod Z=((X mod Z) + (Y mod

Var x,x1,x2,x3: integer; Begin writeln; write(‘ үш таңбалы санды енгіз ’); read(x); x1:=x mod 10; x2:= x mod 10; x:=x div 10; x3:=x div 10;…

Var x,x1,x2,x3: integer; Begin writeln; write(‘ үш таңбалы санды енгіз ’); read(x); x1:=x mod 10; x2:= x mod 10; x:=x div 10; x3:=x div 10;…

Begin Write(‘ массив элементінің нөмірін енгіз ’ , i); readln (x[i]);

Begin Write(‘ массив элементінің нөмірін енгіз ’ , i); readln (x[i]);

Write(‘ споршы нөмірі ’, k,’ кезекті нөмірде ’ , m) end

Write(‘ споршы нөмірі ’, k,’ кезекті нөмірде ’ , m) end

Begin Write(‘’,I,j); read( a[I,j]);

Begin Write(‘’,I,j); read( a[I,j]);

Program f15_d1; Var x,y:real; k,n:integer;

Program f15_d1; Var x,y:real; k,n:integer;

Мәтін ішіндегі сөздердің соңында берілген әріп қанша кездеседі, оны пайыз түрін аудар

Мәтін ішіндегі сөздердің соңында берілген әріп қанша кездеседі, оны пайыз түрін аудар

If n2=9 then s:=’ тоқсан ’;

If n2=9 then s:=’ тоқсан ’;

Program f24_d1; Label 1,2,3;

Program f24_d1; Label 1,2,3;
Скачать файл