Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  9 класс  /  Массив түрлері практикалық тапсырма

Массив түрлері практикалық тапсырма

Массив түрлері практикалық тапсырма
24.04.2020

Содержимое разработки

Зертханалық жұмыс №7

Тақырыбы: Массив.

Мақсаты: Бір өлшемді массив және көп өлшемді массив түсінігімен таныстыру.

Бір өлшемді массив

ЭЕМ-нің жадында сандардың бір-бірімен байланысқан көптеген мәндерін сақтау үшін индексті айнымалылар, яғни массивтер қолданылады. Массив дегеніміз  бірыңғай шамалар тізбегінің бір атаумен  аталып  реттелген жиыны. Математикадағы вектор, матрица осы массивке мысал бола алады. Тізбектің айнымалылары массив элементтері деп аталады. Оның элементтері индекстері бойынша ажыратылады. Егер айнымалы бір индексті элементтерден тұрса, онда бір өлшемді массив болады. Олардың индекстері сандармен немесе белгілі бір әріптермен жақша ішінде жазылады, мысалы

А(І),  С(12),  К(100)

Массивпен жұмыс істеу үшін оның әр элементінің мәні белгілі болуы тиіс. Сондай-ақ массивтің идентификаторы /аты/ да жай айнымалының идентификаторы сияқты белгіленеді.

Паскаль тілінде массивтің нөмері тік жақшаға алынып, жазылады, мысалы

1,6; 4,9;  5;  8,9;  0,47 мәндерінен тұратын А массивін былай жазамыз:

A[1]=1,6; A[2]=4,9; A[3]=5;  A[4]=8,9;  A[5]=0,47

Мұндағы А- массив аты болады да, 25-оның индексінің қабылдайтын ең үлкен мәні болып есептеледі.

Паскаль тілінде массивті программада қолдану үшін алдымен оларды міндетті түрде арнаулы  ARRAY /ағылшын тілінен аударғанда - массив/ -операторы арқылы сипаттап жазу керек.

Ол айнымалы - VAR немесе TYPE тип бөлігінде көрсетіледі, VAR  арқылы жазылуы:

VAR массив аты : ARRAY  [бастапқы нөмері .. соңғы нөмері]  OF типі;

Мәселен алдыңғы мысалдағы А массиві үшін:

VAR  А : ARRAY  [1 .. 5]  OF REAL;

мұндағы, А - массив аты, элементтері нақты шама  - REAL типін қабылдайды. Нөмері /индексі/ 1-ден 5-ке дейін.

Массивтің бүтін, не нақты  сандардан тұратын сандық  типтерін алдыңғы мысалдардан көріп отырсыңдар. Сондай-ақ массив  символдық типтен де тұрады. Символдық жол - STRІNG үшін массив келесі түрде өрнектеледі:

TYPE

STRІNG : АRRAY [0 .. 255] OF CHAR ;

Массивтің нөмерінің санына қарай қанша элементті массив екенін байқауға болады. Алдыңғы мысалда STRІNG массиві 255 элементті болады.

Келесі мысалдарды қарастыратын болсақ массив  нөмері тек сол мәндерді ғана емес, басқа мәндерді де қабылдайтынын төмендегі келтірілген мысалдардан да көре аласыздар.

1. Текстегі латын әріптерін шығару:

VAR  әріп : ARRAY  [‘A’ .. ‘Z’]  OF  ІNTEGER;

2. Құрлықтағы бір жылдағы ауаның орташа температурасы:

TYPE  құрлық =(Гаити, Таймыр, Ява, Тасмания Сицилия, Фемарн);

VAR  T : ARRAY  [құрлық]  OF  REAL;

3. Келесі  адамдардың қайсысының бойы ең ұзын:

TYPE aты =( Қарлығаш, Қадыр, Ақын, Жанар, Бақыт );

VAR   a : ARRAY[ аты ] OF (ұл, қыз);

b: ARRAY [ аты ] OF 140 .. 240;

