Динамикалық айнымалылар құрылымы

КІРІСПЕ 3
НЕГІЗГІ БӨЛІМ
1 ДИНАМИКАЛЫҚ ҚҰРЫЛЫМДЫ МӘЛІМЕТТЕР 5
1.1 Динамикалық жады ұғымы. Көрсеткіштер 5
1.2 Динамикалық жадыны басқару 7
1.3 Динамикалық жадымен жұмыс жасау үшін қолданылатын 11
процедуралар мен функциялар
1.4 Динамикалық массивтер 12

2 ДИНАМИКАЛЫҚ АЙНЫМАЛЫЛАР ҚҰРЫЛЫМЫ. ТІЗІМДЕР 15
2.1 Тізім. Бір бағытталған тізімдер 15
ПРАКТИКАЛЫҚ БӨЛІМ 19
ҚОРЫТЫНДЫ 23
ПАЙДАЛАНЫЛҒАН ДЕРЕК КӨЗДЕР ТІЗІМІ 25
        
        ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
«Тізімдер»
(Алгоритмдеу және бағдарламалау негіздері пәні бойынша )
1304000 «Электрондық ... ... және ... мамандығы
Орындаған: топ ... ... ... ., ... пәні
оқытушысы
Қорғауға жіберілді (жіберілмеді).
«Информатика және ақпараттық
жүйелер» пәндер бірлестік жетекшісі
______________ .
(қолы)
«___»___________________ 2010 ж.
Ақтөбе ж
МАЗМҰНЫ
| |КІРІСПЕ | |
| |3 | |
| ... ... | |
|1 | ... ... МӘЛІМЕТТЕР 5 ... | ... жады ... Көрсеткіштер |
| |5 ... ... ... ... |
| |7 ... ... жадымен жұмыс жасау үшін қолданылатын |
| |11 |
| ... мен ... ... ... ... |
| |12 |
| 2 ... АЙНЫМАЛЫЛАР ҚҰРЫЛЫМЫ. ТІЗІМДЕР 15 ... ... Бір ... ... |
| |15 |
| ... ... ... |
| ... ... |
| ... ... КӨЗДЕР ТІЗІМІ ... ... ... ... ... ... ортасында
Динамикалық жадының құрылымы соның ішіндегі тізімдерді ... ... ... ... мен ... жадыны
қолдану арқылы тиімді пайдалану мен ақпаратты өңдеу бойынша программалаудың
тиімді әдістемелері қарастыру.
Жалпы алғанда компьютер жадысының тұрақты жады және ... жады ... ... ... Турбо Паскальда жазылған программаны орындау
уақытша жадыда жүргізіледі де, ... ... ... ... ... ... тұтас, белгілі бір аймағында
орналасады. Осы тұтас аймақты ... ... деп ... Мәліметтер
сегментінің ұзындығы 65536 байт немесе 64 кбайт болады. Бұл көлемдегі жады
қарапайым есептерді шешуге ғана мүмкіндік бере ... ал ... ... ... ... ... үшін қажет жады көлемі де
үлкен болуы керек екені түсінікті. Қазіргі ... ... ... 640 ... кем болмайды, сондықтан компьютер жадысына қатысты осы
мүмкіндіктерді толық ... үщін ... жады ... жады - бұл ... ... мәліметтердің сегментін, стекті
және программаньң өзінің денесі алатын орынды қоспағандағы немесе
есептемегендегі ... ... ... ... бере алатын уақытша жадысы.
Сонда ол уақытша ... жады ... ... ... ... кезде
программа үшін пайдаланылады да, ал оның жұмысы тоқтаған соң бұрынғы
қызметін атқара ... яғни ... жады ... ... ... ... жадысы байттар деп аталатын ұяшықтардан құралады. Бұл
байттардың барлығы номерленген. Осы ... ... ... ... ... ... ... пайдалану үшін осы ... ... Бүл ... ... қалай береді.
Байттың адресі екі сөзден құралады. Ол екі сөзді сегмент және ығысу деп
атайды. Жадының сегмент сақталатын бөлігі, адресі 16- ға ... ... ... ал ... ... ... бару үшін ... басынан
бастап неше байтты өткізіп жіберу керек екенін көреетеді. Осы ... ... үшін ... ... ... Бұл
динамикалық айнымалыларды көрсеткіштер ( немесе сілтемелер, нұсқағыш)
деп атайды.
Динамикалық мәліметтер ... ... ... массивтерді
өңдеуді қарастырайық. Бір элементтен тұратын ... үшін massiv ... massiv ... айнымалыны сипаттамаймыз да, ал мәліметтерінің
базалық типі massiv болатын типтелген көрсеткішті сипаттайық. Программаның
орындалу ... ... ... ... ... массив үшін жадыдан
қажет өлшемді бөле аламыз. Массивпен жұмыс жасалып болған соң, ... ... ... ... ... ... бөлу арқылы анықталатын
массивтер динамикалық деп аталады. х динамикалық массивінің і-ші элементі
х^[і] деп жазылады.
Динамикалық ... ... ... ... ... ... өзгертпейді. Ал кейде жеке компоненттерді алу немесе қосу арқылы
біртипті ... ... ... ... да ... Осы кезде
біз тізімдерді қолданамыз. Өзара көрсеткіштер мен байланысатын біртиптік
элементтер қатарын ... деп ... ... ... ... байланысқан бірипті элементтер қатары берілсін. Әрбір элемент,
соңғысынан басқа, мәліметтерімен қоса ... ... ... ... ... ... сызықтық бірбағытталған тізім деп аталады.
Курстық жұмыстың мақсаты: ... ... ... ... ... жады ... көрсеткіштер, динамикалық жадыны басқару,
динамикалық жадымен жұмыс жасау үшін ... ... ... ... ... тізім, бір ... ... ... ... ... ... міндеттері:
- Динамикалық айнымалылар құрылымы;
- Тізімдер;
- Бірбағытталған тізім;
- Байланысқан тізімдер;
Зерттеу обьектісі:TURBO PASKAL программалау ... ... ... оқып ... ... түрлі салалық
информациямен жұмыс істеуге нәтижелі болғандықтан дүние жүзінде көп тараған
тілдердің ... ... ... ... ... ... әрбір бағанның ұяшықтарындағы ақпараттарды өзгертуге немесе
ақпарат еңгізуге болады.
Зерттеу әдістері:Ұяшықтағы ақпаратты өңдеуге және ұяшыққа ақпарат енгізуін
әдістерін ... ... ... ... ... жады ... ... алғанда компьютер жадысының тұрақты жады және уақытша жады ... ... ... ... ... ... ... уақытша
жадыда жүргізіледі де, программада анықталған, сипатталған айнымалылардың
барлығы уақытша ... ... ... бір ... орналасады. Осы тұтас
аймақты мәліметтер сигменті деп ... ... ... ... байт ... 64 ... болады. Бұл көлемдегі жады қарапайым есептерді
шешуге ғана ... бере ... ал ... ... ... ... ... үшін қажет жады көлемі де үлкен болуы керек ... ... ... жалпы жадысының көлемі 640 кбайттан кем
болмайды, ... ... ... қатысты осы мүмкіндіктерді толық
пайдалану үшін динамикалық жады пайдаланылады.
Динамикалық жады – бұл ... ... ... стекті және программаның өзінің денесі ... ... ... ... ... ... ... программаға бере
алатын уақытша жадысы. Сонда ол уақытша берілетін жады программа жұмыс
істеп ... ... ... үшін ... да, ол оның ... тоқтаған
соң бұрыңғы қызметін атқара береді, яғни динамикалық жады өзгермелі жады
деген мағынаны білдіреді.
Компьютердің жадысы байттар деп ... ... ... ... ... ... Осы ... байттардың адресі деп
атайды. Программада компьютер жадысын ... үшін осы ... ... Бұл ... ... ... береді?
Байттың адресі екі сөзден құралады. Ол екі сөзді сигмент және ығысу
деп атайды. Жадының сигмент сақталатын бөлігі, ... 16 – ға ... ... басталады. Ол ығысу – қажет адреске бару үшін ... ... неше ... ... ... ... екенін көрсетеді. Осы адрестерді
программада көрсету үшін динамикалық ... ... ... ... ... (немесе сілтемелер нұсқағыш) деп
атайды.
Көрсеткіш – бұл динамикалық жадымен жұмыс істеу үшін ... ... ... Көрсеткіштің немесе динамикалық айнымалының қабылдайтын
мәндері бұл жадының байттарының ... ... ... ... динамикалық жадыға Паскальдағы кез – келген типке
жататын мәліметті ... ... және ... ... ... ... динамикалық жадыда 1 байтқа орналасуы мүмкін немесе қатар тұрған
2 байтқа, 4 байтқа, 16 ... да ... ... ... бұл ... бәрі бір ... есептеледі. Себебі, ол мәлімет орналасқан алғашқы
байттың ғана адресін көрсетіп тұрады.
Көрсеткіштердің екі түрі ... ... яғни ... ... ... ... ... байланыстырылады. Оны программада сипаттау үшін ″ ^ ″ (қалпақша)
белгісі қолданылады және төмендегідей түрде жазылады:
Var
Көрсеткіштің аты: ^ ... ^ ... ^ ... Pointer = ^ Person Record;
Person Record = record;
Name: string;
Job: string;
Next: Person Pointer;
End;
Мұндағы Person Pointer ... ... ... үшін әлі ... Record ... тип ... ал бұл ... осыған дейінгі
қарастырылған типтер үшін мүмкін емес еді. Бұл тек ... ... ... пайдалануға берілген мүмкіндік. Мұның мағынасы мынада:
динамикалық ... ... ... ... ... қарастырылған.
Тізімнің әрбір элементі екі бөліктен тұрады:
Бірінші бөлікте тізімнің элементі (немесе мәліметтің өзі, яғни ... ... ... ... бөлікте тізімнің келесі элементі орналасатын байттың адресіне
көрсететін, сілтейтін көрсеткіш (немесе тізім ... ... ... ... ... көрсеткіштің nil деген мәнін білдіреді (1
сурет).
|Тізімнің 1 – ші |
|элементі |
| ... ... n – ші |
| ... |
| Nil |
| ... 2 – ші ... |
| ... |
1 сурет. Мәліметтердің тізім түрінде берілуі.
Бұл тізім бір ... ... ... ... ... ... ... бастапқы 1 – ші элементке сілтейтін болса, онда тұйықталған тізім
пайда болады. ... ... ... ... деп те атайды.
1.2 Динамикалық жадыны басқару
Турбо Паскальда динамикалық жадыны байттардан құрылған ... ... да оны куча деп ... Нақты тұрғыдан алып ... ... ... ... ... кейінгі келесі үлкен адресті
байтынан ... ... басы HeapOrg, соңы HeapEnd ... ... ( 2 ... ... ... Жүйелік |
|облыс |
| ... |
| ... |
| ... ... |
Heap End →
Heap Ptr ... Org ... ... ... ... ДК ... орналасуы.
Бос динамикалық жадының ағымдағы шекарасын HeapPtr көрсеткіші бере
алады. Айталық, ... ... ... ... і = 2 ... сан мен
r=2*3,14=6,28=2*pi нақты санды орналастыратын және ... ... ... ... ... жадының өзгерісін қарастырайық. Мұнда
new және dispose динамикалық жадымен ... ... ... ... – динамикалық жадыға жіберілетін айнымалы үшін кучадан ... ... ... ... ал Dispose – керісінше кучадағы
айнымалыға берілген ... ... ... і және r ... ... ... орналастыратын
программа фрагменті келесі түрде болады:
Var
I: ^ integer; { i – ... ... ... }
R: “ real; { r – ... ... ... }
Begin
New ( i ); { i – көрсеткіш немесе динамикалық айнымалы үшін кучадан
орын босатылады, яғни і – ге ... ... }
I ^:= 2; { ... адрес бойынша 2 саны динамикалық жадыға орналасады}
New ( r ); { r – ге орын ... ^:= 2*pi; { r – дің ... ... 2 саны ... ... ( i ^ * 5 ); { i – ... мәліметті немесе 2 – ні 3 – ке
көбейтіп
баспаға шығару}
End.
Бұл мысалдан шығатын қорытынды ... i мен i ^ ... r мен r ... керек, мұндағы i мен r көрсеткіштердің өздері болып табылады
және олардың мәндері – ... ... ал i ^ мен r ^ бұл ... ... осы ... ... орналасады, сондықтан
мәліметтермен жұмыс істеген кезде i ^, r ^ ... ... ... ... ... ... босатып, қайтып беретін ... ... : ... ( i );
i ^ := 20;
writeln ( i ^ ); { баспаға 20 саны ... ... ол i ^ ... ( i ); { ... 2 ... ... ... береді}
writeln ( i ^ ); { 0 – ді шығарады, себебі, i ^ адрестегі орын ... i ... ... яғни ... ... ... тек i – ... 2 байт орын қайтадан босайды. Босаған көрсеткішті программада nil
қызметші сөзбен ... ... яғни dispose ( i );
i ... ... ... ... барлығын реттеп басқарып
отыратын « куча администраторы » деп аталатын ... ... ... Паскаль жүйесі статикалық жадыда мәліметтер үшін тек екі
сигмент бөлінеді: біреуі ... ( ... ), ... локальды (
жергілікті ) мәліметтер үшін. Бірінші сигментте барлық тұрақтылар мен Const
және Var ... ... ... емес ... ... негізгі
программаның сипаттамасы үшін және қолданылатын модульдер үшін жадыдан орын
болады.
64 килобайт – глобальдық мәліметтер сигментінің көлемі – көп ... ... ... бар ... шешу кезінде жеткіліксіз болады.
Мысалы, егер
Var х: array [ 1. . . 100, 1. . . 100 ] of ... ... онда 10000 ... бар осы ... ... ... яғни барлық сигменттің аумағын алады.
Глобальдық және локальдық мәліметтер үшін сигмент жетіспеген кезде
жүйе келесі ... ... Too Many ... » ( өте көп ... ... қатар, мәліметтер мен программа үшін статикалық жады
жетіспесе:
« Out of memory » ( жады ... ... ... ) ... ... ... ... мәліметтері үшін Турбо Паскальдың динамикалық
жадысын қолданған тиімді. Барлық динамикалық жады куча деп ... байт ... ... ... ... ... ... екі операциядан тұрады:
- мәліметтерге, олардың мәндерін жазу үшін жадыдан ұяшықтарды бөлу
( кучадан бөлу );
- жады ... ... ( ... ... ... ... ... да динамикалық жады ұяшықтарының адрестері бойынша,
көрсеткіштер арқылы ... ... ... ... ... үш ... бар. Оларды шартты
түрде басқару процедуралары деп атаймыз:
1. New – Dispose,
2. Mark – ... Getmem – ... ... жеке – жеке ... ... куча ... оны
басқаруда қолданылатын стандартты айнымалылардың сипаттамасына тоқталайық.
Кучаны басқару үшін Pointer типті ( ... ... ) үш ... енгізілген:
HeapOrg – кучаның бірінші байтының адресі, куча басы үшін;
HeapPtr – мәліметтер үшін кучадан ұяшықтар бөлінгеннен кейін, ... бос байт ... ...... ... байт – ... ... куча соңы үшін.
а) Динамикалық жадыны New – Dispose әдісімен басқару.
Типтелген көрсеткіштер арқылы басқарылатын бұл әдіс ... ... Осы ... ... ... жадыдан орын бөлу үшін New
процедурасы қолданылады: New (ААТК);
Мұндағы ААТК – айнымалы аты – типтелген ... ... 2 ... ...... ААТК : = HeapPtr, ... ... бос байттың адресі
меншіктеледі.
2 – шісі: HeapPtr : = HeapPtr + < ... ... ... ұзындығы >,
кучаның бос байт көрсеткішінің мәні,
типтелген
көрсеткішпен анықталған ... ... ... алып ... ... ... ... басқарудың
бірінші әдісіне Dispose процедурасы қолданылады:
Dispose ... ... ... ... айнымалылар алып тұрған ұяшықтар, әрі қарай ерекшелеу үшін
кучаға қайтарылады. Бұл кезде босаған ... ... мен ... жадының босап қалған аумақтардың тізіміне қосылады.
ә) Динамикалық жадыны MARK – RELEASE әдісімен басқару.
Бұл әдіс тек ... жады ... ... RELEASE
процедурасымен босату үшін қолданылады:
Процедураны шақыру: RELEASE ( vptr ... vptr – ... ... типті өрнек.
Бұл процедура кучаға адресі параметрмен берілген ... ... ... : = vptr; операторы орындалады.
Әдетте кучаны басқарудың бұл ... ... ... ... ... ... ... әрі қарай RELEASE ... ... ... ... MARK ... белгіленеді. Ұяшықты белгілеу, оның
адресін MARK процедурасы параметрінде, яғни типтелмеген айнымалы
көрсеткіште есте ... ... ... ... қажет болмағаннан кейін, оларға бөлінген
ұяшықтар RELEASE ( nptr ); ... ... ... nptr ... ... ... аты, ол MARK ... схема бойынша динамикалық жады бөлігінің барлық ұяшығы ... ... ... ... : MARK ( nptr ); ... nptr – Pointer ... ... орындалуы nptr айнымалысына HeapPtr көрсеткішінің мәнін
меншіктеуге негізделеді.
б) Динамикалық жадыны Getmem – Freemem әдісімен ... ... ... ... ... ... ... қандай да
бір көлемін сақтау үшін қолданылады, және де ... ... ... ... керек.
Динамикалық жады Getmem процедурасы бойынша бөлінеді, шақырылуы:
Getmem (nptr, < байт саны ... nptr – ... ... ... ... ... көрсетілген байт санын бөліп, ал ерекшеленген
аумақтың адресін, оның бірінші байтының адресін nptr айнымалысына енгізеді:
Getmem бойынша ... ... Freemem ... ... ( vptr, < байт саны > ... vptr – типтелмеген көрсеткіш типінің өрнегі.
Бұл процедура кучаға vptr адрес – мәні бар ... ... ... ... ... Getmem (nptr, < байт саны >); ... nptr
айнымалысының аты көрсетіледі.
Мысалы, динамикалық жадыда ұзындығы 100 байт болатын ұяшықтар ауқымын
ерекшелеу керек болсын. Және төмендегі сипаттама берілсін: var p: ... ... ... ... ... ерешелеу үшін Getmem ( р,
100) оператор – процедурасын жазу жеткілікті, ал ұяшықтарды кучаға қайтару
үшін: Freemem ( р ); ... ... ... ... ... ... үшін ... процедуралар мен
функциялар
Бұл бөлімде қарастырылып кеткен процедуралар және ... ... да, ... ... ... жасау кезінде қажет болатын
процедуралар мен функциялардың сипаттамасы келтіріледі.
ADDR функциясы. ... ... ... бар, Pointer ... ... Шақырылуы: ADDR ( х ).
Мұндағы х – программаның кез – келген обьектісі.
CSEG функциясы. Микропроцессордың CS регистрінде сақтаулы тұрған мәнді
қайтарады ( ... ... ... CS ... программа коды
басының сигменті болады ). Шақырылуы: CSEG. Нәтижесі WORD типті ... ... ... – ала ... ... орналасқан
динамикалық жадының фрагментін кучаға қайтарады. Шақырылуы : Dispose ( ... ТР – ... ... ... Микропроцессордың DS регистрінде сақтаулы тұрған мәнді
қайтарады. ( Бұл регистрде программадағы мәліметтер басының ... ). ... ... ... де WORD типті сөз.
FREEMEM процедурасы. Алдын – ала типтелмеген көрсеткіш ... ... ... ... қайтарады. Шақырылуы: FREEMEM ( ... ... р – ... ...... қалған фрагментінің байтпен берілген ұзындығы.
Getmem процедурасы. Динамикалық жадының ... ... ... көрсеткішке бөліп қояды. Шақырылуы: Getmem ( P, SIZE );
MAXAVAIL функциясы. Кучаның ең үлкен тұтас бөлігінің өлшемін, көлемін
байтпен береді. Шақырылуы: ... ... типі longint ... Бұл ... ... new, ... шақырмай тұрып, алдын – ала динамикалық жады ... ... ... ... ... обьекті адресінің ығысуын береді. Жазылуы:
OFS ( х );
Мұның нәтижесінің типі WORD болады, ал х кез – ... ... ... немесе
процедураның аты немесе айнымалы.
SEG функциясы. Берілген ... ... ... ... ... типі WORD ... ... SEG ( х );
Мұндағы х кез – келген типті өрнек, айнымалы немесе процедура.
PTR ... ... ... ( seg ) және ... ( ofs ) ... типінің мәнін анықтайды. Жазылуы: PTR ( seg, ofs );
Мұндағы seg – WORD типті сигментті білдіреді, ofs – WORD ... ... ал PTR ... типі кез – ... ... ... бола ... функциясы. Берілген обьектінің ішкі кодының ұзындығын байтпен
береді. Жазылуы: SIZEOF ( х );
Мұндағы х кез – ... ... ... ... ... ... ... анықталмаған массивтерді
өңдеуді қарастырайық. Бір элементтен ... ... үшін massiv ... massiv ... ... ... да, ал ... типі massiv болатын типтелген көрсеткішті сипаттайық. ... ... ... ... санын анықтап, массив үшін жадыдан
қажет өлшемді бөле аламыз. Массивпен ... ... ... соң, ... жадыны босатуға болады. Жадыны осылайша бөлу арқылы анықталатын
массивтер динамикалық деп аталады. х динамикалық ... і-ші ... деп ... ... ... ... келесі мысалдан
қарастырайық: х(n) ... ... және ... ... ... осы есепті дәстүрлі тәсілмен шығарып алайық:
Program din_mas1;
Var
X: array[1..150] of real;
I,n:integer; max,min:real;
Begin
Writeln(‘massiv olshemin engiziniz’);
Readln(n);
For i:=1 to n ... ... ... i:=2 to n ... x[i]>max then max:=x[i];
If x[i]max then max:=x^[i];
if x^[i] nil do begin
Write (engizilgen elementtin inf);
Writeln(k^.inf);
K:=k^.next;
End;
Writeln(‘s=^’,s/j);
End.
3 – есеп. Бір тізімнің элементтері 2 – ... ... dispose ... ... ... ... tizim_ kyry (var ... not eof do
Begin
New(p);
Readln(p^.info)p^.next:=ptrlist;
Ptrlist:=p
End;
End;
Procedure tizim _ tizy(ptrlist:plist);
Begin
While(ptrlist < >nil do);
Begin
Write(ptrlist^.info:4);
End;
Var
Tizim 1, tizim 2, p1, ... _ ... ... _ ... ... p2 < >nil do
Begin
P1:=tizim1;
P1 1:=tizim1;
While p1< >nil do
Begin
If p1^.info=p2^.info then
Begin
P:=p11;
Dispose(p);
End;
P11:=p1;
P1:=p1^.next;
End;
P2:=p2^.next;
End;
Tizim _ tizzy(tizim1);
End.
ҚОРЫТЫНДЫ
Жалпы алғанда компьютер жадысының тұрақты жады және ... жады ... ... ... ... ... ... орындау уақытша
жадыда жүргізіледі де, программада анықталған, сипатталған айнымалылардың
барлығы уақытша жадының тұтас, ... бір ... ... Осы ... мәліметтер сигменті деп атайды. Мәліметтер сигментінің ұзындығы
65536 байт немесе 64 кбайт болады. Бұл ... жады ... ... ғана мүмкіндік бере алады, ал үлкен көлемдегі мәліметтерді өңдейтін
қолданбалы программалар үшін қажет жады ... де ... ... ... ... Қазіргі компьютерлердің жалпы жадысының көлемі 640 кбайттан кем
болмайды, сондықтан компьютер жадысына қатысты осы ... ... үшін ... жады ... жады – бұл ... ... мәліметтердің
сигментін, стекті және ... ... ... ... орынды
қоспағандағы немесе есептемегендегі жұмыс істеп тұрған программаға бере
алатын уақытша жадысы. Сонда ол ... ... жады ... ... ... ... ... үшін пайдаланылады да, ол оның жұмысы тоқтаған
соң бұрыңғы қызметін ... ... яғни ... жады ... ... мағынаны білдіреді.
Көрсеткіш – бұл динамикалық жадымен жұмыс істеу үшін енгізілген ұғым,
шама, айнымалы. ... ... ... ... қабылдайтын
мәндері бұл жадының байттарының адресі болып табылады.
Көрсеткіштер арқылы динамикалық жадыға Паскальдағы кез – ... ... ... ... ... және ... ... Айталық, бұл
мәліметтер динамикалық жадыда 1 байтқа орналасуы мүмкін немесе қатар ... ... 4 ... 16 ... да орналасуы мүмкін, бірақ бұл көрсеткіштер
үшін бәрі бір болып есептеледі. Себебі, ол ... ... ... ғана ... көрсетіп тұрады.
Турбо Паскальда қолданылатын мәліметтердің арнайы құрылымдарын
олардын өздеріне ғана тән ерекшеліктеріне ... : ... ... тізімдер,
граф-агаш, бағдарланған граф деп ... Бұл ... ... ... ... ... оларды сәйкесінше динамикалык
стек, динамикалык тізім және т.б. деп атайды.
Мәліметтердің арнайы құрылымдары көбінесе қолданбалы есептерді шешуде
қажет болады. Бұл ... бір ... ... ... ... ... өзі, осы мәліметтерді пайдаланудың арнайы бір ... ... ... ... ... ... ... өзара бір-бірімен байланыстары
көрсетіледі.
Бір элементтен тұратын массив үшін massiv ... ... ... айнымалыны сипаттамаймыз да, ал мәліметтерінің базалық типі massiv
болатын ... ... ... ... ... кезінде
массивтегі элементтер санын анықтап, массив үшін жадыдан қажет өлшемді бөле
аламыз. ... ... ... болған соң, алдыңғы бөлінген жадыны
босатуға болады. Жадыны осылайша бөлу ... ... ... деп ... х ... ... і-ші ... х^[і] деп
жазылады.
Бұл арнайы құрылымдардьң статикалық және динамикалық деп ... ... Егер ... ... элементтер саны алдын-ала берілген
немесе шектеулі болса, онда ол статикалық құрылым болып табылады және ... ... ... да бәрібір, ал керісінше элементтер санына шек
қойылмаса немесе олардың саны белгісіз болса, онда ... ... ... ... ... ғана орналаса алады.
Кейде жеке компоненттерді алу немесе қосу ... ... ... ... ... да ... Осы ... біз тізімдерді
қолданамыз. Өзара көрсеткіштер мен байланысатын біртиптік ... ... деп ... ... ... ... тізбегімен
байланысқан бірипті элементтер қатары берілсін. Әрбір элемент, соңғысынан
басқа, мәліметтерімен қоса келесі элементке ... ... ... ... ... ... ... деп аталады.
ПАЙДАЛАНЫЛҒАН ДЕРЕК КӨЗДЕР ТІЗІМІ
1. Фаронов В. В. Турбо Паскаль 7.0. Начальный курс –М.:Нолидж, 1999
2. Мұқашева М.Ө. ... ... ... ... ... - ... ... Е.А. Программирование на языке Турбо Паскаль. Уч. ... ... ... Турбо Паскаль программалау тілі.
5. Немнюгин С.А. TURBO PASCAL. Санк-Петербург «Питер» 2000жыл
6.Перминов О.Н. «Программирование на языке ... ... ... и
связь» 1988 жыл.
7. Анохин В.Е., Глинский Я.Н., Ряжская В.А. ООО «ДиаСофтЮп» 2001 жыл.
8. Попов И.И., ... Г.Л., ... О.Л. ... ... ... 2008 ... ... Т.Ж. «Паскаль тілінде программалау» Алматы 2001 жыл
10. Культин Н. «TURBO PASCAL для начинающих» БХВ-Петербург 2000 жыл.
-----------------------
Мәліметтер
А
Мәліметтер
В
Мәліметтер
С ... ...

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 22 бет
Бұл жұмыстың бағасы: 500 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Delphі тіліндегі бағдарламаның құрылымы16 бет
«Айнымалы жұлдыздар үшін информация мен энтропия қатынасын анықтау»48 бет
Астрономияның қазақстанда даму жолы48 бет
Бисызықты жүйені басқаруға зерттеу5 бет
Динамикалық жүйелер5 бет
Күрделі жүйелер динамикасын айқындаудың Таккенс әдісі3 бет
Макроэкономика үлгілердің экономикалық мәні10 бет
Операторлар жайлы10 бет
С++35 бет
Си тілі17 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь