Паскаль программалау ортасында "Телефонная книга" программасын құру
КІРІСПЕ
1. ҚҰРЫЛЫМДЫ ТИПТІ МӘЛІМЕТТЕРДІ ӨҢДЕУ ТЕХНОЛОГИЯЛАРЫ
1.1 Паскаль тіліндегі жолдық типті мәліметтер түсінігі
1.2 Паскаль тіліндегі жиын типті мәліметтер
1.3 Жазбалар типті мәліметтерді өңдеу технологиялары
2. ПАСКАЛЬ ПРОГРАММАЛАУ ОРТАСЫНДА ДЕРЕКТЕР ҚОРЫН ҚҰРУ
2.1 "Телефон анықтамалығы" деректер қорының программасын әзірлеу
ҚОРЫТЫНДЫ
1. ҚҰРЫЛЫМДЫ ТИПТІ МӘЛІМЕТТЕРДІ ӨҢДЕУ ТЕХНОЛОГИЯЛАРЫ
1.1 Паскаль тіліндегі жолдық типті мәліметтер түсінігі
1.2 Паскаль тіліндегі жиын типті мәліметтер
1.3 Жазбалар типті мәліметтерді өңдеу технологиялары
2. ПАСКАЛЬ ПРОГРАММАЛАУ ОРТАСЫНДА ДЕРЕКТЕР ҚОРЫН ҚҰРУ
2.1 "Телефон анықтамалығы" деректер қорының программасын әзірлеу
ҚОРЫТЫНДЫ
Компьютерлік техниканың даму сатысының алғашқы сатысында кез келген қолданбалы программа арнаулы мәліметтерді жинақтаумен қатар жүрді, сондықтан оның көлемі үлкен жұмысты жылдам жүргізуге кері әсерін тигізді. 70-жылдарда ЭЕМ-нің жүйелік дамуына байланысты жағдай жақсара бастады. ЭЕМ-да шешілетін есептердің жалпы ортақ мақсаты болды. Бұл мақсатқа жету үшін алғашқы мәліметтерді жинақтап енгізу қажет. Алғашқы мәліметтерді сипаттау, сақтау, өңдеудің жалпы ережелеріне сәйкестендіріп жүйелі түрге келтірілген, құрылымы дәл анықталған ақпараттық массив құрса, оны мәліметтер қоры немесе мәліметтер базасы деп атайды.
Мәліметтер қоры мәліметтерді ұйымдастыруда сапалы жаңа этап ретінде қабылданды. Мәліметтер қорының технологиясы пайда болғанға дейін әр программада басқа есептерден тәуелсіз тек өзіне ғана қатысты есепті шешуге қажетті элементтерді толассыз енгізу керек еді. Экономикада, кәсіпорындарды басқаруда қажетті ақпаратты бір рет енгізуге уақыт аз кетеді. Кез келген ақпарат бір рет жинақталып, басқа ақпараттық жүйелерге де таралуы, қолданылуы керек. Мәліметтер қорын қолданудың тағы бір артықшылығы мәліметтердің актуальды болуы, яғни - уақыттың жылжуына байланысты мәліметтердің жаңарып отыруы және артықшылықтың 3 негізі бар:
1) глобальды қателердің пайда болуынан қауіптенбей-ақ ақпаратты жаңартуды әр уақытта орындауға болады.
2) Мәліметтер қорымен жұмыс жасайтын қолданбалы пакеттерді модернизациялау мүмкіндігі туады.
3) Мәліметтер қорын қолданбалы программалардан бөлу мүмкіндігі туады, яғни мәліметтер базасын құруда басқа да қосымшаларды қолданып, өңдеуде белгілі бір желілік, локальды мәліметтер қорын басқару жүйесін қолдануға болады.
Егер құрылатын мәліметтер қорын локальды, жеке қолдану керек болса, негізгі талап қолданушыға қойылады, ал көпшілік қолданатын болса мәліметтерді дұрыс жинақтау талабы администраторға жүктеледі. Ол өз кезегінде жаңа мәліметтердің дұрыс енгізілуін бақылайды. Мәліметтер қоры негізінде автоматтандырылған фактографиялық және құжаттық ақпаратты жүйелер болып бөлінеді. Фактографиялық жүйелер форматталған жазуларды қолданады. Мысалы: кадрлардың есебін жүргізу беті. Құжаттық жүйелер құжаттың мазмұнына сәйкес іздеу мүмкіндігін береді.
Мәліметтер қоры мәліметтерді ұйымдастыруда сапалы жаңа этап ретінде қабылданды. Мәліметтер қорының технологиясы пайда болғанға дейін әр программада басқа есептерден тәуелсіз тек өзіне ғана қатысты есепті шешуге қажетті элементтерді толассыз енгізу керек еді. Экономикада, кәсіпорындарды басқаруда қажетті ақпаратты бір рет енгізуге уақыт аз кетеді. Кез келген ақпарат бір рет жинақталып, басқа ақпараттық жүйелерге де таралуы, қолданылуы керек. Мәліметтер қорын қолданудың тағы бір артықшылығы мәліметтердің актуальды болуы, яғни - уақыттың жылжуына байланысты мәліметтердің жаңарып отыруы және артықшылықтың 3 негізі бар:
1) глобальды қателердің пайда болуынан қауіптенбей-ақ ақпаратты жаңартуды әр уақытта орындауға болады.
2) Мәліметтер қорымен жұмыс жасайтын қолданбалы пакеттерді модернизациялау мүмкіндігі туады.
3) Мәліметтер қорын қолданбалы программалардан бөлу мүмкіндігі туады, яғни мәліметтер базасын құруда басқа да қосымшаларды қолданып, өңдеуде белгілі бір желілік, локальды мәліметтер қорын басқару жүйесін қолдануға болады.
Егер құрылатын мәліметтер қорын локальды, жеке қолдану керек болса, негізгі талап қолданушыға қойылады, ал көпшілік қолданатын болса мәліметтерді дұрыс жинақтау талабы администраторға жүктеледі. Ол өз кезегінде жаңа мәліметтердің дұрыс енгізілуін бақылайды. Мәліметтер қоры негізінде автоматтандырылған фактографиялық және құжаттық ақпаратты жүйелер болып бөлінеді. Фактографиялық жүйелер форматталған жазуларды қолданады. Мысалы: кадрлардың есебін жүргізу беті. Құжаттық жүйелер құжаттың мазмұнына сәйкес іздеу мүмкіндігін береді.
1. А. И. Петров, В. Е. Алексеев и др. Вычисльтельная техника и программирование, М., 1990
2. О. Камардинов. Информатика. 1-бөлім, Ш., ЮКПО «Полигр.», 2000
3. О. Камардинов, С.Азаматов. Информатика негіздері, А., «Рауан», 1993
4. О.Камардинов. Паскаль тілінде программалау, А., РБК, 1994
5. О.Камардинов. Есептеуіш техника және программалау, а., РБК, 1997
6. Зубов В.С. Программирование на языке TURBO PASCAL. Версий 6.0 и 7.0 – М., 1997
7. Файсман А. Профессиональное программирование на языке Турбо Паскаль, 1992
8. Марченко А.Н, Марченко П.А. Программирование в среде Turbo Pascal 7.0: Торосенко В. П – 8-е изд-Киев.: Век, Спб.: Корона Принт, 2004.-506 б.
9. О.Камардинов.Паскаль тілінде программалау,А.,РБК,1994ж
10. О.Камардинов.Оқу құралы.Шымкент, 2000, 246б
11. Н.Ы.Омарова,К.У.Тұрмағамбетова,К.Н.Нүриденова.Паскаль тілінде программалау негіздері.Алматы, “Білім”баспасы,1996ж,-136б.
12. К.Боон.Паскаль для всех/Перевод с гол.В.С.Макарова.,Под ред.Н.Н.Слепова.-М.,1988г
2. О. Камардинов. Информатика. 1-бөлім, Ш., ЮКПО «Полигр.», 2000
3. О. Камардинов, С.Азаматов. Информатика негіздері, А., «Рауан», 1993
4. О.Камардинов. Паскаль тілінде программалау, А., РБК, 1994
5. О.Камардинов. Есептеуіш техника және программалау, а., РБК, 1997
6. Зубов В.С. Программирование на языке TURBO PASCAL. Версий 6.0 и 7.0 – М., 1997
7. Файсман А. Профессиональное программирование на языке Турбо Паскаль, 1992
8. Марченко А.Н, Марченко П.А. Программирование в среде Turbo Pascal 7.0: Торосенко В. П – 8-е изд-Киев.: Век, Спб.: Корона Принт, 2004.-506 б.
9. О.Камардинов.Паскаль тілінде программалау,А.,РБК,1994ж
10. О.Камардинов.Оқу құралы.Шымкент, 2000, 246б
11. Н.Ы.Омарова,К.У.Тұрмағамбетова,К.Н.Нүриденова.Паскаль тілінде программалау негіздері.Алматы, “Білім”баспасы,1996ж,-136б.
12. К.Боон.Паскаль для всех/Перевод с гол.В.С.Макарова.,Под ред.Н.Н.Слепова.-М.,1988г
Пән: Информатика, Программалау, Мәліметтер қоры
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 24 бет
Таңдаулыға:
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 24 бет
Таңдаулыға:
КІРІСПЕ
Компьютерлік техниканың даму сатысының алғашқы сатысында кез келген қолданбалы программа арнаулы мәліметтерді жинақтаумен қатар жүрді, сондықтан оның көлемі үлкен жұмысты жылдам жүргізуге кері әсерін тигізді. 70-жылдарда ЭЕМ-нің жүйелік дамуына байланысты жағдай жақсара бастады. ЭЕМ-да шешілетін есептердің жалпы ортақ мақсаты болды. Бұл мақсатқа жету үшін алғашқы мәліметтерді жинақтап енгізу қажет. Алғашқы мәліметтерді сипаттау, сақтау, өңдеудің жалпы ережелеріне сәйкестендіріп жүйелі түрге келтірілген, құрылымы дәл анықталған ақпараттық массив құрса, оны мәліметтер қоры немесе мәліметтер базасы деп атайды.
Мәліметтер қоры мәліметтерді ұйымдастыруда сапалы жаңа этап ретінде қабылданды. Мәліметтер қорының технологиясы пайда болғанға дейін әр программада басқа есептерден тәуелсіз тек өзіне ғана қатысты есепті шешуге қажетті элементтерді толассыз енгізу керек еді. Экономикада, кәсіпорындарды басқаруда қажетті ақпаратты бір рет енгізуге уақыт аз кетеді. Кез келген ақпарат бір рет жинақталып, басқа ақпараттық жүйелерге де таралуы, қолданылуы керек. Мәліметтер қорын қолданудың тағы бір артықшылығы мәліметтердің актуальды болуы, яғни - уақыттың жылжуына байланысты мәліметтердің жаңарып отыруы және артықшылықтың 3 негізі бар:
1) глобальды қателердің пайда болуынан қауіптенбей-ақ ақпаратты жаңартуды әр уақытта орындауға болады.
2) Мәліметтер қорымен жұмыс жасайтын қолданбалы пакеттерді модернизациялау мүмкіндігі туады.
3) Мәліметтер қорын қолданбалы программалардан бөлу мүмкіндігі туады, яғни мәліметтер базасын құруда басқа да қосымшаларды қолданып, өңдеуде белгілі бір желілік, локальды мәліметтер қорын басқару жүйесін қолдануға болады.
Егер құрылатын мәліметтер қорын локальды, жеке қолдану керек болса, негізгі талап қолданушыға қойылады, ал көпшілік қолданатын болса мәліметтерді дұрыс жинақтау талабы администраторға жүктеледі. Ол өз кезегінде жаңа мәліметтердің дұрыс енгізілуін бақылайды. Мәліметтер қоры негізінде автоматтандырылған фактографиялық және құжаттық ақпаратты жүйелер болып бөлінеді. Фактографиялық жүйелер форматталған жазуларды қолданады. Мысалы: кадрлардың есебін жүргізу беті. Құжаттық жүйелер құжаттың мазмұнына сәйкес іздеу мүмкіндігін береді.
Мәліметтер қорының жалпы түсінігі - айрықша іріктеліп, ұйымдастырылған жазулар мен файлдардың жиынтығы. Мәліметтер қорының бір типі - құжаттар, олар тақырыптары бойынша іріктеліп, біріктіріліп мәтін редакторы көмегімен теріледі. Мысалы: финанстық мәліметтер, жеке бас қағаздары, басқарма жұмысының іс-қағаздары. Құжаттарды электрондық кестелер көмегімен өңдеуге, сақтауға, жұмыс істеуге, яғни диспетчері болуға болады.
1. ҚҰРЫЛЫМДЫ ТИПТІ МӘЛІМЕТТЕРДІ ӨҢДЕУ ТЕХНОЛОГИЯЛАРЫ
1.1 Паскаль тіліндегі жолдық типті мәліметтер түсінігі
Турбо Паскаль тілінде өңдеуге арналған мәліметгердің қарапайым және күрделі типті болатындығын атағанбыз. Алдыңғы тарауларда қарастырылған барлық қарапайым типті мәліметтердің келесі екі қасиеті бар болатын: атомарлық қасиеті (олардың әрі қарай бөлінбейтіндігі) және мәндерінің реттілігі. Күрделі типті мәліметтерді құрама немесе құрылымды типті мәліметтер деп білеміз.
Құрама немесе құрылымды типті мәліметтер бір жалпы аты бар болатын күрделі мәнді жиындарды анықтауға мүмкіндік береді.
Турбо Паскаль құрылымды типті мәліметтерді қарастыра отырып, программада олардың келесі түрлерін пайдалануға мүмкіндік береді:
:: жүйелі типі -- массив;
:: аралас типі -- жазба;
:: файлдық типі -- файл;
:: жиын типі -- жиын;
:: жол типі -- жол
Қарапайым типке қарағанда күрделі типтердің осы типті құрайтын элементтерінің түрлі болатын өзгешелігі бар, яғни құрылымды типті айнымалының немесе тұрақты шаманың бірнеше компоненті болады. Ал әр компоненті өзінше тағы да құрылымды тип болуы да мүмкін.
Құрылымды типті программада пайдалануды жол типті мәліметтерді қарастырудан бастайық.
Мәліметтердің жол типін сипаттау
Программалау тілдерінде көптеген жағдайларда символдар тізбектерін қолдану қажет болады. Ол үшін барлық жағдайларда char типін пайдалану ыңғайлы бола бермейді. Сол себептен символдар тізбегін тұтасымен қарастыру мүмкіндіктерін ойластырған жөн. Бұл жағдайда Паскаль тілінде жолдық (String) тип пайдаланылады.
Жол -- дербес компьютердің кодтық кестесінің белігілі бір символдарынан қүрылған тізбек. Өрнектерде қолданғанда жол екі жағынан апострофқа алынып, жолдық тұрақты ретінде қарастырылады. Жолдың символдар саны (жолдың ұзындығы) 0-ден 255-ке дейінгі аралықта жатады. Жолдық типті сипаттау үшін string қызметші сөзі жазылып, тік жақша ішінде қарастырылып отырған жолдың ең үлкен ұзындығы келтіріледі. Егер де бұл мән көрсетілмесе, онда жол ұзындығы 255 байтқа тең деп алына береді. String типті айнымалыны тип тарауында жариялау арқылы немесе бірден айнымалылар тарауында сипаттауға болады. Жолдық типті шамалар программада тұрақтылар ретінде де пайдаланылады. Жолдық типті сипаттау дегеніміз, оның ұзындығын немесе неше символдан тұратынын анықтау болады, өйткені массивтердегідей оларға да компьютер жадында орын резервтелінуі (алдын ала дайындалуы) керек.
Жазылуыньщ жалпы түрі:
Туре
типтің aты=string (жолдың ең үлкен ұзындығы);
Var
айнымалылар: типтің аты;
Немесе:
Var
айнымалылар: string (жолдың ең үлкен ұзындығы); Мысалы,
Type
R=string[30];
Var
X,Y: R;
Str1 :string[25];
Str2, Str3 :string;
Str4 :string[300]; {ұзындық қатесі, 300255}
Жолдың байтпен есептелетін ұзындығын анықтау үшін, оның ең үлкен ұзындығына 1-ді қосамыз. Бұл қосымша байт жолдың ең алғашқы (0-дік) позициясына әрналасады да, Ord функциясының көмегімен жолдың ұзындығын табуда пайдаланылады (size:=ord(strl[0])). str1[0] жолдыңі ұзындығын көрсететін 0-дік байт.
Жолдың ұзындығын анықтау үшін арнайы Length функциясы да бар. Жоғарыда келтірілген мысалда компьютер жадында Х,Ү жолдарына 31 байт, str1 жолына 26 байт, str2, str3 жолдарына 255 байттан орын қажет.
Символдық өрнектер. Операндтары (тұрақтылар, айнымальшар, функциялар) жолдық және симводцық типті болатын өрнектер символдык, өрнектер деп аталады. Символдық өрнектерде біріктіру (+) жәнеқатынас амаддар (=, =,=, , , ) қолданылады.
Біріктіру амалы (+) бірнеше жолдарды біріктіріп,
нәтижесінде тұтас бір жол алуға пайдаланылады. Мысалы:
'Pen'+'ti'+'um'+'-'+'З' ' Pentium-3'
`1'+'-'+'топ'+'студенті' '1-топ студенті'
Бұл амал нәтижесі жол болғандықтан, ұзындығы 255 символдан аспауы керек.
Қатынас амалдары (=, , =, =, , ) екі жолды салыстырады жәнебіріктіру амалына қарағанда орындалу үстемдігі төмен, яғни аддымен барлық біріктіру амалдары, сонан соң салыстыру амалы орындалады. Салыстыру солдан оңға қарай жүргізіліп, символдардың бір біріне тура келетіндігі тексеріледі. Салыстыру бір біріне үйлесімді болмайтын бірінші символ табылғанға дейін жүргізіледі. Егер де бірінші жолдағы осы символдың коды екінші жолдағы символдың кодынан үлкен болса, онда бірінші жол екіншісінен үлкен болып саналады. Сонымен, салыстыру амалының нәтижесі жолдағы символдардың кодтар кестесіне әрналасуына байланысты анықталады да, әрқашан бульдік (логикалық) тип болып True немесе False деген мәндерді қабылдай алады. Мысалы:
'program 1' ='program2' True
'program' 'Program' True
'a''A' True
Егер де салыстырып отырған жолдардың ұзындығы әртүрлі болып, бірақ жалпы жағының символдары бірдей болса, онда қысқа жол үзын жодцан кіші болып саналады, мысалы:
'Ахметов''Ахметова' True
Жолдық айнымалыға символдық өрнегінің нәтижесін беру үшін (:=) меншіктеу операторы пайдаланылады. Мысал:
Tz1:=' Бірінші курс';
Tz2:= tz1+'студенттері';
Меншіктеу операторындағы өрнектің нәтижесінің ұзындығы меншіктеу айнымаласының ұзындығынан асьш кетсе, артылған символдар қабылданбайды.
А-ның сипатталуы Меншіктеу Нәтиже
A:string[6] A :='1-курс студенті' '1-курс' A:string[12] A := '1-курс студенті' '1-курс студе' A:string[2] A :='1-курс студенті' '1-к'
Симводдық айнымалыға меншіктелетін жолдық типті тұрақты шаманың ұзындығы бір симводдан аспауы қажет. Олай болмаған жағдайда қателік туады да, программаның орындалуы үзіледі. Мысалы:
Var
сһ: char;
tz1:string[12];
tz2:string[6];
Begin
ch:= 'a';
tzl:='тобы';
tz2:= ch + tz1; { а тобы}
tz1 :='*';
ch:=tzl;
Соңғы меншіктеу операторы дұрыс жазылмаған, себебі tz1-дің кезекті мәні бір символдан тұрғанымен, ол String типті болғандықтан, ұзындығы 2 байт, ал char типті айнымалының ұзындығы 1 байт.
Жолдың символын оның реті (индексі) арқылы да табуға болады. Индекс бүтін типті өрнек немесе тұрақты түрінде жолдың идентификаторынан соң тік жақшаға алынып жазылады. Мысал, tz1(2+2), tz2(7) жазылулары tz1 жольшдағы төртінші символын, ал tz2 жолындагы жетінші символын көрсетеді. Ал tz2(0) -- жолдың ұзындығын көрсететін 0-дік байтқа жол ашады.
Жол типті процедуралар мен функциялар. String типті мәлеметтерді өндеуде келесі стандартты процедуралар мен функциялар қолданылады.
Функциялар.
COPY(tz, m,n) -- tz жолынан m позициясынан бастап n символ бөліп алады. Егер m-нің мәні жолдың ұзындығынан артық болса, онда функцияның нәтижесі бос символ болады, егер m255 болса, орындалу барысында қателік туады.
tz:='ABCDEFG' Copy(tz,2,3)- BCD
tz:='ABCDEFG' Copy (tz,4,10)- DEFG
CONCAT (tz1,tz2,...,tzN) - tz1, tz2, ..., tzN жолдарын көрсетілген ретпен біріктіреді. Біріктірілген жолдың ұзындығы 255-тен аспауы керек.
Concat ('АЛЬ', 'ТАРАЗИ', '2') - АЛЬТАРАЗИ2
Concat('IBM', ' PC') - IBM PC
LENGTH (tz) -- tz жолының ұзындығын анықтайды. Нәтижесі -- бүтін сан.
tz:= '123456789' Length(tz) - 9
tz:='IBM PC' Length(tz) - 6
POS(tzl,tz2) -- tzl жолы tz2 жолында кездессе, қай позициядан басталатынын көрсетеді. Нәтиже бүтін типті. tz2 жолында tz1 тізбегі кездеспесе, онда нәтиже нөлге тең.
tz:='abcdef' Pos('de', tz)- 4
tz:='abcdef' Pos ('r', tz)- 0
STR(F,tz) -- F шамасының сандық мәнін tz символдық жолға айналдыру. F -- тен кейін оның фәрматы көрсетілуі мүмкін, мысалы: F = 1250 STR(F:7,tz) -'__1250'
ру.
Процедуралар.
DELETE (tz,m,n) - tz жолының m позициясынан бастап n
символы өшіріледі.
Егер m 255 болса, онда қателік туады.
Tz = '1-топ' delete(tz,3,3) '1-'
Tz = '1-класс' delete(tz,l,3) 'ласе'
Tz = '1-топ' delete(tz,2,l) '1топ'
INSERT (tzl, tz2, m) - tzl жолын tz2 тізбегіне m
позициясынан бастап сыналап қосу.
Мысалы Var ...
Т1,Т2,ТЗ : string(11);
Begin
T1:= 'АБДХ' ;
T2:= 'ВГЕ';
T3:= Insert(t2,t1,t3);
Соңғы функцияның нәтижесінде t3 жолы 'АБВГЕДХ' жолына тең болады.
{ жолды енгізу}
{ жолдың ұзындығын анықтау}
VAL(tz,F,Code) -- tz жолының мәнін бүтін немесе нақты типке айналдырып нәтижені F -- те сақтайды. tz -- нің басында немесе соңында мәнсіз бос орын символдыры болмауы қажет. Code -- бүтін типті айнымалы. Егер айналдыру операциясы дүрыс аяқталса Code-нің мэні 0-ге тең, ал кері жағдайда бұл айнымалыда қатеге әкелген символдың позициясы сақталады.
1.2 Паскаль тіліндегі жиын типті мәліметтер
Жиын -- белгілі бір қасиеттерге сай іріктеліп, біртүтас қарастырылатын жүйелі типті мәліметтер тобы. Жиын моліметтердің құрылымды типі. Жиындағы әр мәлімет жиынның элементтері деп аталады. Жиын элементтерінің типі тек реттік тип болуын естен шығармау керек. Жиын элементтерінің типі жиынның базалық типі деп қарастырылады. Базалық тип аралықпен немесе дараланып беріледі. Паскаль тілінде өрнектерде жиынның элементтері тік жақшаларға алынып жазылады: ['а','Ь','с'], [1,2,3,4], ['a',...'z']. Егер жиында ешбір элемент болмаса, ондай жиын бос жиын болады да, былай [ ] белгіленеді. Жиындық типті сипаттау үшін set оf қызметші сөздері қолданылады.
Жазылу жалпы түрі:
Type
типтің аты = set of жиынның элементтері;
Var
айнымалылар : типтің аты;
Немесе алдын ала Туре тарауында сипаттау жүргізбей - ақ жиындық типті Var тарауында жариялауға да болады:
Var айнымалылар: set of типтің аты ;
Мысалы,
Type
Day =(Sun, Mon, Tue, Wed, Thu, Fri, Sat);
Days =set of Dat
Turakti=set of (3,5,7,11,13,17);
Holidays = set of 1..31;
Var
Max : Turakti; К : Holidays;
Letter: set of ('a','e','i','j'); {Letter жиыны типтер тарауында
жарияланбай сипатталған}
Мұнда Max, Letter, К жиын типті айнымалылар, оларға сипаттауларында көрсетілген жиындарға кірмейтін элементтерден тұратын жиынды меншіктеу қателік тудырады. Жиынның элементтер саны 256-дан аспауы керек. Жиынның бір элементі бір байт орын алады.
Жиындардың негізгі қасиеттері:
1. Жиынды қүрайтын барлық элементтері түрлі болып бір бірін қайталанбауы тиіс. Мысалы, жиын элементтерін былай жазу (2,2,3,4) дүрыс емес, себебі екі бірдей элементі бар.
2. Жиында элементтерінің әрналасуы реттелмеуіде мүмкін (алдын ала белгіленбейді).
3. Егер де жиын мына түрде [I..J] берілсе және Ij болса, онда бұл [I..J] бос жиын деп білеміз.
Жиындағы қолданылатын амалдар. Паскаль тілінде жиындарға нәтижесі True немесе False болатын қатынас (=, ,+,=) және"тиісті" - (in) амалдары қолданылады. Сонымен қатар жиындарға біріктіру (+), қию (*), айыру (-) амалдары да жүреді.
"Теңдік" (=) амалы. Егер екі жиынның элементтері бірдей болса, онда ол жиындар тең деп саналады. Салыстырылатын жиындарда элементтерінің әрналасу реті әр түрлі болуы мүмкін.
[1,2,3,4] = [1,2,3,4] True
[5,6,7,8] = [8,5,7,6] True
['а',b','с'] =['c','b'] False
['a'..'s'] = [`s'..'a'] True
"Тең емес " ( ) амалы. Егер екі жиынның ең болмағанда бір элементі өзгеше болса, ондай жиындар тең емес деп саналады.
[1,2,3] [3,1,2,4] Тruе
['a'..'z'] =['z'..'a'] False
['a'..'s'] ['b'..'s'] Тruе
"Үлкен немесе тең" (=) амалы. А=В амалының нәтижесі ақиқат (True), егер В жиынының элементтері түгелдей А жиынында кездессе, кері жағдайда нәтиже жалған (False).
[1,2,3,4] = [2,3,4] Тruе
['a','z'] =['c'.'b','z'] False
[`a'..'s'] = ['b'..'t'] True
"Кіші немесе тең" (=) амалы. A=B амалының нәтижесі ақиқат (Тruе), егер А жиынының элементтері В жиынында түгелдей кездессе, кері жағдайда нәтиже жалған (False).
[1,2,3,4] = [2,3,4] False
['d','h'] =['z'..'a'] Тruе
['a','v'] = ['a','n','v'] True
"Tuicmi" (in) амалы. Бұл амал қандайда бір шаманың көрсетілген жиында кездесетіндігін анықтайды, кездессе нәтижесі ақиқат (True), әйтпесе жалған (False), әдетте, бұл амал шартты операторларда пайдаланады.
2 in [1,2,3] Тrue
'р' in ['a',..'n'] False ,
хі in [x0,x1,x2,x3] - True
" Біріктіру" (+) амалы. Екі жиьшның қосындысы осы жиындардың элементтерінен тұратын үшінші жиын болып табьшады.
[1,2,3] + [1,4,5] - [1,2,3,4,5]
"Қию " (*) амалы. Екі жиынның қиюы -- осы екі жиында да кездесетін элементтерден тұратын үшінші жиын:
[1,2,3] * [1,4,2,5] - [1,2]
['a'..'z'] * ['b'..'r'] - [`b'..'r']
[]*[]-[]
"Айыру" (-) амалы. Екі жиынның айырмасы -- екінші жиында кездеспейтін бірінші жиынның элементтерінен тұратын үшінші жиын:
[1,2,3,4]- [3,4,1] - [2]
['a'..'z'] - ['d'..'z'] - ['а'..'с']
[x1,x2,x3,x4] - [x4,x1] - [х2,хЗ]
Көрсетілген амалдардың нәтижесі көрнекті түрде 1-суретте келтірілген.
Қию Біріктіру Айыру
1-сурет. Жиын амалдарының нәтижелері.
Жиындар көбінесе шартты операторларда күрделі шарттарды ықшамды жәнекөрнекті түрде жазуға пайдаланылады. Мысалы, мына оператәрдағы шартгы If (a=l) or (a=2) or (a=3) or (a=4) or (a=5) or then... былайша If a in [1..5] then... жазуға болады. Көріп отырғанымыздай, мұндай түрде жазу өрі ықшамды, әрі көрнекті болып табылады.
Ескерту.
1. Паскаль тілінде барлық қатынас операторларының приәритеті бірдей.
2. Жиын өңдеуде біртұтас объект ретінде қарастырылатын
болғандықтан оған "сұрыптау" амалы жүргізілмейді.
1.3 Жазбалар типті мәліметтерді өңдеу технологиялары
Алдыңғы тарауларда тек бір типті компоненттерден тұратын мәліметтердің жүйелі типті түрлерімен таныстық. Алғашында көптеген инженерлік есептерді шешуде он шақты айнымалыларды пайдаланып - ақ алгоритмін құруға болатын еді. Кейіннен түрлі кестелерде берілген өңдеуге арналған программаларын түзу мәселесі туындайды. Бұл мәселені шешуде массив, жол және жиын типтер көп жеңілдік беретін болды. Бір типті мәліметтерді өңдеудегі массивтердің даусыз артықшылығы бар. Бірақ массивтермен жұмыс атқарудағы негізгі шектеу - ол массив элементтерінің барлығы бір типті болуы. Іс жүзінде кездесетін кестелерде тек сандық информацияны ғана емес текстік мәліметтерді де өңдеу керек болады.
Программалауда қандай да бір объектіге қатысты әр түрлі мәліметтерді жинақтап қарастыру жиі кездеседі. Шынайы объект туралы мәліметтер түрлі типті шамалармен сипатталынады. Мысалы, қоймадағы тауарлар келесі мәліметтер арқылы сипатталынады: тауар аты, тауар мөлшері, бағасы, сапалық сертификаты бар болуы т.с.с. Бұл мысалда тауар аты-string типті мәлімет, тауар мөлшері-integer типті, бағасы-real типті, сапалық сертификатының бар болуы-boolean типті. Сөйтіп, қоймадағы тауарлар туралы есепті шешуде түрлі типті мәліметтерді бірге өңдеуге тура келеді. Сондықтан бұл құрылымды типті мәліметтерді өңдеуге арналған құрал қажеттілігі туындады. Турбо Паскальде осындай құрал ретінде ... жалғасы
Компьютерлік техниканың даму сатысының алғашқы сатысында кез келген қолданбалы программа арнаулы мәліметтерді жинақтаумен қатар жүрді, сондықтан оның көлемі үлкен жұмысты жылдам жүргізуге кері әсерін тигізді. 70-жылдарда ЭЕМ-нің жүйелік дамуына байланысты жағдай жақсара бастады. ЭЕМ-да шешілетін есептердің жалпы ортақ мақсаты болды. Бұл мақсатқа жету үшін алғашқы мәліметтерді жинақтап енгізу қажет. Алғашқы мәліметтерді сипаттау, сақтау, өңдеудің жалпы ережелеріне сәйкестендіріп жүйелі түрге келтірілген, құрылымы дәл анықталған ақпараттық массив құрса, оны мәліметтер қоры немесе мәліметтер базасы деп атайды.
Мәліметтер қоры мәліметтерді ұйымдастыруда сапалы жаңа этап ретінде қабылданды. Мәліметтер қорының технологиясы пайда болғанға дейін әр программада басқа есептерден тәуелсіз тек өзіне ғана қатысты есепті шешуге қажетті элементтерді толассыз енгізу керек еді. Экономикада, кәсіпорындарды басқаруда қажетті ақпаратты бір рет енгізуге уақыт аз кетеді. Кез келген ақпарат бір рет жинақталып, басқа ақпараттық жүйелерге де таралуы, қолданылуы керек. Мәліметтер қорын қолданудың тағы бір артықшылығы мәліметтердің актуальды болуы, яғни - уақыттың жылжуына байланысты мәліметтердің жаңарып отыруы және артықшылықтың 3 негізі бар:
1) глобальды қателердің пайда болуынан қауіптенбей-ақ ақпаратты жаңартуды әр уақытта орындауға болады.
2) Мәліметтер қорымен жұмыс жасайтын қолданбалы пакеттерді модернизациялау мүмкіндігі туады.
3) Мәліметтер қорын қолданбалы программалардан бөлу мүмкіндігі туады, яғни мәліметтер базасын құруда басқа да қосымшаларды қолданып, өңдеуде белгілі бір желілік, локальды мәліметтер қорын басқару жүйесін қолдануға болады.
Егер құрылатын мәліметтер қорын локальды, жеке қолдану керек болса, негізгі талап қолданушыға қойылады, ал көпшілік қолданатын болса мәліметтерді дұрыс жинақтау талабы администраторға жүктеледі. Ол өз кезегінде жаңа мәліметтердің дұрыс енгізілуін бақылайды. Мәліметтер қоры негізінде автоматтандырылған фактографиялық және құжаттық ақпаратты жүйелер болып бөлінеді. Фактографиялық жүйелер форматталған жазуларды қолданады. Мысалы: кадрлардың есебін жүргізу беті. Құжаттық жүйелер құжаттың мазмұнына сәйкес іздеу мүмкіндігін береді.
Мәліметтер қорының жалпы түсінігі - айрықша іріктеліп, ұйымдастырылған жазулар мен файлдардың жиынтығы. Мәліметтер қорының бір типі - құжаттар, олар тақырыптары бойынша іріктеліп, біріктіріліп мәтін редакторы көмегімен теріледі. Мысалы: финанстық мәліметтер, жеке бас қағаздары, басқарма жұмысының іс-қағаздары. Құжаттарды электрондық кестелер көмегімен өңдеуге, сақтауға, жұмыс істеуге, яғни диспетчері болуға болады.
1. ҚҰРЫЛЫМДЫ ТИПТІ МӘЛІМЕТТЕРДІ ӨҢДЕУ ТЕХНОЛОГИЯЛАРЫ
1.1 Паскаль тіліндегі жолдық типті мәліметтер түсінігі
Турбо Паскаль тілінде өңдеуге арналған мәліметгердің қарапайым және күрделі типті болатындығын атағанбыз. Алдыңғы тарауларда қарастырылған барлық қарапайым типті мәліметтердің келесі екі қасиеті бар болатын: атомарлық қасиеті (олардың әрі қарай бөлінбейтіндігі) және мәндерінің реттілігі. Күрделі типті мәліметтерді құрама немесе құрылымды типті мәліметтер деп білеміз.
Құрама немесе құрылымды типті мәліметтер бір жалпы аты бар болатын күрделі мәнді жиындарды анықтауға мүмкіндік береді.
Турбо Паскаль құрылымды типті мәліметтерді қарастыра отырып, программада олардың келесі түрлерін пайдалануға мүмкіндік береді:
:: жүйелі типі -- массив;
:: аралас типі -- жазба;
:: файлдық типі -- файл;
:: жиын типі -- жиын;
:: жол типі -- жол
Қарапайым типке қарағанда күрделі типтердің осы типті құрайтын элементтерінің түрлі болатын өзгешелігі бар, яғни құрылымды типті айнымалының немесе тұрақты шаманың бірнеше компоненті болады. Ал әр компоненті өзінше тағы да құрылымды тип болуы да мүмкін.
Құрылымды типті программада пайдалануды жол типті мәліметтерді қарастырудан бастайық.
Мәліметтердің жол типін сипаттау
Программалау тілдерінде көптеген жағдайларда символдар тізбектерін қолдану қажет болады. Ол үшін барлық жағдайларда char типін пайдалану ыңғайлы бола бермейді. Сол себептен символдар тізбегін тұтасымен қарастыру мүмкіндіктерін ойластырған жөн. Бұл жағдайда Паскаль тілінде жолдық (String) тип пайдаланылады.
Жол -- дербес компьютердің кодтық кестесінің белігілі бір символдарынан қүрылған тізбек. Өрнектерде қолданғанда жол екі жағынан апострофқа алынып, жолдық тұрақты ретінде қарастырылады. Жолдың символдар саны (жолдың ұзындығы) 0-ден 255-ке дейінгі аралықта жатады. Жолдық типті сипаттау үшін string қызметші сөзі жазылып, тік жақша ішінде қарастырылып отырған жолдың ең үлкен ұзындығы келтіріледі. Егер де бұл мән көрсетілмесе, онда жол ұзындығы 255 байтқа тең деп алына береді. String типті айнымалыны тип тарауында жариялау арқылы немесе бірден айнымалылар тарауында сипаттауға болады. Жолдық типті шамалар программада тұрақтылар ретінде де пайдаланылады. Жолдық типті сипаттау дегеніміз, оның ұзындығын немесе неше символдан тұратынын анықтау болады, өйткені массивтердегідей оларға да компьютер жадында орын резервтелінуі (алдын ала дайындалуы) керек.
Жазылуыньщ жалпы түрі:
Туре
типтің aты=string (жолдың ең үлкен ұзындығы);
Var
айнымалылар: типтің аты;
Немесе:
Var
айнымалылар: string (жолдың ең үлкен ұзындығы); Мысалы,
Type
R=string[30];
Var
X,Y: R;
Str1 :string[25];
Str2, Str3 :string;
Str4 :string[300]; {ұзындық қатесі, 300255}
Жолдың байтпен есептелетін ұзындығын анықтау үшін, оның ең үлкен ұзындығына 1-ді қосамыз. Бұл қосымша байт жолдың ең алғашқы (0-дік) позициясына әрналасады да, Ord функциясының көмегімен жолдың ұзындығын табуда пайдаланылады (size:=ord(strl[0])). str1[0] жолдыңі ұзындығын көрсететін 0-дік байт.
Жолдың ұзындығын анықтау үшін арнайы Length функциясы да бар. Жоғарыда келтірілген мысалда компьютер жадында Х,Ү жолдарына 31 байт, str1 жолына 26 байт, str2, str3 жолдарына 255 байттан орын қажет.
Символдық өрнектер. Операндтары (тұрақтылар, айнымальшар, функциялар) жолдық және симводцық типті болатын өрнектер символдык, өрнектер деп аталады. Символдық өрнектерде біріктіру (+) жәнеқатынас амаддар (=, =,=, , , ) қолданылады.
Біріктіру амалы (+) бірнеше жолдарды біріктіріп,
нәтижесінде тұтас бір жол алуға пайдаланылады. Мысалы:
'Pen'+'ti'+'um'+'-'+'З' ' Pentium-3'
`1'+'-'+'топ'+'студенті' '1-топ студенті'
Бұл амал нәтижесі жол болғандықтан, ұзындығы 255 символдан аспауы керек.
Қатынас амалдары (=, , =, =, , ) екі жолды салыстырады жәнебіріктіру амалына қарағанда орындалу үстемдігі төмен, яғни аддымен барлық біріктіру амалдары, сонан соң салыстыру амалы орындалады. Салыстыру солдан оңға қарай жүргізіліп, символдардың бір біріне тура келетіндігі тексеріледі. Салыстыру бір біріне үйлесімді болмайтын бірінші символ табылғанға дейін жүргізіледі. Егер де бірінші жолдағы осы символдың коды екінші жолдағы символдың кодынан үлкен болса, онда бірінші жол екіншісінен үлкен болып саналады. Сонымен, салыстыру амалының нәтижесі жолдағы символдардың кодтар кестесіне әрналасуына байланысты анықталады да, әрқашан бульдік (логикалық) тип болып True немесе False деген мәндерді қабылдай алады. Мысалы:
'program 1' ='program2' True
'program' 'Program' True
'a''A' True
Егер де салыстырып отырған жолдардың ұзындығы әртүрлі болып, бірақ жалпы жағының символдары бірдей болса, онда қысқа жол үзын жодцан кіші болып саналады, мысалы:
'Ахметов''Ахметова' True
Жолдық айнымалыға символдық өрнегінің нәтижесін беру үшін (:=) меншіктеу операторы пайдаланылады. Мысал:
Tz1:=' Бірінші курс';
Tz2:= tz1+'студенттері';
Меншіктеу операторындағы өрнектің нәтижесінің ұзындығы меншіктеу айнымаласының ұзындығынан асьш кетсе, артылған символдар қабылданбайды.
А-ның сипатталуы Меншіктеу Нәтиже
A:string[6] A :='1-курс студенті' '1-курс' A:string[12] A := '1-курс студенті' '1-курс студе' A:string[2] A :='1-курс студенті' '1-к'
Симводдық айнымалыға меншіктелетін жолдық типті тұрақты шаманың ұзындығы бір симводдан аспауы қажет. Олай болмаған жағдайда қателік туады да, программаның орындалуы үзіледі. Мысалы:
Var
сһ: char;
tz1:string[12];
tz2:string[6];
Begin
ch:= 'a';
tzl:='тобы';
tz2:= ch + tz1; { а тобы}
tz1 :='*';
ch:=tzl;
Соңғы меншіктеу операторы дұрыс жазылмаған, себебі tz1-дің кезекті мәні бір символдан тұрғанымен, ол String типті болғандықтан, ұзындығы 2 байт, ал char типті айнымалының ұзындығы 1 байт.
Жолдың символын оның реті (индексі) арқылы да табуға болады. Индекс бүтін типті өрнек немесе тұрақты түрінде жолдың идентификаторынан соң тік жақшаға алынып жазылады. Мысал, tz1(2+2), tz2(7) жазылулары tz1 жольшдағы төртінші символын, ал tz2 жолындагы жетінші символын көрсетеді. Ал tz2(0) -- жолдың ұзындығын көрсететін 0-дік байтқа жол ашады.
Жол типті процедуралар мен функциялар. String типті мәлеметтерді өндеуде келесі стандартты процедуралар мен функциялар қолданылады.
Функциялар.
COPY(tz, m,n) -- tz жолынан m позициясынан бастап n символ бөліп алады. Егер m-нің мәні жолдың ұзындығынан артық болса, онда функцияның нәтижесі бос символ болады, егер m255 болса, орындалу барысында қателік туады.
tz:='ABCDEFG' Copy(tz,2,3)- BCD
tz:='ABCDEFG' Copy (tz,4,10)- DEFG
CONCAT (tz1,tz2,...,tzN) - tz1, tz2, ..., tzN жолдарын көрсетілген ретпен біріктіреді. Біріктірілген жолдың ұзындығы 255-тен аспауы керек.
Concat ('АЛЬ', 'ТАРАЗИ', '2') - АЛЬТАРАЗИ2
Concat('IBM', ' PC') - IBM PC
LENGTH (tz) -- tz жолының ұзындығын анықтайды. Нәтижесі -- бүтін сан.
tz:= '123456789' Length(tz) - 9
tz:='IBM PC' Length(tz) - 6
POS(tzl,tz2) -- tzl жолы tz2 жолында кездессе, қай позициядан басталатынын көрсетеді. Нәтиже бүтін типті. tz2 жолында tz1 тізбегі кездеспесе, онда нәтиже нөлге тең.
tz:='abcdef' Pos('de', tz)- 4
tz:='abcdef' Pos ('r', tz)- 0
STR(F,tz) -- F шамасының сандық мәнін tz символдық жолға айналдыру. F -- тен кейін оның фәрматы көрсетілуі мүмкін, мысалы: F = 1250 STR(F:7,tz) -'__1250'
ру.
Процедуралар.
DELETE (tz,m,n) - tz жолының m позициясынан бастап n
символы өшіріледі.
Егер m 255 болса, онда қателік туады.
Tz = '1-топ' delete(tz,3,3) '1-'
Tz = '1-класс' delete(tz,l,3) 'ласе'
Tz = '1-топ' delete(tz,2,l) '1топ'
INSERT (tzl, tz2, m) - tzl жолын tz2 тізбегіне m
позициясынан бастап сыналап қосу.
Мысалы Var ...
Т1,Т2,ТЗ : string(11);
Begin
T1:= 'АБДХ' ;
T2:= 'ВГЕ';
T3:= Insert(t2,t1,t3);
Соңғы функцияның нәтижесінде t3 жолы 'АБВГЕДХ' жолына тең болады.
{ жолды енгізу}
{ жолдың ұзындығын анықтау}
VAL(tz,F,Code) -- tz жолының мәнін бүтін немесе нақты типке айналдырып нәтижені F -- те сақтайды. tz -- нің басында немесе соңында мәнсіз бос орын символдыры болмауы қажет. Code -- бүтін типті айнымалы. Егер айналдыру операциясы дүрыс аяқталса Code-нің мэні 0-ге тең, ал кері жағдайда бұл айнымалыда қатеге әкелген символдың позициясы сақталады.
1.2 Паскаль тіліндегі жиын типті мәліметтер
Жиын -- белгілі бір қасиеттерге сай іріктеліп, біртүтас қарастырылатын жүйелі типті мәліметтер тобы. Жиын моліметтердің құрылымды типі. Жиындағы әр мәлімет жиынның элементтері деп аталады. Жиын элементтерінің типі тек реттік тип болуын естен шығармау керек. Жиын элементтерінің типі жиынның базалық типі деп қарастырылады. Базалық тип аралықпен немесе дараланып беріледі. Паскаль тілінде өрнектерде жиынның элементтері тік жақшаларға алынып жазылады: ['а','Ь','с'], [1,2,3,4], ['a',...'z']. Егер жиында ешбір элемент болмаса, ондай жиын бос жиын болады да, былай [ ] белгіленеді. Жиындық типті сипаттау үшін set оf қызметші сөздері қолданылады.
Жазылу жалпы түрі:
Type
типтің аты = set of жиынның элементтері;
Var
айнымалылар : типтің аты;
Немесе алдын ала Туре тарауында сипаттау жүргізбей - ақ жиындық типті Var тарауында жариялауға да болады:
Var айнымалылар: set of типтің аты ;
Мысалы,
Type
Day =(Sun, Mon, Tue, Wed, Thu, Fri, Sat);
Days =set of Dat
Turakti=set of (3,5,7,11,13,17);
Holidays = set of 1..31;
Var
Max : Turakti; К : Holidays;
Letter: set of ('a','e','i','j'); {Letter жиыны типтер тарауында
жарияланбай сипатталған}
Мұнда Max, Letter, К жиын типті айнымалылар, оларға сипаттауларында көрсетілген жиындарға кірмейтін элементтерден тұратын жиынды меншіктеу қателік тудырады. Жиынның элементтер саны 256-дан аспауы керек. Жиынның бір элементі бір байт орын алады.
Жиындардың негізгі қасиеттері:
1. Жиынды қүрайтын барлық элементтері түрлі болып бір бірін қайталанбауы тиіс. Мысалы, жиын элементтерін былай жазу (2,2,3,4) дүрыс емес, себебі екі бірдей элементі бар.
2. Жиында элементтерінің әрналасуы реттелмеуіде мүмкін (алдын ала белгіленбейді).
3. Егер де жиын мына түрде [I..J] берілсе және Ij болса, онда бұл [I..J] бос жиын деп білеміз.
Жиындағы қолданылатын амалдар. Паскаль тілінде жиындарға нәтижесі True немесе False болатын қатынас (=, ,+,=) және"тиісті" - (in) амалдары қолданылады. Сонымен қатар жиындарға біріктіру (+), қию (*), айыру (-) амалдары да жүреді.
"Теңдік" (=) амалы. Егер екі жиынның элементтері бірдей болса, онда ол жиындар тең деп саналады. Салыстырылатын жиындарда элементтерінің әрналасу реті әр түрлі болуы мүмкін.
[1,2,3,4] = [1,2,3,4] True
[5,6,7,8] = [8,5,7,6] True
['а',b','с'] =['c','b'] False
['a'..'s'] = [`s'..'a'] True
"Тең емес " ( ) амалы. Егер екі жиынның ең болмағанда бір элементі өзгеше болса, ондай жиындар тең емес деп саналады.
[1,2,3] [3,1,2,4] Тruе
['a'..'z'] =['z'..'a'] False
['a'..'s'] ['b'..'s'] Тruе
"Үлкен немесе тең" (=) амалы. А=В амалының нәтижесі ақиқат (True), егер В жиынының элементтері түгелдей А жиынында кездессе, кері жағдайда нәтиже жалған (False).
[1,2,3,4] = [2,3,4] Тruе
['a','z'] =['c'.'b','z'] False
[`a'..'s'] = ['b'..'t'] True
"Кіші немесе тең" (=) амалы. A=B амалының нәтижесі ақиқат (Тruе), егер А жиынының элементтері В жиынында түгелдей кездессе, кері жағдайда нәтиже жалған (False).
[1,2,3,4] = [2,3,4] False
['d','h'] =['z'..'a'] Тruе
['a','v'] = ['a','n','v'] True
"Tuicmi" (in) амалы. Бұл амал қандайда бір шаманың көрсетілген жиында кездесетіндігін анықтайды, кездессе нәтижесі ақиқат (True), әйтпесе жалған (False), әдетте, бұл амал шартты операторларда пайдаланады.
2 in [1,2,3] Тrue
'р' in ['a',..'n'] False ,
хі in [x0,x1,x2,x3] - True
" Біріктіру" (+) амалы. Екі жиьшның қосындысы осы жиындардың элементтерінен тұратын үшінші жиын болып табьшады.
[1,2,3] + [1,4,5] - [1,2,3,4,5]
"Қию " (*) амалы. Екі жиынның қиюы -- осы екі жиында да кездесетін элементтерден тұратын үшінші жиын:
[1,2,3] * [1,4,2,5] - [1,2]
['a'..'z'] * ['b'..'r'] - [`b'..'r']
[]*[]-[]
"Айыру" (-) амалы. Екі жиынның айырмасы -- екінші жиында кездеспейтін бірінші жиынның элементтерінен тұратын үшінші жиын:
[1,2,3,4]- [3,4,1] - [2]
['a'..'z'] - ['d'..'z'] - ['а'..'с']
[x1,x2,x3,x4] - [x4,x1] - [х2,хЗ]
Көрсетілген амалдардың нәтижесі көрнекті түрде 1-суретте келтірілген.
Қию Біріктіру Айыру
1-сурет. Жиын амалдарының нәтижелері.
Жиындар көбінесе шартты операторларда күрделі шарттарды ықшамды жәнекөрнекті түрде жазуға пайдаланылады. Мысалы, мына оператәрдағы шартгы If (a=l) or (a=2) or (a=3) or (a=4) or (a=5) or then... былайша If a in [1..5] then... жазуға болады. Көріп отырғанымыздай, мұндай түрде жазу өрі ықшамды, әрі көрнекті болып табылады.
Ескерту.
1. Паскаль тілінде барлық қатынас операторларының приәритеті бірдей.
2. Жиын өңдеуде біртұтас объект ретінде қарастырылатын
болғандықтан оған "сұрыптау" амалы жүргізілмейді.
1.3 Жазбалар типті мәліметтерді өңдеу технологиялары
Алдыңғы тарауларда тек бір типті компоненттерден тұратын мәліметтердің жүйелі типті түрлерімен таныстық. Алғашында көптеген инженерлік есептерді шешуде он шақты айнымалыларды пайдаланып - ақ алгоритмін құруға болатын еді. Кейіннен түрлі кестелерде берілген өңдеуге арналған программаларын түзу мәселесі туындайды. Бұл мәселені шешуде массив, жол және жиын типтер көп жеңілдік беретін болды. Бір типті мәліметтерді өңдеудегі массивтердің даусыз артықшылығы бар. Бірақ массивтермен жұмыс атқарудағы негізгі шектеу - ол массив элементтерінің барлығы бір типті болуы. Іс жүзінде кездесетін кестелерде тек сандық информацияны ғана емес текстік мәліметтерді де өңдеу керек болады.
Программалауда қандай да бір объектіге қатысты әр түрлі мәліметтерді жинақтап қарастыру жиі кездеседі. Шынайы объект туралы мәліметтер түрлі типті шамалармен сипатталынады. Мысалы, қоймадағы тауарлар келесі мәліметтер арқылы сипатталынады: тауар аты, тауар мөлшері, бағасы, сапалық сертификаты бар болуы т.с.с. Бұл мысалда тауар аты-string типті мәлімет, тауар мөлшері-integer типті, бағасы-real типті, сапалық сертификатының бар болуы-boolean типті. Сөйтіп, қоймадағы тауарлар туралы есепті шешуде түрлі типті мәліметтерді бірге өңдеуге тура келеді. Сондықтан бұл құрылымды типті мәліметтерді өңдеуге арналған құрал қажеттілігі туындады. Турбо Паскальде осындай құрал ретінде ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz