Массивтер жайлы


Жұмыс түрі: Материал
Тегін: Антиплагиат
Көлемі: 8 бет
Таңдаулыға:
I. Кіріспе2
II. Бір өлшемді массивтер3
2. 1. Бейсик тіліндегі массив3
2. 2. Паскаль тіліндегі массив3
2. 2. 1. Массивтермен амалдар орындау3
2. 2. 2. Массив элементтерімен амалдар орындау4
2. 2. 3. Бір өлшемді массивтерді сұрыптаудың алгоритмдері4
III. Екі өлшемді массивтер6
3. 1. Матрицаның Бейсик тіліндегі сипаттамасы6
3. 2. Матрицаның Паскаль тіліндегі сипаттамасы6
3. 2. 1. Квадрат матрицада индекстердің ара қатынасы6
I. Кіріспе
«Массив» деген ұғыммен ғылыми-техникалық және экономикалық мәселелерді шешу барысында кездесеміз. Себебі біз мұндай жағдайда көп көлемді есептеулер мен цифрлармен жұмыс істеуге мәжбүр боламыз.
Массив - бұл жалпы атпен біріккен және компьютердің жадында белгілі бір орынды алатын бір типті элементтердің жиынтығы болып келеді. Массивтегі элементтер саны әрдайым шектеулі болады.
Жалпы алғанда массив бұл - мәліметтердің құрылымдық жиыны, ол шектелген сан элементтерден тұрады және олардың бәрі бір типті элементтер болады.
Массивтерді біз жүйелі тип атауымыздың себебі массивтер өзіне біртиптік (логикалық) элементтерді жиғаны, олар индекстері бойынша сұрыпталған, индекс - әр элементтің массивтің ішіндегі өз орнын белгілейтін айнымалы.
Массивтің элементі ретінде кез келген типті қолдануға болады, сондықтан да массивтер өз жазылымдар түрінде (record), белгілер ретінде (labels), өзі массивтері (arrays) ретінде де қолдана алады.
Массивтер элементтерінің типі - базалық деп аталады. Паскаль тілінің басқа программалау тілдерден айырмашылығы болып массивтер жарияланған кезде элементтерінің саны шектеулі болуы, және программаның орындалуы барысында өзгермеуі саналады.
Массивті құрайтын элементтер өзіне тән белгілі бір орын тәртібімен (индексі) орналасады. Әр элементтің мәнін жадыдан алу үшін массивті алдын ала индекстеу керек. Индекс тек скалярлы тип (көбінесе бүтін - integer) бола алатын аралықтан алына алады, оны, мысалы, нақты типке (real) меншіктеуге болмайды. Индекстің типі индекстің мәндерінің өзгеру шекарасын анықтайды. Массивті жариялау үшін array of қызметші сөдері қолданылады.
II. Бір өлшемді массивтер
Бір атпен белгіленетін және бірдей функцияларды атқаратын мәліметтер жинытығын - массив дейді. Егер массивтің әр элементіне бір реттік (өлшемді) нөмер тіркелген болса, онда мұндай массив - бір өлшемді массив деп аталады.
2. 1. Бейсик тіліндегі массив
Массивті жариялау - DIM A(N), бұл дегеніміз ЭЕМ-нің жадында массивтің А атымен аталған <N> санды бос орын беру. Егер массивтің суреттелуі берілмесе, онда бір өлшемді массивке жадыдан 10 ұяшықты бос орын бөлінеді. Массивтің әр элементі жалпы түрде былай көрсетіледі: A(I), мұндағы А - масситің аты, I - массивтің нөмері немесе индексі (0<=I<= N болып тұрады, бірақ көбінесе 1<=I<=N қолданылады) .
A(I) - массив элементінің мәні.
2. 2. Паскаль тіліндегі массив
Паскальда массив былай жарияланады:
<массивтің аты>:array [элемент саны] of <айнымалы типі>
Массивтің әр элементі A[I] болып белгіленеді, А - массивтің аты, I - индексі(0<=I<= N болып тұрады, бірақ көбінесе 1<=I<=N қолданылады) .
A(I) - массив элементінің мәні.
2. 2. 1. Массивтермен амалдар орындау
Біркелкі жүйе етіп массивпен жұмыс істеу үшін массивтің идентификаторы қолданылады. Оның индексі көрсетілмей, тек квадрат жақшада жазылады. Массив тек «тең», «тең емес» және меншіктеу амаладары қолданыла алады. Мұндай амалдарда қолданылатын массивтер құрылымы бірдей болуы қажет, яғни индекстердің бірдей типтері болуы және компоненттердің бірдей болуы қажет етіледі.
Мысалы, егер А және В массивтері былай жарияланатын болса: var A, B: array[1. . 20] of real; онда осы амалдарды оларға қолдану мынадай қорытындыны береді:
Амал Қорытынды
A=B True, шын болады егер А массивінің элементтері В массивінің сәйкес элементтеріне тең болса.
A<>B True, шын болады егер А массивінің элементтерінің ішінде кем дегенде бір элементі В массивінің сәйкес нөмерлі элементке тең болмауы жеткілікті.
A:=B, В массивінің барлық элементтері А массивінің сәйкес элементтеріне меншіктеледі. В массивінің элементтері өзгеріссіз қалады.
2. 2. 2. Массив элементтерімен амалдар орындау
Массивті жариялағаннан кейін оның әр элементін идентификаторын (атын) қойып және квадрат жақшада индексін көрсетіп, өңдеуге болады. Мысалы, Mas[2], Vector[10] жазылымдары Mas массивінің 2-ші элементіне, Vector массивінің 10-шы элементіне жүгінуге мүмкіндік береді.
Екі өлшемді массивтермен жұмыс істегенде екі индекс көрсетіледі, ал n өлшемді массивте n индекс саны көрсетіледі. Мысалы, Matr[4, 4] массивінде төртінші жолдың төртінші бағанында орналасқан элементті өңдеуге мүмкіндік береді.
Массивтің индекстелген элементтері - индекстелген айнымалылар деп аталады, олар жай айнымалылар ретінде де пайдалана береді. Мысалға олар амалдарда операнд ретінде, for, while, repeat операторларында, Readm Readln, Write, Writeln операторларында параметр ретінде де қолданыла алады. Оларға өз типіне сай келетін кез келген мәнді меншіктеуге болады.
2. 2. 3. Бір өлшемді массивтерді сұрыптаудың алгоритмдері
Сұрыптау - қазіргі заманда мәліметерді өңдеу процессінің кең тараған түрлерінің бірі. Сұрыптау деп - массив элементтерін белгіленген ережелер бойынша орналастыру болып табылады. Мысалы, массивті өсуі не кемуі бойынша сұрыптау.
2. 2. 3. 1. Ауыстырмалы сұрыптау («көпіршік» тәсілі)
Алгоритм 1-ші мен 2-ші элементтерді салыстырудан басталады. Егер 2-ші элемент 1-шіден кіші болса, онда оларды орындарымен алмастырылады. Бұл процесс қатар тұрған әр жұп элементтері үшін қайталанады, процесс бүкіл N элементтері өңделмейінше қайталанады. Массивтің бір «өтімінен» кейін ең үлкен элемент ең артқы (N-ші) орынға тұрғызылады. Алгоритм жалғаса береді, сонда p-ші өтім кезінде алғаш (N-p) элементтері оң жақтағы көрші элементтерімен салыстырылады. Егер келесі бір өтімде алмастырулар болмаса, алгоритм өз жұмысын тоқтатады. Соңында ең «жеңіл» элементтер алгоритм орындалуы барысында біртіндеп «қалқып шығады».
for i := 1 to n-1 do
for j := n-1 downto i do
if a[j] > a[j+1] then begin
x := a[j] ;
a[j] := a[j+1] ;
a[j+1] := x;
end;
2. 2. 3. 2. Қойылылмды сұрыптау
Алғашқыда алғаш тұрған екі элемент сұрыпталады. Олар сұрыпталған S жиынын құрайды. Келесі элемент алынып, сұрыпталған S жиынына сол жағындағы элементтері одан кіші етіліп, ал оң жағынан артық болып қойылады. Берілген элементті жиынға тұрғызу орны - аралықты жартыға бөлу арқылы табылады. Алгоритм өз жұмысын аяқтайды сол жағдайда, қашан N-ші орында тұрған элемент өңделіп болады.
2. 2. 3. 3. Таңдап алу арқылы сұрыптау
N элементтерден құралған массивінің ең үлкен элементі табылады (ол p нөмерінде тұр делік), ол N-ші орында тұрған элементімен орындарын ауыстырылады, мұнда бір шарт сақталуы тиіс: N <> p, яғни олар тең болмауы керек. Қалған (N-1) элементтерден тағы да ең үлкені таңдап алынады да, N-1 орында тұрған элементпен алмастырылады. Өз жұмысын алгоритм 1-ші және 2-ші орындарда тұрған элементтер сұрыпталғаннан кейін ғана өз жұмысын тоқтатады. Ол үшін N-1 өтім керек болады екен. Осылай ең кіші элементтерді сұрыптауға да қолдануға болады.
for i := 1 to n-1 do begin
k := i; x := a[i] ;
for j := i+1 to n do
if a[j] < x then begin
k := j;
x := a[j] ;
end;
a[k] := a[i] ;
a[i] := x;
III. Екі өлшемді массивтер
Екі өлшемді массив деп - элементі массивтің жол мен бағанында тұрған орнына тәуелді болатын массив. Жалпы түрде матрицаның элементтері былай белгіленеді A(I, J), мұндағы A - массивтің аты, I - жолдың индексі (нөмері), J - бағанның индексі (нөмері) .
3. 1. Матрицаның Бейсик тіліндегі сипаттамасы
DIM A(I, J) - матрицаны (екі өлшемді массив) сипаттау - бұл ЭЕМ-нің жадында матрицаның элементтері үшін бос орын бөлу. ЭЕМ-нің жадында элементтер жолдармен орналасады, сондықтан да жолдың индексі бағаннан гөрі аздап баяу өзгереді. Тік бұрышты матрица деп жол саны баған санына тең болмайтын матрица.
Квадратты матрица деп жол саны баған санына тең матрица.
3. 2. Матрицаның Паскаль тіліндегі сипаттамасы
Матрицаны екі түрлі тәсілмен жазуға болады:
- <матрицаның аты>: array[жол саны] of array[баған саны] of <айнымалының типі>;
- <матрицаның аты>: array[<жол саны>, <баған саны>] of <айнымалының типі>.
3. 2. 1. Квадрат матрицада индекстердің ара қатынасы
I=J - матрицаның элементтері бас диагональ бойында орналасқан.
I<J - элементтер бас диагональдың үстінде орналасқан
I>J - элементтер бас диагональдың астында орналасқан
I+J=N+I - элементтер қосалқы диагональ бойында орналасқан.
I+J<N+I - элементтер қосалқы диагональдың үстінде орналасқан.
I+J>N+I - элементтер қосалқы диагональдың астында орналасқан.
Төменде Паскаль тіліндегі массивтерге мысал есептері келтірілген:
3. 2. 1. 1. Бірінші мысал
Массивтің элементтерінің мәндерін кездейсоқ сандар генераторы арқылы енгізіп, жолмен экранға шығару.
Ескерту:
Кездейсоқ сандарды қолдану үшін Паскальда random: real (0. . 0. 99 аралықта мәндерді қабылдайды) операторлары қолданылады. Random(i: word) :word - 0. . 1 аралықта сандарды болжап жазады.
program mas1;
var
a: array [1. . 10] of integer;
i: integer;
begin
randomize;
for i:=1 to 10 do begin
a[i] :=random(20) ;
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz