Жыл сайын бағдарламалауға қызығушылық артып келеді. Ал егер бағдарлама жазуға маманданған мекемелерде олар C++ сияқты программалау тіліне сүйенсе, онда мектептер мен техникалық оқу орындарында студенттер «Паскальмен» танысады. Ал қазірдің өзінде осы тілдің негізінде олар Delphi бағдарламалық құралын пайдалану арқылы бағдарламалауды түсіне бастайды. Бірден айта кету керек, бұл бағдарламалау тілдері олардың қиялын көрсету үшін үлкен кеңістікті қамтамасыз етеді. Ал Паскаль тілінің көмегімен программалаудың негізгі ұғымдарымен танысуға болатын болса, Delphi-де толыққанды программа жазуға болады. Бағдарламаларды жазуда айтарлықтай маңызды орынды кейде массивтерді «Паскаль» тілінде шешу алады.
Өте әртүрлі айнымалылардың көп санының болуы
Бағдарламалау тілінде бір ғана мәннің болуымен сипатталатын әртүрлі айнымалылар өте көп. Олар белгілі бір түрі бар жалғыз мәнді сақтай алады. Жолдық айнымалылар ерекшелік болып табылады. Олартаңба түрі тән деректер жиынтығы болып табылады. Бірақ мұндай айнымалылар да әдетте бөлек мән позициясынан қарастырылады.
Компьютер көмегімен деректердің үлкен көлеміне байланысты белгілі бір жұмыстарды орындау уақытын айтарлықтай қысқартуға болатыны ешкімге құпия емес. Бірақ адамдарға белгілі типтері бар айнымалыларды ғана пайдаланған кезде, жұмыс нәтижелерін жадта сақтауға, сонымен қатар жолдардың үлкен санын қамтитын деректерді өңдеуге қалай болады? Мұндай тапсырмалар кез келген қызмет саласында жиі кездеседі.
Әрине, мақсаттарыңызға жету үшін қажет болғанша айнымалы мәндерді енгізуге болады. Сондай-ақ олар үшін кейбір мәндерді анықтауға болады. Бірақ бағдарламаның коды осыдан ғана артады. Жолдар саны көп кодты оқу қиын. Әсіресе қателерді табу қажет болғанда.
Сәйкесінше, бағдарламашылар бұл сұрақты ойластырған. Сондықтан осы уақытқа дейін жасалған тілдерде деректердің үлкен көлемін сақтауға мүмкіндік беретін айнымалылар бар. «Паскаль» тіліндегі массив программалауға көзқараста көп өзгерді. Сондықтан ол бағдарламалау тілінде маңызды айнымалы болып саналады.
Массивтерді пайдалану код өлшемін күрт азайтуы мүмкін
Бұл терминнің астында бір түрімен сипатталатын деректердің реттелген тізбегі жасырылады. Сонымен қатар, бұл деректердің барлығы бірдей атқа ие болады. Ол да керекАйта кету керек, нақты әлемнің көптеген объектілері бұл анықтамаға сәйкес келуі мүмкін: сөздіктер, мультфильмдер және т.б. Дегенмен, «Паскальда» массивті ұсынудың ең оңай жолы - кесте түрі. Әрбір жеке ұяшықта бір айнымалы бар. Координаттарды пайдалана отырып, айнымалының жалпы кестеде алатын орнын анықтауға болады.
Бір өлшемді массив нені білдіреді?
Ең қарапайым кесте – сызықтық кесте. Бұл массивте параметрдің орнын анықтау үшін тек бір санды көрсету жеткілікті. Олардың негізінде күрделі массивтер жасалады.
«Паскальда» бір өлшемді массивтерді сипаттау үшін келесі кодты енгізіңіз: Array of.
теріңіз.
Сандар реттік түрі болуы мүмкін айнымалылар. Ауқымды көрсету кезінде бастапқы сан соңғы саннан жоғары болуы мүмкін емес екенін түсіну керек. Жиым элементтерінің түрі кез келген нәрсе болуы мүмкін - стандартты немесе бұрын сипатталған. Таңдау белгілі бір мәселені шешу қажеттілігіне байланысты болады.
Сызықтық массив қалай сипатталады?
Бір өлшемді массивтерді «Паскаль тілінде» бірден сипаттауға болады. Бұл арнайы процедура үшін қажет арнайы бөлімде жасалуы керек. Сізге келесі кодты енгізу қажет: Var: Массив Of.
Массивті Паскаль тілінде қалай сипаттауға болатынын түсіну үшін келесі кодты енгізу керек:
- Var
- S, VV: массив[5..50] нақты;
- K: массив[‘C’.. ‘R’] бүтін сан;
- Z: массив [-10..10] Word;
- E: массив [3..30] нақты.
Бұл мысалда S, VV және T айнымалылары нақты сандар массиві болып табылады. K айнымалысы таңба түрін және сол элементтерді жасырады. Бұл бүтін сандар. Z массиві түрі Word болатын сандарды сақтайды.
Массивпен жұмыс істеу кезінде қолдануға болатын барлық әрекеттердің ішінде тапсырманы бөліп көрсетуге болады. Бүкіл кестені оған бағындыруға болады. Мысалы, S:=VV. Бірақ тағайындау операциялары белгілі бір түрі бар «Паскаль» массивіне ғана ұшырауы мүмкін екенін түсіну керек.
Бүкіл массивте бірден орындауға болатын басқа әрекеттер жоқ. Дегенмен, белгілі бір түрі бар басқа жай сандар сияқты элементтермен жұмыс істеуге болады. Жеке параметрге сілтеме жасау үшін массивтің атын көрсету керек. Шаршы жақшаларды қолдану арқылы қажетті элементке тән индексті анықтау керек. Мысалы: K[12].
Массивтер мен басқа айнымалылар арасындағы негізгі айырмашылықтар
Кесте құрамдастарының қарапайым айнымалылардан негізгі айырмашылығы - жақшаға индекс мәнін ғана емес, сонымен қатар қажетті мәнге әкелетін осындай өрнекті де қоюға болады. Жанама адрестеу мысалы болуы мүмкін: V[K]. Бұл жағдайда К айнымалысы белгілі бір мәнді қабылдайды. Осыданмассивді толтыру, өңдеу және басып шығару кезінде циклды пайдалануға болады.
Ұйымдастырудың бұл түрі сипаттары бойынша Char түріндегі массивтерге жеткілікті жақын жол айнымалылары жағдайында орын алуы мүмкін. Бірақ айырмашылықтар да бар. Олар келесідей:
- Жолды айнымалы мәндерді әрқашан пернетақтадан енгізуге және экранда басып шығаруға болады.
- Жол айнымалыларының ұзындығы шектеулі. Ең көбі 255 таңба енгізуге болады. Массивтің маңызды өлшемі - 64 кб.
Массив деректерін экранда көрсету үшін қандай әдістерді қолдануға болады?
Сіз массив мазмұнының көрсетілу жолына назар аударуыңыз керек. Бірнеше бар.
- Жазылған (A[1], A[2], A[3]). Мұндай мысал қарапайым болса да, кестеге тән әрбір жеке элементке тікелей қол жеткізу жолын көрсете алады. Дегенмен, қарапайым айнымалыларға қарағанда Паскаль массивтерінің кейбір артықшылықтары мұнда көрінбейді.
-
Program A1;
Var B: Массив [1..10] of Integer;
K: Integer;
Бастау
K үшін:=1 - 10 Do {Бұл пәрмен }
Readln(A[K]) параметрімен циклдар жасайды; {A[I] пернетақта арқылы енгізілуде }
K үшін:=10 1-ден төменге дейін Орындау {Кесте кері тәртіпте басып шығарылуда}
Write(A[K], 'VVV') Соңы.
«Паскаль» тіліндегі массивтерге арналған бағдарламаның ұқсас коды пернетақта арқылы 10 санды қалай енгізуге, оларды басып шығаруға, мәндерді кері ретпен реттеуге болатынын көрсетеді. Егер сол бағдарламадан қайта жазылсамассивтің орнына айнымалылардың көп санын пайдалану, содан кейін код айтарлықтай артады. Бұл бағдарламаны оқу процесін айтарлықтай қиындатады.
Массивтерді пайдалану арқылы мүмкіндіктерді ұлғайту
Кестелерді элемент индекстерінің квадратына тең мәндермен толтыруға да болады. Сондай-ақ «Паскальда» барлық сандарды автоматты түрде енгізуге мүмкіндік беретін осындай жолдар массивін құруға болады. Көріп отырғаныңыздай, массивті пайдалану Паскаль программалау тілінің мүмкіндіктерін айтарлықтай арттырады.
Сызықтық массивтерді өңдеу әртүрлі тапсырмаларда жиі кездеседі. Сондықтан олардың институттарда, мектептерде оқытылуының таңғаларлық жері жоқ. Сонымен қатар, массивтердің тасымалдау мүмкіндіктері өте кең.
Екі өлшемді массивтердің астында не жасырылған?
Сіз бірден бірнеше жолдан тұратын кестені елестете аласыз. Әрбір жеке қатарда бірнеше ұяшық бар. Мұндай жағдайда ұяшықтардың орнын дәл анықтау үшін сызықтық массивтердегідей бір индексті емес, жол мен бағанға тән екі санды белгілеу қажет. "Паскальдағы" екі өлшемді массивтер ұқсас көрініспен сипатталады.
Осындай кестелерді қалай сипаттауға болады?
Осындай кестенің мәндерін сақтау үшін Паскаль тілінде табылған деректер құрылымыекі өлшемді массивтің аты. Мұндай массивтің сипаттамасы екі әдіс арқылы бірден мүмкін болады.
- Var B: массив[1..15] массив [1..30] бүтін сан;
- В нұсқасы: массив [1..15, 1..30] бүтін сан.
Осы жағдайлардың барлығында 15 жол және 30 баған бар екі өлшемді массив сипатталады. Жоғарыда келтірілген сипаттамалар мүлдем баламалы. Кез келген элементтермен жұмыс істеуді бастау үшін екі индексті бөлу қажет. Мысалы, A[6][5] немесе A[6, 5].
Экранның шығысы бір өлшемді массив жағдайындағыдай дерлік болады. Сізге тек екі индексті көрсету қажет. Барлық басқа аспектілерде мұндай айырмашылықтар жоқ, сондықтан бұл туралы ұзақ айтудың қажеті жоқ.
Сұрыптаудың бірінші жолы
Кейде деректерді сұрыптау қажет болады. Ол үшін тілде сәйкес командалар бар. Паскаль тілінде массивті сұрыптауға болатын екі алгоритм бар. Тікелей таңдау әдісінің мәні мынада: циклды кірістіру арқылы барлық кесте айнымалысы басқа мәндермен салыстырылады. Басқаша айтқанда, егер 15 саннан тұратын массив болса, онда бірінші саны 1 басқа сандармен салыстырылады. Бұл, мысалы, бірінші саннан үлкен элемент табылмайынша орындалады. Кейіннен салыстыру дәл осы көрсеткішпен жүзеге асады. Бұл ең үлкені табылмайынша қайталанады.барлық ұсынылған элементтерден. Бұл әдіс тілде жұмыс істей бастаған бағдарламашылар үшін өте қарапайым.
Екінші жиым сұрыптау әдісі
Екінші жол – көпіршік. Бұл әдістеменің мәні көрші элементтерді жұппен салыстыру фактісі болып табылады. Мысалы, 1 және 2, 2 және 3, 3 және 4 және т.б. Табылған мән сұрыптау шарттарына толығымен сәйкес келсе, ол бүкіл массивтің соңына жылжытылады, яғни ол қалқымалы терезе ретінде шығады. «көпіршік». Бұл алгоритмді есте сақтау ең қиын. Дегенмен, оны ұнтақтаудың қажеті жоқ. Ең бастысы - кодтың бүкіл құрылымын түсіну. Тек осы жағдайда ғана бағдарламалауда үлкен жетістіктерге жетуге болады.
Қорытынды
Сіз массивтердің не екенін және нақты мәнді табу немесе нақты мақсатқа жету үшін қалай сұрыптауға болатынын түсіндіңіз деп үміттенеміз. Егер сіз массивтер маңызды орын алатын белгілі бір мәселені шешу үшін «Паскаль» тілін таңдаған болсаңыз, онда сіз оларды зерттеуге мұқият қарауыңыз керек. Бұған тұтас кодты жеңілдету үшін белгілі бір жағдайларда қолданылатын тілде жеткілікті көп айнымалылардың болуы сияқты фактор әсер етеді. Массивтер заңды түрде негізгі шамалар болып саналады, оларды зерттеу міндетті түрде жүргізілуі керек.