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


Жұмыс түрі: Материал
Тегін: Антиплагиат
Көлемі: 13 бет
Таңдаулыға:
Кіріспе
Курстық жұмыс тақырыбы: «Бір өлшемді массивтер». Тақырыпта айтылғандай жұмыс жасау барысында Turbo Pascal программалау тілі қолданылады.
Бұл тақырыпты программада пайдаланылатын мәліметтер мен шамалардың мәндерін Турбо Паскаль мәліметтер типтерінің түрлеріне салып есептер шығару және типтер туралы толығырақ түсініп, осы курстық жұмыс тақырыбын толық ашып көрсету мақсатында таңдалынған.
Турбо Паскальдағы құрылымдық типтердің бірі массивтер және олардың түрлері туралы айтылған. Оның ішінде бір өлшемді массивтер, олардың түрлі салаларда атқаратын қызтеті.
Бір өлшемді массивтердің есепте пайдалануы, түрлері, және де типі мен көлемі жайлы қамтылған.
Бұл тақырыпты программада пайдаланылатын мәліметтер мен шамалардың мәндерін Турбо Паскаль мәліметтер типтерінің түрлеріне салып есептер шығару және типтер туралы толығырақ түсініп, осы курстық жоба тақырыбын толық ашып көрсету мақсатында таңдалынған.
Қазіргі кезде көп тараған қуатты программалау жүйелерінің бірі Турбо Паскаль жүйесі болып есептелінеді.
1. Құрылымдық типтер.
Паскаль тілінде пайдаланылатын барлық типтер қарапайым (скалярлық) және құрылымдық (структуралық) болып үлкен екі топқа бөлінеді. Скалярлық (қарапайым) типке шамалардың стандартты типі және жасанды тип (тағайындаған) жатады. Стандартты типтерге:
- Бүтін - INTEGER;
- Нақты - REAL;
3. Логикалық - BOOLEAN;
4. Тіркестік (STRING) ;
5. Мәтіндік (TEXT) тәрізді типтер жатады.
Құрылымдық типтер:
1. Массивтер - ARRAY; 2. Жазбалар - RECORD; 3. Жиындар - SET; 4. Файлдар - FILE түрлеріне бөлінеді.
Бұлардан өзге типтер программаның типтерді сипаттау бөлігінде анықталуы қажет. Тұрақты сандардың типін олардың сыртқы пішініне қарап-ақ ажыратуға болады, ал айнымалылар мен функциялар типтері программаның сипаттау бөлімінде көрсетіледі.
Мәлімет типтерінің жіктелуі
Ол үшін type түйінді сөзі қолданылып, жазылу пішімін былай көрсетуге болады:
Type <тип атауы>= <тип мәндері>;
Типтерді анықтау диаграмасы.
Логикалық шамалар екілік сандар жүйесіне сәйкес «1» және «0» деген мәндерді ғана қабылдайды. Мұндағы «1» тексерілетін белгілі бір шарттың - логикалық тұжырымның орындалатынын, яғни ақиқат екенін көрсетеді. Бұл екі мән программада ағылшын тіліндегі айтылуына сәйкес true (1) және false (0) болып жазылады.
1. 1 Массивтер.
Паскаль тілінде мәліметтер қарапайым және күрделі типтерге жіктелетінін жоғарыда айтып кеткен болатынбыз.
Қарапайым типтерге стандартты деп саналатын және шектеулі типтегі мәліметтер, ал күрделі типтерге масивтер, жиындар, жазбалар және файлдар жатады. Күрделі типтің ішкі элементтерінің өзі қарапайым тип те болуы мүмкін.
Қарапайым типтер қатарына жататын стандарты және қолданушылар типтерінде бір айнымалыны сақтау үшін, компьютер жадысының бір ғана ұяшығы қолданылады.
Бірақ көптеген программалау есептерінің шешімін табу барысында әрбір элементтің деректерін жеке айнымалыға сақтау орнына, оларды тізбектеп бір жерге сақтау анағұрлым тиімді болып табылады.
Массив екіге бөлінеді: бір өлшемді массив және екі өлшемді массив. Массив элементерімен жұмыс жасау барысында, массив атауынан кейін міндетті түрде тік жақшаға алынған индекс көрсетіледі. Индекс ретінде сандар қолданылады.
Массивті қолдану үшін оларды типтер бөлімінде (type) немесе айнымалылар сипаттау (var) бөлімінде хабарлау қажет.
Жалпы жазылу түрі:
Type
Массив типінің атауы =array [индекс типі] of элемент типі;
Var
Массив атауы:массив типінің атауы;
Мұндағы:
Массив типінің атауы - массив элементтерінің жиынын сипаттайды;
Индекс типі - тізбектелген немесе шектелген типтерді көрсетеді.
Берілген массивтің элементтеріне арифметикалық операциялады, салыстыру және меншіктеу операторларын қолдануға болады. Сонымен қатар, массивтерге Турбо Паскальдағы айнымалы типіне сәйкес келетін барлық стандартты процедуралар мен функциялар қолданылады. Мысал келтіріп өтейік:
Қаңтар айының алғашқы он күндегіндегі ауа-райының температурасы сызықтық кесте түрінде берілген. Осы он күндегіндегі орташа температураны есептейтін программа құру керек.
Program Aua-rai1;
Uses crt;
Const n=10;
Var
t:array [1. . n] of integer;
i:byte; s:integer;
or t:real;
Begin
Clrscr;
{Матрицаның элементтерін енгізу}
for i:=1 to n do
readln(t[i] ) ;
{Қаңтар айындағы t-ның қосындысын есептеу}
s:=0;
for i:=1 to n do
s:=s+t[i] ;
{Орташа t-ны табу}
or t:= s/n’
{Нәтижені баспаға шығару}
writeln (‘or t=’or t) ;
End.
Осыған дейін қарастырылып келген мәліметтердің типтері қарапайым болып есептеледі, себебеі олар тек ғана объектіге, яғни бір санға немесе бір символға қатысты ғана қолданылады.
Турбо Паскальда бір тпике жататын бірнеше элементерден тұратын объектілерді де пайдалануға да болады. Массив - осындай бір типке жататын элементерден құралатын құрылымдық тип болып табылады, айталық, біріңғай integer типті сандардан тұратын массив немесе бірыңғай char типті символдардан тұратын массив.
Массивке тән негізгі үш қасиет мыналар:
- элементтері бір типке жатады;
- элементтері реттелген, яғни номерленген;
- массивтің элементі екі нәрсемен анықталады, индексі (реттік номері) және мәні.
Қарапайым тілмен айтқанда массив бұл мәліметтердің кәдімгі кесте сияқты түрде ұйымдастырылуы болып табылады. Кестенің әдеттегідей екі түрінде (сызықтық кесте және тіктөртбұрышты кесте) сәйкес массивтерді де бір өлшемді массивтер және екі өлшемді массивтер деп қарастыруға болады. Екі өлшемді массивтерді көбінесе матрица деп те атай береді. Жалпы массивтермен жасалатын әрекеттерді,
- массивті сипаттау немесе хабарлау;
- массивті енгізу немесе толтыру;
- массивті өңдеу немесе сұрыптау;
- массивті немесе нәтижені баспаға шығару
сияқты кезеңдерді қамтитын белгілі бір алгорим түрінде қарастырған түсініктірек болатын сияқты.
Программалау тілдерінде кестелік мәліметтерге массивтер сәйкес келеді.
Әр түрлі программалау тілінде массивтерді жазу ережесі әр түрлі бола береді. Мысалы, бір сыныптағы N оқушының бойлары алгоритмдік тілде бір өлшемді массивпен былай беріледі: нат R(N) . N - осы массив элементерінің мүмкін болатын ең үлкен максимальді нөмірі. Бұл массив Паскаль тілінде
R[N] болып жазылады.
Массив элементтері нөмірленген (индекстелген) айнымалылар болып табылады. Айнымалы аты массив атымен бірдей болады. Сынып оқушыларының бойлары массив түрінде берілсін делік. Сонда R[N] массиві элементтерін әрқайсысы үшін ашып жазуға болады:
R[N] =[156, 162, …, R[i], …, 164], мұндағы индекстер (тік жақша ішінде) массив элементтері нөмірін анықтайды; R[i] - массивтің i - ші элементі.
Жоғарыдағы мысалда бір өлшемді (сызықтық) массив берілген. Екі өлшемді массивтің мысалы ретінде көбейту кестесін нат Т[1:9, 1:9] қарастыруға болады. Оның әрбір элементі T[і, j] индекстерінің көбейтіндісіне тең болады.
Екі өлшемді массив индекстері оның әрбір элементінің кесте ішінде орналасуын көрсетеді: i - жол нөмірі, j - бағана нөмірі. Алгоритмдік тілде ол былай болып жазылады: кесте бүт G[I:N] . Төмендегі кесте алты бағанадан тұрады. Әрбір бағана - бір өлшемді массив. Оларды реттеп алгоритмдік тілде жазып шығайық.
Туған жылы
G[I:N]
Бойы
R[I:N]
Салмағы
W[I:N]
Спорт
S[I:N]
Бірінші массив - тізімдегі оқушылар нөмірі. Бұл натурал сандар қатар, нат N[1:N] .
Екіншісі - оқушышының аты-жөні - литерлік (символдық, жолдық) шамалар массиві лит F[1:N] .
Үшінші, төртінші массивтер - туған жылы мен бойларының ұзындығы - бүтін сандар массиві бүт G[1:N] және бүт R[1:N] .
Бесінші массив - оқушылар салмағы - нақты сандар массиві нақ W[1:N] . С
Алтыншы массив-олар айналысатын спорт түрі. Бұллогикалық шамалар массиві, S[1:N] .
Қарапайым тілмен айтқанда массив бұл мәліметтердің кәдімгі кесте сияқты түрде ұйымдастырылуы болып табылады.
Кестенің әдеттегідей екі түрінде (сызықтық кесте және тіктөртбұрышты кесте) сәйкес массивтерді де бір өлшемді массивтер және екі өлшемді массивтер деп қарастыруға болады. Екі өлшемді массивтерді көбінесе матрица деп те атай береді.
Бір типтес берілгендерден құралып, барлық элементтеріне бір ортақ атау берілген жиындарды массивтер деп атайды. Массив элементтері нөмірленеді. Массив құрылымдық типтер қатарына жатады.
Массивтің әрбір элементіне индексін көрсету арқылы жұмыс істеуге болады.
Массивке мысал ретінде векторларды қарастыруға болады. Егер массивке кестелік берілгендер жазылса (матрица), онда элементтері екі индекс бойынша нөмірленеді.
Массив сипаттамалары:
- Типі. Массив элементтерінің жалпы типі.
- Көлемі. Массив индекстерінің саны.
- Шектелімі. Әрбір индекстердің шектеу бойынша сәйкестігі.
- Пішімі. Көлем және шектеулер жиындары.
Жиымды сипаттағанда индекстің үлкен мәні үшін кез келген (255-тен артпайтын) санды алуға болады, бірақ программада пайдаланылатын индекстің мәні оның берілген ең үлкен мәніне дейін болуы шарт емес.
Мысалы, жиымды сипаттағанда array[1. . 255] деп жазып, программаны орындағанда i<255 кез келген мәнді пайдалануға болады.
Программада i-дің мәні жиымды сипаттағандағы оның ең үлкен мәнінен ешқашан да аспауы қажет.
1. 2 Бір өлшемді массивтер
Программада массивтерді сипаттаудың немесе хабарлаудың екі түрлі жолы бар. Біріншісі, массивтерді программаның типтер бөлімінде күрделі тип ретінде сипаттауға болады. Бұл бір өлшемді массивтер үшін төмендегідей түрде жазылады:
type
массивтің аты = array [индекс диапазоны] of мәліметтіңтипі;
мұндағы, массивтің аты - дұрыс идентификатор, array, of - қызметші сөздер, индекс диапазоны, бұл екі нүктемен ажыратылған индекстік типтер. Индекстік типтер ретінде longint типінен басқа кез-келген реттелген типтерді алуға болады. Мысалы, n символдан тұратын mas массиві программаның типтер бөлімінде,
type
mas= array[1. . n] of char;
түрінде хабарланады.
Сондай-ақ массив элементтерінің типі басқа бір массивке тәуелді болуы мүмкін, мұндай жағдайда of қызметші сөзінен кейін сол массив көрсетіледі.
type
mas= array[0. . 5] of array[-1. . 2] of byte;
Массивтерді сипаттау, типтер бөлімінде жүргізілген жағдайда, әрі қарай массив элементтерімен жұмыс істеу үшін оларды, яғни мәндері массив элементтері болатын айнымалыларды программаның var бөлімінде сипаттап кету керек, айталық с1 және с2 айнымалылары жоғарыда келтірілген m массивімен жұмсы істеу үшін қажет болатын болса, онда оларды программада төмендегідей сипаттайды:
type
mas= array[1. . n] of char;
var
с1, с2: mas;
Программадағы массивтерді хабарлаудың екінші бір жолы - массивтер тікелей var айнымалыларды сипаттау бөлімінде бірден көрсету болып табылады, мұндай жағдайда жоғарыдағы программа фрагментін,
var
mas= array[1. . n] of char;
түрінде қысқаша жазуға болады. Массивтердің сипаттаудың осы екінші жолы практикада көбірек қолданылады. Жоғарыда айтылған массивті сипаттау бөліміне бір мысал келтірейік:
Сиволдарының саны n(15<=n<= 100) сөз тіркесі берілген. Сол сөз тіркесін енгізуді аяқтау Enter-ді басу арқылы жүзеге асырылады. Енгізілген сөздегі символдар санын және 7-символдан бастап 15-символға дейін «+» белгісі қанша рет кездесетінін анықтау керек.
Program Simboldar1;
Const Plus=’+’;
K1=7;
K2=15;
Var SIM:array [1. . 100] of char;
i, k:integer;
Begin
Writeln (‘Сөз тіркесінің символдарын енгізіңдер:’) ;
i:=0;
Readln;
While not EOLN DO
Begin
i:=i+1;
read(SIM[i] ) ;
End;
Writeln;
Writeln (‘Тіркестегі символдар саны =’, i) ;
k:=0;
For i:=k1 to k2 do
If sim[i] =plus then k:=k+1;
Writeln (‘7-15 символдар арасындағы + таңбалр саны =’, k) ;
End.
Массивтің элементтері индекстері арқылы көрсетіледі және оларға мәнді беру үшін меншіктеу операторы қолданылады. Айталық mas[5] - m массивінің 5-ші реттік нөмірлі элементі дегенді білдірсе, mas[5] :=’b’ - m массивінің 5-ші элементінің мәні b-ға тең екенін көрсетеді, ал mas[i] - m массивінің i -ші элементі дегенді білдіреді.
Массивтерді немесе олардың элементтерін енгізу үшін цикл операторлары қолданылады және мұнда for…do операторын қолану ыңғайлы болып табылады. Мысалы, жоғарыда келтірілген mas массивін (бір өлшемді массив) енгізудің қарапайым жолы мына түрде болуы мүмкін:
for i:=1 to n do
real (mas [i] ) ;
Бұл программа фрагменті орындалғанда массивінің элементтері ретінде енгізілетін n символ, аралығына бос орын қою арқылы жол бойына енгізіледі. Егер қолданушы қай элементі енгізіп отырғанын алдын-ала біліп отырғысы келсе, онда жоғарыдағы программа фрагментін жалпы түрде,
for i:=1 to n do
begin
writeln(‘mas[‘, i, ’] =’) ;
real (mas [i] ) ;
end;
жазуына болады.
Бір өлшемді массивті баспаға шығаратын программа фрагменттері:
for i:=1 to n do
writeln(mas[i] : 5) ;
Мұнда массив элементтері экранға жол бойынша шығады, ал
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

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