Осы мысалдарға қарай отырып, массивтің дұрыс /қатесіз/ жазылуын келесі түрде көрсетуге болады:

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

jyl : ARRAY [қаңтар .. желтоқсан ] OF  ІNTEGER;

L : ARRAY [Жол] OF BOOLEAN;

M1: ARRAY [Шеңбер] OF  CHAR;

Егер бірнеше массивтер бірыңғай типті және элементтер саны тең болса, онда оларды программада бір жолда  сипаттауға болады, мысалы

VAR   A, B, C : ARRAY [1 .. 25]  OF   REAL;

Мұнда, А, В, С - массивтерінің мәндері 25 элементтен тұратын нақты сандар.

A[1], A[2], A[3], ? , A[25],

B[1], B[2], B[3], ? , B[25],

C[1, C[2]], C[3], ?, C[25]

Паскаль тілінде масивтер арасында “тең”, ”тең емес” немесе “ меншіктеу операторы ” амалдарын  қолдануға  болады. Мысалы: егер А және В массиві былай берілсе,

VAR

A, B : ARRAY[1..10]  OF   REAL;

Бұған үш амалды қолданғанда төмендегідей нәтиже береді:

 Өрнек

Нәтиже

А = В

 

 

Егер  әрбір  А  массиві  элементінің   мәні сәйкес В массиві элементерінің мәніне тең болса.

АB

 Егер А массиві элементінің  ең болмағанда  бір мәні сәйкес В массиві элементінің мәні тең болмаса.

A:= B

 В массиві элементінің барлық мәні сәйкес А массиві элементінің  мәніне  меншіктеледі.  В массиві  элементінің  мәндері  өзгеріссіз  қалады.

Массивті программаға енгізу мен оны одан шығару үшін  цикл қолданылады, мысалы

FOR   І:=1  TO  9  DO

READ(А[І]);

бұл жол  тоғыз  элементтен тұратын А[I] массивін енгізеді, ал цикл

FOR   І:=1  TO  9  DO

WRІTE(A[І]);

тоғыз элементтен тұратын массивті шығарады.

Массивпен жұмыс істеуді төмендегі  есептерде  қарастырамыз.

Мысал: Бүтін он санның қосындысын табамыз. Х[I] массиві элементтерінің нөмері - І, ал қосындысы  SUM- ға меншіктелсін. Сонда  

SUM=X[1]+X[2]+X[3] ? + X[10]     табу керек.

PROGRAM MATRІX_1;

CONST N=10;

VAR

І, SUM : ІNTEGER;

A: ARRAY [1..N] OF ІNTEGER;

BEGІN

FOR І: = 1TO N DO

BEGІN

WRІTE(‘ Массив элементтерін енгіз’  );

READ (A  [І]);

END;

SUM: =0;

FOR І: = 1TO N DO

SUM: = SUM+A[І];

WRІTELN(‘ 10 элементтен тұратын А-массивінің қосындысына тең’ );

END.

Программаның орындалуына талдау. Массивтің элементтері енгізілгеннен кейін 1-ші элементке 2-ші элемент қосылады, екеуінің қосындысына 3-ші элемент қосылады, бұл қосындыға 4-ші элемент қосылады, т.с.с. 10-шы  элементке жеткенше осылай орындалады. Сонда цикл он рет орындалады.

Көп өлшемді массив

Математикада көп өлшемді массивтер, яғни массивтердің массиві жиі қолданылады. Әсіресе, көп өлшемді  массивтер, басқаша айтқанда матрицалар кең көлемде қолданылады. Мысалы, бірнеше жолға жазылған бүтін сандар тізбегі  матрица болады.

5  4  3  6

2  8  1  7

4  3  9  5

Берілген матрицаның өлшемі 3х4, яғни ол үш жолдан жәнене төрт бағаннан тұрады. Егер берілген матрицаны қандай да бір А деген атаумен белгілесек,онда матрицаның әрбір элементі екі индекспен белгіленеді. Мысалы А(і,j). Мұндағы бірінші индекс і- жол номері (і-1,2,3,4). Мұндай матрицаны төмендегіше сипаттауға болады (тип атауын Т деп аламыз):

