- •Дәрістік сабақтардың конспектісі
- •1 Дәріс. Кіріспе. Курстың мақсаты. Пәнді игеру негіздері, басқа пәндермен байланысы. Программалық жабдықтаудың даму тарихы Процедуралық бағдарламалаудан объектілі-бағытталған бағдарламалауға өту
- •Мұрагерлену
- •Полиморфизм және виртуалды әдістер
- •2 Дәріс. Объектілі бағдарланған визуальді программалаудың принциптері
- •2.1 Сурет – Интеграцияланған өңдеу ортасының түрі
- •2.2 Сурет – Жөндеудің диалогтық терезесі
- •2.3 Сурет – Компоненттер тақтасы қасиеттерінің сұхбаттық терезесі
- •3 Дәріс. Delphi программасының интегралданған өңдеу ортасы
- •2.4 Сурет – Компоненттің қасиеттеріне қатынау
- •Қосымшаның жұмыс істеу қабілетін анықтау
- •2.5 Сурет – Компонентке тиісті оқиғалар тізімі
- •4 Дәріс. Delphi программасындағы жобалар Object Pascal тілі
- •Негізгі түсініктер
- •Алфавит
- •Бағдарламаның құрылымы
- •Түсініктемелер
- •Мәліметтердің типтері
- •Операторлар
- •Компилятор директивалары
- •Дәрiс 5. Қосымша программалардағы қателерді жөндеу
- •Бүтiнсанды типтер
- •Литерлiк тип
- •Логикалық типтер
- •Мәлiметтердің нақты типтерi
- •Бақылау сұрақтары
- •Дәрiс 6. Delphi тіліндегі мәліметтердің типтері
- •Саналымды типтер
- •Интервалды типтер
- •Бақылау сұрақтары
- •Дәріс 7. Компоненттер палитрасындағы парақтар. Мәтіндік ақпараттарды енгізуге және бейнелеуге арналған компоненттер Деректердің құрылымдық типтері. Массивтер. Жиын.
- •Массивтер
- •Жиындар
- •Дәріс 8. Ақпараттардың басқа түрлерін бейнелеуге арналған компоненттер Деректердің структуралық типі. Жазбалар. Файлдар. Жазбалар.
- •Файлдар
- •9 Дәріс. Тақталар және сыртқы әрлеуге арналған компоненттер. Жүйелік диалогтар
- •10 Дәріс. Қолданушының графиктік интерфейсін жобалау Қарапайым операторлар.
- •11 Дәріс. Графика және мультимедиа
- •15. Дәріс Әртүрлі ақпараттық жүйелер класына арналған Delphi мүмкіндіктері.
Бүтiнсанды типтер
Бүтiнсанды мәлiметтер типтерi физикалық және жалпы болуы мүмкiн. Delphi-дің физикалық типтерi 2.1 кестесiнде көрсетiлген.
2.1 кестесi – Мәлiметтердің физикалық типтерi
Белгіленуі |
Диапазон |
Жадыда көрсетiлуi |
Shortint |
-128-127 |
1 байт, белгiмен |
Smallint |
-32768-32767 |
2 байт, белгiмен |
Longint |
-2147483648-2147483647 |
4 байт, белгiмен |
Int64 |
– 2 |
8 байт, белгiмен |
Byte |
0-255 |
1 байт, белгiсiз |
Word |
0-65535 |
2 байт, белгiсiз |
Longword |
0-4294967295 |
4 байт, белгiсiз |
Физикалық типтерден басқа, 2.2 кестесiнде берiлген тағы да екi жалпы тип анықталған.
2.2 кесте – Мәлiметтердің логикалық типтерi
Белгіленуі |
Диапазон |
Жадыда көрсетiлуi |
Integer |
-2147483648-2147483647 |
4 байт, белгiмен |
Cardinal |
0-4294967295 |
4 байт, белгiсiз |
Негізгі бүтiн сандарды жазу үшiн «+» және «–» белгiлерi мен цифрларды қолдануға болады. Егер санның белгiсi болмаса, онда ол оң сан деп есептеледі. Бұл жағдайда сан ондық санау жүйесiнде және оналтылық санау жүйесiнде де көрсетiлуi мүмкiн. Егер сан оналтылық санау жүйесiнде көрсетiлсе, онда оның алдына $(пробелсіз) белгiсi қойылады, ал берiлетiн диапазон $00000000-$ҒҒҒҒҒҒҒҒ.
Литерлiк тип
Литерлiк типтердiң мәндерi литерлер жинағының элементi болып табылады, яғни бөлек символдар. Символдардың да физикалық және жалпы типтерi бар. Физикалық типтер AnsiChar және WideChar типтерiмен көрсетiлген.
AnsiChar типiнiң символы бiр байт орын алады, ал символдарды кодтау үшiн Американдық Ұлттық Стандарттар Институтының ANSI (American National Standarts Institutes) коды қолданылады. WideChar типтi символ екi байт орын алады, ал символдарды кодтау үшiн халықаралық Unicode символдар жинағы қолданылады. Unicode символдар жинағы 60 мыңнан астам элементтерден құралады және ұлттық алфавиттердiң символдарын кодтауға мүмкiндiк бередi. Unicode-тың бiрiншi 256 символы ANSI кодымен сәйкес келедi.
Object Pascal-дың физикалық типтерінен өзге AnsiChar типiне эквиваленттi болып келетiн тағы бiр жалпы Char типi анықталған.
Символдарға келесiдей функциялар қолданылады:
Chr(X):Char – коды X өрнегінің бүтінсанды мәнiне тең символды қайтарады;
Upcase(X):Char – с символын жоғарғы регистрдегi с символына ауыстырады.
Логикалық типтер
Мәліметтердің логикалық типiне Object Pascal-да мыналар жатады: Boolean, ByteBool, WordBool және LongBool. Бағдарламада Boolean типiн қолдану қажет, қалған типтер басқа да бағдарламалау жүйелерімен сәйкестік болу үшін енгізілген. Ары қарай логикалық тип ретінде Boolean типi қолданылады. Бұл типтің екi мүмкiн мәнi бар: True (ақиқат) және False(жалған). Логикалық мәндi көрсету үшiн бiр байт жады қажет.
Мәлiметтердің нақты типтерi
Мәлiметтердің нақты типтерi бөлшек бөлiгi бар сандарды сақтау үшiн негiзделген. Төмендегі 2.3 кестеде Delphi 7 үшiн осы тип және оның өзгеруiнiң диапазоны келтіріледі.
2.3 кесте – нақты типтер
Тип |
Мәндердiң диапазоны |
Белгіленген разрятар саны |
Жадының байттағы көрсетiлiмi |
Real48 |
2.9∙10-39 ÷ 1.7∙1038 |
11 – 12 |
6 |
Real |
5.0∙10-324 ÷1.7∙10308 |
15 – 16 |
8 |
Single |
1.5∙10-45 ÷ 3.4∙1038 |
7 – 8 |
4 |
Double |
5.0∙10-324 ÷ 1.7∙10308 |
15 – 16 |
8 |
Extended |
3.6∙10-4932 ÷ 1.1∙104392 |
19 – 20 |
10 |
Comp |
−263 ÷ 262 |
19 – 20 |
8 |
Currency |
−922337203685477.5808 ÷ 922337203685477.5807 |
19 – 20 |
8 |
Real типi жалпы (қолдану ауқымы көп) болып табылады, ол қазіргі кезде Double типiне эквиваленттi, бiрақ келесi версияларында өзгеріске ұшырауы да мүмкін. Алғашқы версияларында ол 6 байт қолданатын, яғни қазіргі уақытта қолданылып жүрген Real48-ге эквиваленттi болатын. Егер ескi кодтарды жаңадан компиляциялауда 6 байттық Real көрсетiлiмiне көшу керектiгi туса, онда компилятордың {$REALCOMPATIBILITY ON} директивасын енгiзу арқылы компиляция жүргiзу қажет.
Real48 типі ең аз қолданылады, ол одан ертедегi тiлдiң версияларымен керi тұрақтылық орнату үшiн қалдырылған.
Extended типiнің дәлдiгi максималды, бiрақ оның басқа платформаларға көшуіне қатысты қиыншылықтар тууы мүмкiн.
Comp типi, былайша айтқанда, нақты емес үлкен бүтiн сан болып табылады, оның бүтiн саннан айырмашылығы оған инкремент және декремент функцияларын қолдана алмаймыз. Бұл тип тiлдiң одан ертедегi версияларымен керi тұрақтылық орнату үшiн қалдырылған, өйткенi оның мүмкiндiктерiн Int64 типi бүтiндей алып отыр.
Currenсy типi ақшалы шаманы көрсетуде қолданылады. Жадыда ол 10000 есе масштабталған 8 байттық бүтiн болып сақталады. Осыған орай ақшалы операцияларда Currenсy типi дөңгелектеу қателерiн азайтады, бұл ақшаны санағанда өте қажет. Currenсy типiнің шамалары басқа бір нақты типтермен араласып келген өрнектерде, Currensy мәнi автоматты түрде 10000-ға көбейтiледi немесе бөлiнедi.
Кестеде келтiрiлген жады шығыны версиядан версияға және жүйеден жүйеге ауысуы мүмкiн. Сондықтан, егер де осы немесе басқа типтер үшiн қанша жады шығындалғанын бiлу керек болса, онда SizeOf функциясын қолдану қажет.
Беттерi көрсетiлген жалпы әдебиеттер
1. [863-868б.]
2. [59-60б.]
3. [47-51б.].
