Ќазаќстан Республикасыныњ бiлiм жєне ѓылым министрлiгi



бет1/11
Дата06.01.2022
өлшемі153 Kb.
#12697
түріПрограмма
  1   2   3   4   5   6   7   8   9   10   11

ПОӘК 042-14-02-03.1.06.134/1-2012

№1 баспа

беттің -сі




Массивтер
Индексті айнымалылардың жиынтығын - массивтер дейді. Массивтерді программада ќолдану үшін, оларға белгілі бір ат беріледі. Содан соң программаның VAR бөлімінде ARRAY ќызметші сөзімен сипаттап, компьютердің жадынан массив элементтеріне орын бөледі. Массивтер бір өлшемді және екі өлшемді (матрицалар) болып бөлінеді. Массив элементтерін өндіру және шығару цикл арќылы жүзеге асырылады. Екі өлшемді массивтердің бірінші индексі ќатардың, ал екіншісі - бағанның номерін білдіреді. Екі өлшемді массивтерді ендіргенде екі цикл ұйымдастырылады, сыртќы цикл - ќатарлар бойынша және ішкі цикл - бағандар номері бойынша.
Бір өлшемді массивтердің сипатталу түрлері:

CONST N=100; { N-элементтер саны}

TYPE MAS=ARRAY [1..N] OF REAL;

VAR A: MAS;

Немесе бірден VAR бөлімінде:

CONST N=100;

VAR A: ARRAY[1..N] OF REAL;

Екі өлшемді массивтер (матрицалар) сипатталу түрлері:

CONST N =100; M=100;

TYPE MAS = ARRAY [1..N, 1..M] OF REAL;

{N- ќатарлар саны, М- бағдар саны}

Массивтерге программа ќұру.

1. Массивтің теріс элементтерінің ќосындысын шығару.

PROGRAM PR1;

CONST N=20;

VAR K:INTEGER;X:ARRAY [1..N] OF REAL;

S:REAL;

BEGIN FOR K:=1 TO N DO REFD (X[K]);

S:=0; FOR K:=1 TO N DO IF X [K]<0

THEN S:=S+X [K];

WRITELN (Теріс элементтер ќосындысы',S:7:2); END.
2. Массивтің 5-тен үлкен элементтерінің көбейтіндісі.

PROGRAM PROIZV;

CONST N=20;

VAR K,N:INTEGER;

X:ARRAY [1..100] OF REAL; S: REAL;

BEGIN WRITLEN ('Массив элементтерінің санын енгіз');

READ (N); FOR K:=1 TO N DO IF X[K]> 5 THEN

S:=S*X[K];

WRITELN ('5 -тен үлкен элементтер ќосындысы=',S:7:2); END.
3. Массивтің таќ номерлері элементтерінің ішінде 0-ге тең элементтерінің санын шығару.
PROGRAM POV;

TYPE MAS=ARRAY[1..10] OF REAL;

VAR K: ITEGER; X:MAS; S: REAL;

BEGIN


FOR K:=1 TO 10 DO READ (X[K]);

S:=0;


FOR K:=0 TO 9 DO BEGIN K:=K+1; IF X [K]=0 THEN

S:=S+1; END;

WRITELN ('0-ге тең элементтер саны=',S:7:2); END.
4. Массивтің жұп номерлері элементтерінің ішінде 5-тен артыќ элементтерінің номерін экранға шығару.
PROGRAM POV;

TYPE MAS =ARRAY [1..10] OF REAL;

VAR K: INTEGER; X:MAS; S:REAL;

BEGIN


FOR K:=1 TO 10 DO READ (X[K]);

S:=0;


FOR K:=1 TO 10DO

BEGIN K:=K+1; IF X[K]>5THEN

WRITELN ('5-тен үлкен элементтер саны =',K); END'END.
5.Массивтің бүтін элементтерін шығару.
PROGRAM 2PR2;

CONST N=5;

VAR A:?ARRAY [1..N] OF REAL;

P,K:INTEGER;

BEGIN

FOR K:=1 TO N DO



IF A [K]=TRUNC(A [K]) THEN P:=P+1;

WRITELN(?бүтін элементтер=?,P); END.


6.Массивтің жұп элементтерінің санын табу.
PROGRAM PR3;

CNST N=15;

VAR A: ARRAY[1..N]OF INTEGER;

P,K,I:INTEGER;

BEGIN

FOR K:=1 TO N DO



IF ODD(A[K]) THEN P:=P+1;

I:=N-P;


WRITELN('Жұп элементтер саны=',); END.
7. Массивтің таќ элементтерін экранға шығару.
PROGRAM NESHETN;

LABEL 1;


CONST N=15;

VAR A:ARRAY [1..N] OF INTEGER;

P,K:INTEGER;

BEGIN


FOR K:=1 TO N DO READ (A[K]);

P:=0;


FOR K:=1 TO NDO

BEGIN


IF ODD (A[K]) THEN GOTO 1 ELSE

WRITELN(?Таќ элемент=?,A[K]);

1:END;END.
8.Массивтің ең үлкен элементін шығару.
A) DOWNTO операторымен