1)  type t= array [1..3,1..4] of integer;

var a:t;

2)  type t= array [1..3] of array [1..4] of  integer;

var a:t;

бірінші жағдайда әрбір индекстін типі сипатталыпсонан соң массив элементтерінің негізгі типі integer көрсетіледі. Екінші жағдайда алдымен [1..3] индексінің мәндерін типі сипатталып, сонан кейін құрамында integer жай негізгі типті және басқа индекстің типінсипаттайты, күрделі негізгі типі array [1..4] of integer; көрсетіледі.

Егер программада матрицаның жеке жолдарын бөлу керек болса, онда сипаттауды  былайша берген ынғайлы:                 

Type

t1=array[1..4] of integer;

t=array[1..3] of t1;

var

a:t

b:t1;

Мұнда алдымен бір жолдың типі t1 сипатталады, сонан соң жол типі t1 арқылы барлық матрица t типі сипатталады. Айнымалылар бөлімінде А екі өлшемді массив, яғни матрица деп, ал В бір өлшемді массив деп көрсетілген.  Екіөлшемді  массивтер көп кездеседі. Олармен арифметикалық амалдарды орындауға болады. Екі матрицаны қосуға, көбейтуге, ең үлкен, ең кіші элементтерін, олардың орнын табуна болады.

Бақылау сұрақтары

1.     Массив дегеніміз не?

2.     Массив нөмері /индексі/ ретінде көп жағдайда алынатын қандай тип?

3.     Массивтегі жол символдарын  қалай сипаттауға болады?

4.     Программада массивті енгізу және шығару қалай іске асады?

5.     Массивтің қанша элементтен тұратынын қалай білуге болады?

6.     Көпөлшемді массивке нені мысал етіп алуға болады?

7.     Көпөлшемді массивті қалай сипаттаймыз?

8.     Жалпы массивтермен қандай амалдар орындауға болады?

Тапсырмалар

1.                  Екі массивтің қосындысын үшінші массив түрінде шығарыңыз.

2.                  В[І] массиві берілген. С[І] массивін келесі формула бойынша есептеңіз. C[і]=(2,6+B[і])/2

3.      A[і] массиві берілген. Ең кіші және ең үлкен элементтерін табатын программа құр.

4.      А[к] массиві берілген. Оның оң элементтері мен олардың рет санын табу программасын жаз (5, 6, -2, -3, 1, 6. 6, -2, 3, -4, 9, 12)

5.                  А[n] массивін 2-ден 2n-ге дейінгі сандармен толтыру программасын жаз.

6.                  а={2, 5, -4, 3} және  в={6, 8, 7, -2} векторларының скалярлық көбейтіндісін табу программасын жаз.

7.                  Элементтен тұратын A(n) сандық массиві берілген. Оның элементтерінің мәндерін қалағанша таңдап алып, келесі тапсырмаларды орындаңдар:

а)   мәндері жұп сан болатын элементтердің санын табу керек;

б) мәндері 8-ге тең элементтердің нөмірлері мен осы мәндердің қосындысын табу керек;

в) ең кіші және ең үлкен элементтер мәндерін іздеуді бір циклге енгізіп,     олардың қосындысын табу керек;

г) мәндері қайталанбайтын элементтердің санын табу керек.

8.    A(n), B(n), C(n) үш массиві берілген. Осы массивтердің барлығына ортақ элементті табу программасын жаз.

9.    3х3 өлшемді А және В массивтері берілген. Екеуінің қосындысын тап.

10.  4х4 өлшемді А матрицасының ең кіші элементін тау программасын құр.



-75%
Курсы повышения квалификации

Организация и сопровождение олимпиадной деятельности учащихся

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Массив түрлері практикалық тапсырма (23.72 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт