Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4444УМК17.11.05каз_Delphi.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1.42 Mб
Скачать

Жиындар

Жиын – элементтер алдын-ала анықталған терім мәндерінен алынған жиынтығы. Барлық элементтердің қатарланған типі бар; жиын элементінің саны 256- дан көп болмауы тиіс. Жиындық типтік сипатталуы:

Set of <Элементтер типі >;

Жиындық типтік айнымалысында өз жиынының нолден бастап максимал санға дейін элемент болуы мүмкін. Жиындық типтік мәні квадрат жақшаға алынады.Бос жиын бос вадрат жақшамен белгіленеді- []. Жиындарға жүргізілетін операциялар 2.5 кестесінде көрсетілген:

Кесте 2.5- Жиындарға жүргізілетін операциялар

Аталуы

Нәтиже типі

Нәтиже

+

Жиындарды қосу

жиын

1 және 2 жиынның қайталанбайтын элементтері

-

Жиындарды алу

жиын

2-ге жатпайтын 1-жиынның элементтері

*

Жиындардың қиылысуы

жиын

Екі жиынға да бірдей элементтер бар

=

эквиваленттілік

Boolean

True,егер жиындар эквивалентті

<>

Эквиваленттілік емес

Boolean

True,егер жиындар эквивалентті емес

<=

Кірісін тексеру

Boolean

True,егер 1-жиын 2-ге кірсе

>=

Қосылуын тексеру

Boolean

True,егер 1-жиын 2-ні қосса

Сонымен қатар in операциясы реттік типті (бірінші операнд) мәннің жиынға(екінші операнд) тиістілігін анықтайды.Операция нәтижесі Boolean типті және True мәні болады егер жиын мәніне қатыстылығы сақталса.

Мысал:Жиынды қолдану.

Type MonthDays= Set of 1..31;

Var Color: Set of(Red,Blue,White,Black);

Day: MonthDays;

Color:=[Blue];

Color:= Clor-[Blue,Red,White];

Color:=Color+[Black];

Color:=Color+[Black];

Day:=[];

Day:=Day-[1];

Day:= [2-4];

Day:=Day+[5,12,1];

Day:=Day-[1];

Келтірілген мысалда MonthDays жиындық типі қарастырылады, және Color мен Day жиындық типтік айнымалылары хабарланған.Бұлардың үстінен қосу және алу операциялары орындалған.Төртінші қосу операторында Color жиынына Black мәні қосылған.Мұндай қосу тура, бірақ бұл кезде жиын мәні өзгермейді.Алтыншы қосу операторында Day бос жиынынан элемент алынады; бұл оператрды орындау нәтижесінде жиын мәні өзгермейді.

Delphi-де жиындық типтер ,мысалы, TborderIcon терезесіндегі батырма типін немесе TfilterOptions фильтр параметрінің типін сипаттау үшін қолданылады.

Type TborderIcon=(biSystemMenu, biMinimize,biMaximize,biHelp);

TborderIcons= set of TBorderIcon

Type Tfilteroptions=(foCaseInsensitive,foNoPartialCompare);

TfilterOptions=set of TfilterOptions

Келтірілген тип сипаттамалары бастапқы модульдерде сақталған.

Массив – бұл бір типтегі элементтердің жиынтығын құрайтын берілгендер құрылымы. Берілгендер массивтері біртипті қарапайым айнымалылар тізбегін береді. Басқаша айтқанда, массив – бір атауға біріктірілген айнымалылардың реттелген жиыны. Массив бір ғана әріппен белгіленеді. Әрбір жеке алынған айнымалы массив элементі деп аталады. Массивтің әрбір элементіне бір сандық немесе символдық мән меншіктелуі мүмкін.

Массивтің әрбір элементі индексті массив атымен белгіленеді. Паскаль тілінде индекс тік жақшаға алынып жазылады А[I]. Сондықтан, массивтің кез-келген элементіне қатынас жасауға болады. Берілген массивтің бірінші элементіне қатынас жасау үшін массив атауынан кейін бірінші индексті көрсету қажет: А[1]; массивтің екінші элементіне қатынас алу үшін: А[2].

Индекс өрнек, айнымалы немесе тұрақты болып берілуі мүмкін. Сондықтан да көп жағдайда массивті индексті айнымалылар деп те атайды. Базалық типті айнымалыларға қандай амалдар қолданса, массив элементтеріне де сондай амалдар қолданылады.

Бірөлшемді массив. Екіөлшемді массив немесе матрица

Массивтер бірөлшемді және көпөлшемді болуы мүмкін.

Егер массивтің әрбір элементі тек бір индексті болса, онда олар бірөлшемді массивтер деп аталады. Бір өлшемді массивті айнымалылар жолы немесе бағана түрінде көрсетуге болады. Егер массивтің атауында бірнеше индекс болса, онда оны көпөлшемді массив деп атайды. Екі өлшемді массивті элементтері m жолдан және п бағаннан тұратын кесте немесе матрица түрінде көрсетуге болады.

Егер программада массив пайдаланылатын болса, онда ол айнымалы (Var) бөлігінде немесе тип (Type) бөлігінде бейнеленуі қажет. Паскаль тілінде массивтер айнымалыларды сипаттау бөлімінде ARRAУ қызметші сөзімен көрсетіледі және оның типі сипатталады:

Var массив аты: Array[индекс типі] of элемент типі;

Мұндағы Array (массив), of (одан) - қызметші сөз.

Массивтердің типтер (type) бөлімінде хабарлануының жалпы түрі:

type Массив типі атауы=array[индекс типі]of элемент типі;

var массив атауы: массив типі атауы;

Массив типі атауы – массив элементтерінің жиынын сипаттайды; индекс типі – тізбектелген немесе шектелген типтерді көрсету; элемент типі – массив элементтерінің типін көрсету.

Берілген массивтің кез-келген элементтеріне арифметикалық операцияларды, салыстыру және меншіктеу операторларын қолдануға болады. Сонымен қатар, массивтерге Turbo Pascal программалау тіліндегі айнымалы типіне сәйкес келетін барлық стандартты процедуралар және функциялар қолданылады. Массивтің кез-келген бір элементіне нәтиже беру үшін меншіктеу операторы қолданылады.

Массив элементтерін енгізу жолдары

Массивтерді енгізу, шығару және өңдеу үшін циклдік операторларды (for, while, repeat) қолданған ыңғайлы. Массив элементтерін енгізудің мынадай түрлері бар:

  1. Пернетақтадан енгізу:

For I:=1 to 10 do

Begin

Writeln(‘массив элементінің мәнін енгізіңіз');

Readln(a[I]);

End;

  1. Кездейсоқ сандармен енгізу:

For I:=1 to n do

A[I]:=random(n);

{элементтердің саны n алдын-ала берілуі керек}

  1. Формула бойынша енгізу:

For I:=1 to 10 do

A[I]:=sin(i)-cos(i);

Екі өлшемді A[2,3] массивін пернетақтадан енгізу:

For I:=1 to 2 do

For j:=1 to 3 do

Begin

Write(‘a[‘,I,’,’,j,’]элементінің мәнін енгізіңіз’);

Read (a[I,j]);

End.

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

Бірөлшемді массивпен шығарылатын стандартты есептерге тоқталайық:

  1. ең үлкен (ең кіші) элементті табу;

  2. элементтердің қосындысын есептеу (шартты және шартсыз);

  3. берілген шартты қанағаттандыратын элементтерді санау;

  4. берілген элементті іздеу;

  5. элементтің орналасқан жерін анықтау;

  6. элементті өшіру;

  7. элементтерді кездойсоқ жолмен таңдау;

  8. екі реттелген массивті реттелген массивке біріктіру;

  9. массивтерді сұрыптау және т.б.

Беттері көрсетілген негізгі әдебиет

  1. [C.868,874,883-887]

  2. [C.115-122,131-170]

  3. [C.52-55]

Сұрақтар

  1. Деректердің құрылымдық типі нені көрсетеді?

  2. Сізге қандай деректердің құрылымдық типі белгілі?

  3. Сізге қандай физикалық жолдық тип белгілі?

  4. Деректердің жалпы жолдық типінің қандай түрлері бар?

  5. Массивтер дегеніміз не?

  6. Массивтердің қандай типтерін білесіз?

  7. Жиын дегеніміз не?

  8. Бос жиын дегеніміз не?

  9. Жиынға қандай операцияларды қолдануға болады?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]