PROGRAM MAX; CONST N=10;

VAR A:ARRAY [1..N] OF REAL; P:REAL; K,I:INEGER;

BEGIN FOR K:=1 TO N DO READ ( A[K]);

P:=A[N]; I:=N;

FOR K:=N DOWNTO 1 DO

IF A[K]>P THEN BEGIN I:=K; P:=A[K] END;

WRITELN('Ең үлкен элемент='A[I]:4:2);

END.
В) FOR ТО операторымен

PROGRAM MAX;

CONST N=10;

VAR A:ARRAY [1..N]OF REAL; P:REAL;

K,I:INTEGER;

BEGIN


FOR K:=1 TO N DO READ (A[K]);

P:=A[1]; I:=N;

FOR K:=1 TO N DO

IF A[K] >P THEN BEGIN I:=K; P:=A[K] END;

WRITELN (?=Ең үлкен элемент?,A[I]:4:2);

END.
9. Спортсмендерге ќорытынды баға шығару программасы.

( Гимнастика жарысында спортсмендердің жаттығуларын 10 төреші бағалайды.

Ќорытынды баға шығарғанда, жарыс ережесі бойынша жалпы бағадан спортсменнің ең төменгі жєне ең жоғарғы алған бағаларын бір- бірден алып тастап, арифметикалыќ ортасын шығарады.


PROGRAM SRBALL;

VAR X:ARRAY [1..10] OF INTEGER;

A: REAL; K,S, MAX, MIN:INTEGER;

BEGIN


FOR K:=TO 10 DO READ (X[K]);

MIN:=X[1];

FOR K:=2 TO 10DO

IF X[K]>MAX THEN MAX:=X[K];

S:=0;

FOR K:=1 TO 10 DO S:= S+X[K]; A:= (S-MIN-MAX)/8;



WRITELN (?Ќорытынды баға A=?,A[I]:7:3);

END.
10. Массив элементтерін кему бойынша реттеу.


PROGRAM UBIV;

VAR K,I:INTEGER;

X:ARRAY [1..10] OF INTEGER;

S,MAX,A:INTEGER;

BEGIN

FOR K:=1 TO 10 DO READ (X[K]);



FOR K:=10 DOWNTO I DO

IF X[K]> MAX THEN

BEGIN A:=K; MAX:=X[K]) END;

X[A]:=X[I];

X[I]:=MAX;

END;


FOR K:=1 TO 10 DO WRITELN ('X[K]:5);

END.
11.Сыныптағы әр оќушының үлгерім проценті берілген, үлгерімі ең төмен оќушының сыныптың орта үлгерім процентіне жетуі үшін үлгерімін ќанша процентке арттыру керектігін есептеу программасы.


PROGRAM UKP;

VAR K,I:INTEGER;

X:ARRAY [1..20] OF REAL;

S,MIN,A:REAL;

BEGIN

PEREAT


READLN (X[1]>0);

UNTIL (X[1]<101) AND (X[1]>0);

MIN:=X[1]; S:=MIN;

FOR K:=2 TO 20 DO

BEGIN

REPEAT


READLN (X[K]);

UNTIL (X[1]<101) AND (X[1]>0);

S:=S+X[K];

IF MIN>X[K] THEN MIN:=X[K]

END;

WRITELN(?үлгерімді-',(S/5-MIN):7:2,'- процентке көбейту ќажет');



END.



Достарыңызбен бөлісу:
  1   2   3   4   5   6   7   8   9   10   11




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет