Автор работы: Пользователь скрыл имя, 06 Марта 2013 в 15:40, курсовая работа
Мәліметтердің айнымалы типтері стандартты типтерден өзгеше болып келеді. Мәліметтердің әртүрлі типтері үшін амалдар қолдануға болады. Мысалы, нақты сандар үшін + ,- ,* ,/ амалдарын орындағанымызбен, оларға DIV (бөлінді табу), MOD (бүтін санды бүтін санға бөлгендегі қалдыкты табу) амалдарын қолдану мүмкін емес. Мәліметтердің жаңа типін құру бір жағынан амалдарды орындау жолдарын жеңілдетсе, екінші жағынан қате жібермеуге мүмкіндік береді. Сонымен, мәліметтердің стандартты типтерінен өзге жаңа айнымалы типтерді құруға болады. Мәліметтердің бұл типтеріне саналатын және шектелген типтер жатады.
I. Кіріспе 4
II. Мәліметтердің күрделі типтері 6
2.1 Жиымдар (массивтер) 6
2.2. Көп өлшемді жиымдар 12
2.3 Жиындар 14
2.4 Жазбалар 17
2.5 Жалғастыру операторы WITH 21
ІІІ. Қорытынды 22
IV. Пайдаланылған әдебиеттер 23
V. Қосымша 24
Аралас типтер.Иерархиялық жазбалар
ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТІРЛІГІ
ШЫҒЫС ҚАЗАҚСТАН ОБЛЫСЫ ӘКІМДІГІНІҢ БІЛІМ БАСҚАРМАСЫ
КМҚК «БИЗНЕС КОЛЛЕДЖІ»
Курстық жоба
Пән: Алгоритм және бағдарламалау негіздері
Тақырыбы: «Аралас типтер. Иерархиялық жазбалар.»
Тексерген оқытушы: Мусаинова Н.Б.
КМҚК «Бизнес колледж»
«Алгоритм және бағдарламалау негіздері» пәнінен курстық жобаға
Тапсырма
Студент Қажкенова Жұпар Қайрлықызы
Топ 33 прог, мамандығы
«1304000» Есептеу техникасы
Консультант Мусаинова Н.Б
Шрифт Times New Roman, өлшемі 14 пт, енімен түзету.
Суреттер Word, Excel, Paintbrush редакторларында салынады.
Бет өлшемі жоғарғы және төменгі шек аралар – 2 см, сол жақтан 3 см оң жақтан 1,5 см.
Мәтіндегі жаңа сөйлем 1 см ара қашықтықтан басталады.
Анықтама хаттың әр бөлімі жаңа беттен басталады.
Бөлімдер мен бөлімшелердің тақырыпшалары болу керек.
Тақырыпшалар бөлімдер мен бөлімшелердің мазмұнын анық көрсету керек.
Тақырыпшалар жазбаша түрде нүкте қойылмай жазылу керек.
Тақырыпшаны бөліп жазуға болмайды. Егер тақырыпша екі сөйлемнен тұрса оны нүкте арқылы бөледі.
Курстық жобаны қорғауда негізгі мазмұны бар презентация құрылады.
3.2. Анықтама хатта келесі бөлімдері
Берілген күні ___________ Аяқталған күні ________
Жетекшісі Мусаинова Н.Б
Мазмұны:
Курстық жобаның тапсырмасы
I. Кіріспе
II. Мәліметтердің күрделі
типтері
2.1 Жиымдар (массивтер)
2.2. Көп өлшемді жиымдар
2.3 Жиындар
2.4 Жазбалар
2.5 Жалғастыру операторы WITH
ІІІ. Қорытынды
IV. Пайдаланылған әдебиеттер
V. Қосымша
I. Кіріспе
Айнымалы типтер
Мәліметтердің айнымалы типтері стандартты типтерден өзгеше болып келеді. Мәліметтердің әртүрлі типтері үшін амалдар қолдануға болады. Мысалы, нақты сандар үшін + ,- ,* ,/ амалдарын орындағанымызбен, оларға DIV (бөлінді табу), MOD (бүтін санды бүтін санға бөлгендегі қалдыкты табу) амалдарын қолдану мүмкін емес. Мәліметтердің жаңа типін құру бір жағынан амалдарды орындау жолдарын жеңілдетсе, екінші жағынан қате жібермеуге мүмкіндік береді. Сонымен, мәліметтердің стандартты типтерінен өзге жаңа айнымалы типтерді құруға болады. Мәліметтердің бұл типтеріне саналатын және шектелген типтер жатады.
Мәліметтердің саналатын типтері.
Қабылдай алатын мәндерінің реттелген тізімі арқылы берілетін тип саналатын тип болып есептеледі.Бұл типті сипаттау оның мүмкін мәндерінің идентификатор түріндегі тізімін берумен анықталады. Ол идентификаторларға кіретін әрбір атау тұрақты болып саналады да, бір - бірінен үтірлермен бөлініп, жалпы атаулар тізімі жай жақшаға алынады. Тізімдегі алғашқы тұрақтының нөмірі -0, келесінің нөмірі - 1, ары карай 2, 3, т.с.с. болып біртіндеп өciп отырады. Осылай анықталатын саналатын типті әркім шығарылатын есептің түріне байланысты өздері сипаттай алады.
Оның жазылу форматы:
TYPE <тип атауы> = (<1~мән, 2-мән,..n - мән>);
VAR Идентификатор,... > : <тип атауы>;
Саналатын типтің синтаксистік диаграммасы былай өрнектеледі.
1-сурет. Саналатын типтің диаграммасы
Мәліметтердің шектелген типі.
Егер айнымалы сипаттау бөлімінде көрсетілген мәндердің белгілі бір аралығын ғана қабылдайтын болса, онда оны шектелген munmi айнымалы немесе аралық (интервалды) munmeгi айнымалы деп айтады. Мұндай типтегі айнымалының алғашқы және соңғы мәндері нүктелермен бөлiнiп тұрақты түрінде көрсетіледі де, ол екеуі де бір стандартты типте (real типін қолдануға болмайды) болып, міндетті түрде алғашқы мән соңғы мәннен кіші болуы керек.
Оның жазылу форматы:
TYPE <тип аты> - <1-тұрақты.. 2-тұрақты>;
VAR Идентификатор, ...> : <тип аты>;
Шектелген типтің синтаксистік диаграммасы былай өрнектеледі:
Шектелген типтің синтаксистік диаграммасы
Сонымен, шектелген типті пайдалануда төмендегі заңдылықтар орындалуы тиіс:
Шектеуші eкі тұрақтының типі бірдей болуы қажет.
Негізгі айнымалы нақаты REAL типінен басқа төмендегідей қарапайым типтің бipi бола алады:
бүтін тип - INDEX = 0..63;
символдық тип - LETTER = ‘A’… ‘Z’;
саналатын тип- күз — сентябрь., қараша;
Шектелген типтегі алғашқы тұрақтының мәні соңғысының мәнінен артық болмауы қажет.
Шектелген типтің айнымалылары типтер немесе айнымалылар бөлігінде міндетті түрде сипатталуы керек.
II. Мәліметтердің күрделі типтері
2.1 Жиымдар (массивтер)
Паскаль тілінде мәліметтер қарапайым және күрделі типтерге жіктеледі. Қарапайым типтерге - стандартты, саналатын және шектелген типтегі мәліметтер, ал күрделі типтерге жиымдар (массивтер), жиындар (множества) жазбалар (записи) және файлдар жатады. Күрделі типтің элементтерінің қарапайым немесе күрделі типте болуы мүмкін.
Тұрмыста тізбектелген сандарды, кестелердің реттелген жолдарын, фамилия тізімдерін көп пайдаланамыз, олар бip өлшемді (жатық немесе тік жол) немесе екі өлшемді (матрица) жиым элементтері болуы мүмкін.
Паскаль тілінде қарапайым
Жиым деп бip атаумен белгіленіп, реттеліп біріктірілген мәліметтер тобын айтамыз. Мысалы, нақты сандардан құрылған төмендегі тізбекті
1.6,14.9, -5,0, 8-5,0.46,2.25, -9.85,6.27, 5.7, -3.2
бір өлшемді жиым деп, оған А деп атау беруге болады. Жиымның әр элементі жиымның атымен белгіленеді де,тік жақша ішінe оның индексі қойылады, яғни жиым элементтері индекстері бойынша peттeлiп жазылады. Математикада жиым вектор түрінде көрсетіледі де, A1, А2,Аn немесе жалпы түрде A1, i=l, 2,n болып өрнектеледі. Жоғарыдағы жиымда А[1]=1.6, А[2]=14.9 және т.с.с. А[10]=-3.2 тәрізді мәндер қабылдайды. Жиымның кез келген элементін оның реттелген нөмерін ,яғни индексін көрсету жолымен пайдалана аламыз. Индекстер нақты типтен басқа кез келген скалярлы (реттелген) тұрақты немесе өрнек күйінде бола береді. Жиым элементтерінің саны оның индексінің мәнімен және олардың өзгеру аралығымен анықталады. Жиымды сипаттау array of сөз тіркесі қолданылады.
Оның жазылу форматы:
type <тип аты> = array [индекс типі] of <элемент типі>;
var <идентификатор, ...>: <тип аты>;
мұндағы array /жиым/ of /-дан, -ден, -тан, -тен/ — түйінді сөздер, [индекс типі] - real, integer базалық типтерінен өзге кез келген стандартты тип, яғни индекстің типі ретінде шектелген, саналатын, логикалық және литерлік типтер пайдаланылады. <элемент типі> - құраушылар (элементтер) типі, яғни Паскаль тілінде пайдалануға болатын жиым элементтерінің типі.
Бұдан программада жиым пайдаланылатын болса, онда ол VAR айнымалы бөлмінде немесе TYPE тип бөлiгiндe сипатталуы қажет eкені көрінеді. TYPE бөлiгiндe жиымның типі көрсетіледі де, одан соң айнымалы VAR бөлігінде осы типке жататын жиымдар көрсетіледі. Жиымды TYPE бөлiгiндe сипаттау программа көлемін үлкейтеді, бірақ программаны тез түзетуді, онда көп қате жібермеуді қамтамасыз ете алады.
Жиымның синтаксистік диаграммасы былай кесінделеді
5.3-сурет. Жиымның синтаксистік диаграммасы
Мысалы, программада нақты 40 элементтен тұратын А жиымы пайдаланылатын болса, онда оны тип бөлігінде былай сипаттайды:
type m= array [1..40] of real;
var a,b,c,d: m;
Бұның артықшылық жері - программадағы типі m болатын бірнеше жиым бip ғана жолмен ыңғайлы түрде сипатталып тұр.
Жиым типтер бөлігінде көрсетілмей, бірден айнымалылар бөлігінде былай анықтала береді:
Var <идентификатор, ..> : array [индекс типі] of [элемент типі];
Мысалдар:
type
Klass = (Kl, К2, КЗ, К4); Znak = array [1 ..255] of char;
Var
Ml : Znak; { Znak типi типтер бөлігінде анықталған}
M2 : array [1..60] of integer;
{ M2 жиымын тікелей сипаттау}
МЗ : array [1..4] of Klass;
Mas : array [1..4] of integer;
Lit: array [char] of real;
Ogr: array[5.. 15] og char;
Bol: array[boolean] of integer;
A: array[1..5] of real;
Aj : array [январь..., декабрь ] of integer;
Индекс типі стандартты, бүтін немесе нақты бола алмайды. Сондықтан, сипаттауды былай жазуға болмайды:
VAR А : ARRAY[5] OF REAL;
немесе
VAR А : ARRAY[INTEGER] OF REAL;
Егер бірнеше жиым бірдей базалық және индексік типте болса, онда оларды жиым ретінде сипаттағанда үтip арқылы бөліп жазуға болады:
VAR А,В,С : ARRAY [1 ..10] of REAL;
Мұнда А,В,С - жиымдар, олар нақты типтегі 10 саннан (элементтен) тұрады.
Программада "индекс" және "индекстің типі" ұғымдарын шатастыруға болмайды. Индекс типі жиымды сипаттағанда пайдаланылса, индекс жиым элементтерін белгілеу үшін операторлық бөлікте пайдаланылады.Индексті сипаттағанда қандай тип берілсе, индекс сол типте ғана болуы қажет. Индекс өрнек, айнымалы немесе тұрақты түрлерінде берілуі мүмкін.
Сондықтан да көбінесе жиымдарды индексті айнымалылар деп те атайды. Ал индекссіз айнымалыларды жиымдардан ажырату үшін қарапайым айнымалылар дейді. Базалық типтегі айнымалыларға қандай амалдар қолданылса, жиым элементтеріне де сондай амалдарды қолдануға болады. Мысалы, программаның операторлық бөлігінде жиым элементтері үшін мынадай өрнектер жазуға болады:
А[3]:=С[4]+5;
S:=S+X[K]
Р:=Х[3*1+1];
Егер жиым атауында бip ғана индекс болса, онда ол жиымды бip өлшемді, ал екі индекс болса - екі өлшeмдi және т.с.с.n индекс болса, n өлшемді жиым дейді.Бip өлшемді жиым вектор элементтері, ал eкi өлшемді жиым матрица болып табылады.
Осы айтылғандарға сәйкес жиым элементтері былай белгіленеді: A[i], B[i,j], C[i,j,k] және т.с.с. Мұндағы A[i] бip өлшемді жиымның i-шi элементі, оны математикада аі түрінде белгілейді, B[i,j] eкi өлшемді жиымның (кестенің) i- жолы мен j-бағанасының қиылысында орналасқан элементті белгілейді; ал C[i,j,k] үш өлшемді жиым, оның элементін кеңістікте орналасқан нүкте координаталары (i j,k) деп қарауға болады.
Егер көп өлшемді жиым құрар кезде базалық тип ретінде басқа жиым алынса, онда сипаттау бөлігі былай жазылады:
type vector = array[1. .4] of integer;
massiv = array[1..4] of vector;
var matr: massiv;
Мұнда massiv жэне matr жиымдары екі өлшемді, яғни massiv4,4, matr4,4 - олар 4 жол және 4 бағанадан тұратын кесте элeмeнттepiн бейнелейді. Жиым элементтері компьютер жадында тізбектеле орналасады. Төменгі индексті жиым элементі кіші адрестерде, жоғарғы индекстердегі элементтер жоғарға адрестерде сақталады. Көп өлшемді жиымдардың оң жақ шеткі индекстері бірінші болып өciп отырады. Мысалы, A: array[1..5,1..5] of integer жиымы берілсе, ол компьютер жадында адрестерінің өсуі бойынша былай орналасады:
А[1,1]
А[1,2]
…
А[1,5]
А[2,1]
А[2,2]
…
А[5,5]
Мәселен, бізде үш топ бар екен дейік: а, ә және б топ. Топ студенттерінің бес сабақтан алған орташа бағалары төмендегі кесте түрінде көрсетілген.
Сабақ аттары |
I- топ |
2- топ |
3- топ | |
1 |
Информатика |
4,1 |
4,7 |
4,2 |
2 |
Математика |
4,4 |
4,3 |
4,0 |
3 |
Экономика |
4,5 |
4,6 |
4,7 |
4 |
Қазақ тілі |
4,2 |
4,0 |
3,9 |
5 |
Орыс тілі |
4,3 |
4,5 |
4,6 |
Егер қарастырылатын жиымның аты В болса, онда оны былай жазады:
4,1 4,7 4,2
4,4 4,3 4
В= 4,5 4,6 4,7
4,2 4,0 3,9
мұндағы цифрлар В
жиымының құраушылары немесе элементтері деп аталады. Олар да сол атаумен белгіленіп, оның төменгі шетіне элементтің орналасқан орындары көрсетіледі
Алгоритмдік тілдерде өрнектер тек сызықты (бір жол бойында) түрде жазылатын болғандықтан индекстер Паскаль тілінде жиым атауынан соң тік жақша ішіне үтір арқылы бөлініп жазылады, яғни: B[i, j]. Паскаль тілінде жиым элементтерін басқаша да белгілеуге болады, мысалы, b[i] [j]. Паскаль тілінде жазылған программада жиымды пайдалану үшін, оны программаның сипаттау бөлігінде көрсету қажет. Жиымды программаның тип немесе айнымалылар бөлігінде сипаттауға болады.