Паскаль программалау тілінде білімді бақылау жүйесін жасау



КІРІСПЕ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...3
I БӨЛІМ. Паскаль . программалау тілі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...5
1.1 Паскаль тілінің стандартты функциялары мен процедуралары ... ... ... ... ... 10
1.2 Паскаль тілінің құрылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 14
1.3 Паскаль тілінің күрделі типтері.Массив ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..30
II БӨЛІМ. Паскаль программалау тілінде білімді бақылау жүйесі ... ... ...54
2.1. Тестілеу программасын жасау әдістері ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..54
2.2 Паскаль программалау тілінде жұмыс істеу принциптері ... ... ... ... ... ... ... .57
2.3 Электронды оқу құралын жасау технологиясы ... ... ... ... ... ... ... ... ... ... ... ...60
ҚОРЫТЫНДЫ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 64
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ ... ... ... ... ... ... ... ... ... ... ... ... ...65
ҚОСЫМШАЛАР ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 66
Тест тапсырмалары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...66
Зертханалық жұмыс ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..78
Соңғы жылдары программистер арасында Паскаль программалау тілі кеңінен тарай бастады. Бұл тілді Цюрих технологиялық институтының профессоры Никлаус Вирт алғашқы жалпы программалауды оқыту мақсатымен құрастырған.
Паскаль тілі өзіне дейінгі тілдердің көптеген жақсы ерекшеліктерін қамти отырып, алдыңғы қатарлы программалау әдістемелері мен тәсілдерінің талаптарына сай құрылған. Атап айтсақ, біріншіден, программаның құрылымын табиғи қарапайым тілдерге жақындататын жүйелі программалау тәсілдері Паскальда, басқару жүйелерінің жұмыстарында айқын көрсетіліп, толық іске асырылады; екіншіден, бұл тіл программалау практикасныда кеңінен танылған модульді программалау әдісін қолдануға лайықталған; үшіншіден, программаның қарапайымдылығын, көрнектілігін, бекемдігін қамтамасыз ету мақсатымен мәліметтерді жүйелі түрде қолданудың жан - жақты түрлері (массив, жол, жиын, жазба, файл т.б. ) қарастырылған.
Қазіргі кезде білім беруді автоматтандыру процесінің жүргізілуіне байланысты осы процесті жүзеге асырудағы өзекті мәселелердің бірі -электронды оқу құралын, электронды оқулықтар дайындау болып отыр. Ал оларды оқыту процесіне қолдану сапалы білім берудің бірден-бір құралы болып табылады. Сондай-ақ қазіргі кезде тек мұғалімнің айтқандарын немесе оқулықты пайдалану заман талабын қанағаттандырмайды.
Осыған орай мен түлектік жұмысымда Turbo Pascal программалау тілінде жасап шығаруды мақсат етіп қойдым.
Дипломдық жұмыстың мақсаты – Турбо Паскаль тілін оқып және Паскаль программалау тілінде тест жинақтарын жасап үйрену.
- Қарапайым бір түбірлі қосымшалардан бастап мәліметтер базасымен жұмыс істеу программасына дейін үйрету. Тек нақты есептерді шешу процесінде программа құруды үйренуге болады.
Дипломдық жұмыстың міндеті:
- Паскаль тіліне байланысты қажетті теориялық, лабораториялық сабақтарға байланысты ақпараттар жинақтау және тест тапсырмаларын дайындау;
- электронды оқу құралын дайындауға байланысты жаңа ақпараттық технологиялардың ең тиімдісін таңдау;
- таңдалынған ақпараттық технологияларды пайдалана отырып жоғарғы сынып оқушыларына түсінікті және тиімді түрде ақпаратты жеткізу жолдарын жүзеге асыру;
Бірақ, соңғы уақытта құрылымдық программалау тілі - Паскальға ерекше көңіл бөлінуде. Себебі олимпиада материалдарын орындау талабына сай оны тек Паскаль программалау тілінде жазу ұсынылады. Өкінішке орай, осы тақырып төңірегінде жоғарғы сынып оқушыларына арналған кешенді ғылыми -педагогикалық әдістемелік оқу құралы, электронды оқу құралы жеткілікті мөлшерде дайындалмаған. Сондықтан біздің ұсынып отырған еңбегіміз аталған көкейтесті мәселелерден туындады.
1. Поддубная Л. М., Шаньгин И. Ф. Мне нравится Паскаль. -М.: Радио и связь, 1992.
2. Марченко А. И., Марченко Л. А. Turbo Pascal 7.0. -М.: Бином универсал. 1997.
3. Брудно А. Л., Каплан Л. И. Московские олимпиады. -М.: 1990.
4. Боон К. Паскаль для всех. -М.: Энергоатомиздат. 1988.
5. Шульгин Л.Л.. Задачи по программированию. Караганда, 1998.
6. Бөрібаев Б. Информатика және компьютер. -Алматы. Білім, 1995.
7. Абдиев К.С., Якубова А.Н., Буралкиева Г.М. Практикум по программированию. Методическая разработка.-Алматы, АГУ им Абая. 1996.
8. Досмайлов Т. Қ. Паскаль программалау тілі. –Алматы, 1994.
9. Исатулиев М.Г. " Масromedia Flash 5". -Санкт-Петербург, 2001г,-
534с.
10. Бил Сандерс "Эффективная работа Flash 5" .-М,2000,621с.
11. Владимир Дронов " Масromedia Flash МХ 2004",-С-П, 2004
12. Дмитрий Альберт, Елена Альберт " Action Script 2.0", С-П 2005
13. Абраимов Д.И., Бидайбеков Е.Ы., Гриншкун В.В., Камалова Г.Б.
"Теоретика- методологические основы разработки, мониторинга
качества и экспериментальной апробации компьютерных учебно-
методических комплексов нового поколения", Алматы, 2005
14. Крамер Э. «HTML» Москва-Санкт- Петербург-Киев 2001.
15. Сыдықов Б.Д . «HTML тілін үйрену» Алматы 2001.

Қазақстан Республикасы Білім және ғылым
министірлігі

Абай атындағы Қазақ ұлттық педагогикалық
университеті

Магажанова Мархабат Ержановна

Паскаль программалау тілінде білімді бақылау жүйесін жасау

ДИПЛОМДЫҚ ЖҰМЫС

5В011100- Информатика

Алматы, 2013
Қазақстан Республикасы Білім және ғылым министірлігі

Абай атындағы Қазақ ұлттық педагогикалық
университеті

Қорғауға жіберілді
Информатика және қолданбалы математика
кафедрасының меңгерушісі
ф-м.ғ.д., профессор Бердышев А.С.
________________

ДИПЛОМДЫҚ ЖҰМЫС

Тақырыбы: Паскаль программалау тілінде білімді
бақылау жүйесін жасау

5В011100- Информатика

Орындаған Магажанова М.Е.
Ғылыми жетікші Ахметова А.М.

Алматы, 2013
МАЗМҰНЫ

КІРІСПЕ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .3
I БӨЛІМ. Паскаль - программалау тілі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 5
1.1 Паскаль тілінің стандартты функциялары мен процедуралары ... ... ... ... ... 10
1.2 Паскаль тілінің құрылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..14
1.3 Паскаль тілінің күрделі типтері.Массив ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..30
II БӨЛІМ. Паскаль программалау тілінде білімді бақылау жүйесі ... ... ...54
2.1. Тестілеу программасын жасау әдістері ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...54
2.2 Паскаль программалау тілінде жұмыс істеу принциптері ... ... ... ... ... ... ... .57
2.3 Электронды оқу құралын жасау технологиясы ... ... ... ... ... ... ... ... ... ... ... ... 60
ҚОРЫТЫНДЫ ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 64
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ ... ... ... ... ... ... ... . ... ... ... ... ... ..65
ҚОСЫМШАЛАР ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .66
Тест тапсырмалары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..66
Зертханалық жұмыс ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .78

Кіріспе

Соңғы жылдары программистер арасында Паскаль программалау тілі кеңінен тарай бастады. Бұл тілді Цюрих технологиялық институтының профессоры Никлаус Вирт алғашқы жалпы программалауды оқыту мақсатымен құрастырған.
Паскаль тілі өзіне дейінгі тілдердің көптеген жақсы ерекшеліктерін қамти отырып, алдыңғы қатарлы программалау әдістемелері мен тәсілдерінің талаптарына сай құрылған. Атап айтсақ, біріншіден, программаның құрылымын табиғи қарапайым тілдерге жақындататын жүйелі программалау тәсілдері Паскальда, басқару жүйелерінің жұмыстарында айқын көрсетіліп, толық іске асырылады; екіншіден, бұл тіл программалау практикасныда кеңінен танылған модульді программалау әдісін қолдануға лайықталған; үшіншіден, программаның қарапайымдылығын, көрнектілігін, бекемдігін қамтамасыз ету мақсатымен мәліметтерді жүйелі түрде қолданудың жан - жақты түрлері (массив, жол, жиын, жазба, файл т.б. ) қарастырылған.
Қазіргі кезде білім беруді автоматтандыру процесінің жүргізілуіне байланысты осы процесті жүзеге асырудағы өзекті мәселелердің бірі -электронды оқу құралын, электронды оқулықтар дайындау болып отыр. Ал оларды оқыту процесіне қолдану сапалы білім берудің бірден-бір құралы болып табылады. Сондай-ақ қазіргі кезде тек мұғалімнің айтқандарын немесе оқулықты пайдалану заман талабын қанағаттандырмайды.
Осыған орай мен түлектік жұмысымда Turbo Pascal программалау тілінде жасап шығаруды мақсат етіп қойдым.
Дипломдық жұмыстың мақсаты - Турбо Паскаль тілін оқып және Паскаль программалау тілінде тест жинақтарын жасап үйрену.
Қарапайым бір түбірлі қосымшалардан бастап мәліметтер базасымен жұмыс істеу программасына дейін үйрету. Тек нақты есептерді шешу процесінде программа құруды үйренуге болады.
Дипломдық жұмыстың міндеті:
Паскаль тіліне байланысты қажетті теориялық, лабораториялық сабақтарға байланысты ақпараттар жинақтау және тест тапсырмаларын дайындау;
электронды оқу құралын дайындауға байланысты жаңа ақпараттық технологиялардың ең тиімдісін таңдау;
таңдалынған ақпараттық технологияларды пайдалана отырып жоғарғы сынып оқушыларына түсінікті және тиімді түрде ақпаратты жеткізу жолдарын жүзеге асыру;
Бірақ, соңғы уақытта құрылымдық программалау тілі - Паскальға ерекше көңіл бөлінуде. Себебі олимпиада материалдарын орындау талабына сай оны тек Паскаль программалау тілінде жазу ұсынылады. Өкінішке орай, осы тақырып төңірегінде жоғарғы сынып оқушыларына арналған кешенді ғылыми -педагогикалық әдістемелік оқу құралы, электронды оқу құралы жеткілікті мөлшерде дайындалмаған. Сондықтан біздің ұсынып отырған еңбегіміз аталған көкейтесті мәселелерден туындады.
Электрондық оқу құралының мазмұны Паскаль программалау тілінің әліппесінен басталып, құрылымдық программаларды құру тәсілдерін толық қамтиды.
Паскаль программалау тілінің командаларына түсініктеме беріліп, сәйкес мысалдармен жүйелей түсіндіру оқушының материалды жан-жақты игеруіне игі әсерін тигізетіндігі жылдар бойы жинақталған тәжірибе барысында іс жүзінде дәлелденді. Мұғалім аталған материалды Паскаль программалау тілін оқытуға жан-жақты пайдаланып, оны шәкірттеріне әр түрлі тәсілдермен меңгертуге мол мүмкіндік алады.

1- БӨЛІМ. ПАСКАЛЬ - ПРОГРАММАЛАУ ТІЛІ

Паскаль тілінің алфавитіне кіретін символдарды үш топқа бөлуге болады: әріптер,цифрлар және арнайы символдар.
Әріптер ретінде латын алфавитінің бас және кіші әріптері (A,а,В,b,...,Z,z) пайдаланылады.Сонымен қатар Паскаль тілінде жазылған бағдарламалар түсінікті болуы үшін арнайы бағдарламалардың (драйверлердің) көмегімен орыс, қазақ алфавиттерінің әріптерін де пайдалану мүмкіндіктері бар.
Цифрлар - өзімізге белгілі араб цифрлары (1,2,3,4,5,6,7,8,9).
Арнайы символдар:
+ қосу ( ) фигуралы жақшалар
- алу . нүкте
бөлшек белгісі : қос нүкте
= теңдік ; нүкте мен үтір
үлкен ` апостроф
кіші $ доллар белгісі
[ ] квадрат жақшалары бос орын
( ) жәй жақшалары тағы сол сияқтылар.
Программалау тілдерінде бөлінбейтін тұтас символдар тізбегі сөзді құрайды. Сөздер стандартты идентификаторлар (sіn,cos,...), қолданушының идентификаторлары (x,xі,fact,...), қызметші сөздер (begіn,end,іf,...) болып бөлінеді.
Қызметші сөздер - алдын ала мағынасы анықталған, тілдің құрамының бір бөлегі болып табылатын сөздер.
Әдетте программа белгілі бір объектілермен (тұрақтылар, айнымалылар, функциялар, өрнектер т.б.) әрекет етеді.
Программада осы объектілердің әрқайсысы жеке сөздермен белгіленеді, олардың ролін идентификатор атқарады. Бұл сөз іdentіfy (теңестіру) деген латын сөзінен алынған. Сонымен идентификатор дегеніміз объектілердің аттары, кейде идентификатор деген сөздің орнына объектінің аты, объектінің атауы деген термин де пайдаланады.
Стандартты идентификаторлар тілдің құрамына кіретін тұрақтылар мен айнымалылардың типтерін, тұрақты және айнымалы шамаларды процедуралар мен функцияларды белгілеу үшін тағыйындалады.
Қолданушының идентификаторы белгілі бір ережелерге сүйене отырып, программа жазу барысында құрастырылады.
Идентификатор құрастыру ережелері:
1. Идентификатор құрастыруға үлкен, кіші латын әріптері , цифрлар және төменгі сызықша (_) пайдаланылады (A,b,x1,y1,az_1,...).
2. Идентификатор тек қана әріптен немесе төменгі сызықшадан басталады. Бұл ереже таңба идентификаторына қолданылмайды.
3. Екі идентификатордың арасында ең болмағанда бір үзіліс қойы-лады (үзіліссіз жазылған идентификаторлар бір идентификатор болып есептеледі).
4. Жалпы идентификаторлардың ұзындығы 127 символдан аспауы керек. Идентификаторлар бір-бірінен негізгі болып табылатын алғашқы сегіз символдарымен ажыратылады.

Тұрақтылар мен айнымалылар
Кез келген программа мәліметтерді (сандар, символдар, графикалық мәліметтер т.б) өңдеп (мәліметтермен белгілі бір амалдар орындап), нәтиже береді. Программада өңделетін мәліметтер белгілі бір объектілердің мәндері ретінде қарастырылады, олар тұрақты шама немесе айнымалы шама болып келеді. Тұрақтылар мен айнымалылардың кезекті мәндері оларға тағайындалған идентификаторлар арқылы алынады.
Тұрақтылар дегеніміз мәндері белгілі және программаның орындалу барысында өзгермейтін шамалар. Кей жағдайда тұрақтыларды, міндетті түрде (мысалы, массивтің элементтер санын анықтауда), алдын ала анықтап алу қажет, ол үшін Const қызметші сөзі қолданылады.
Жазылуы: Const тұрақтының аты=тұрақтының мәні;
Мысал. Const m=10; n=20;
p=' метеп';
Кейбір тұрақтылар тілдің құрамына кіреді де, алдын ала анықтауды қажет етпейді, мысалы, P1 мәні 3,14..., Maxіnt мәні 32767 т.с.с.
Айнымалылар дегеніміз программаның орындалу барысында мәндерін өзгертуге болатын шамалар. Айнымалылардың кезекті мәндері компьютер жадында оларға жаңа мән бергенше ғана сақталады.
Тұрақтылар мен айнымалылар Паскаль тіліндегі келісілген мәліметтердің бір типіне жатуы тиіс. Тұрақтылардың типтері олардың берілуіне байланысты өздігінен анықталады. Айнымалылардың типтері программаның арнайы тарауында сипаттаалады.
Жазылуы: Var идентификатор,.. : тип идентификаторы;...
Айнымалыларға сипаттауда көрсетілгеннен басқа типті мән меншіктеу кателік туғызады.

Мәліметтердің типтері
Тип ұғымы
Программалау тілдерінде ең бір негізгі де маңызды ұғымдардың біріне тип ұғымы жатады. Компьютерде өңделетін әр түрлі мәліметтер (бүтін сандар,нақты сандар, символдар,...) 0 және 1 екілік цифрлар тізбегі түрінде өрнектеледі. Мәліметтердің түрлеріне байланысты, оларды компьютердің жадында орналастыру және оларға қолданылатын амалдардың түрлері мен орындалу тәсілдері әр түрлі болады. Программалау тілдерінде осы сәйкестік мәліметтердің типтері арқылы көрсетіледі. Яғни, тип объектілердің қабылдай алатын мәндерінің жиынын және оларға қолданылатын амалдардың түрлері мен орындалу жолдарын анықтайды.
Паскальда прогрмманы құру жолдарын жеңілдету және көрнектілігін арттыру мақсатымен өңделетін мәліметтерді белгілі бір жүйеде жинақтап, тұтасымен қарастыру жолдары ойластырылған. Осындай күрделі мәліметтің типі сол жүйеге кіретін элементтердің қабылдайтын мәндерінің түрін және жинақтау тәсілін көрсетеді де, жүйелі тип құрайды. Егер мәліметтер жеке-дара қарастырылса, онда олар жәй типті мәліметтерге жатады. Сонымен Паскальда қолданылатын типтерді екі топқа бөуге болады: жай (негізгі) және жүйелі (күрделі).
Жай тип стандартты және жасанды болып бөлінеді. Стандартты жай типтерге бүтін (іnteger), нақты (real), байттық (byte), логикалық (boolean), символдық (char) типтер жатады. Жасанды типтерді қолданушының өзі құрастырады, олардың екі түрі бар: аралық және атап өту. Жүйелі типтер жай типтерге негізделіп құрастырылып, төмендегідей бөлінеді: массивтік (array), жолдық ( strіng), жиындық (set), жазба (record), файлдық (fіle),... Оларды кейінгі тарауларда кеңінен қарастырамыз. Мәліметтер типтерінің жіктелуі мына суретте көрсетілген.
Жай типтердің real және іnteger-ден өзгелері реттік (шектелген) тип деп аталады. Реттік типті шамалардың қабылдай алатын мәндерінің саны шектелген болады. Мысалы, логикалық типті шамалар екі мәннің (0,1) бірін, байттық типті шамалар 256 мәннің (0-255) бірін қабылдай алады.

Кесте 1.1 - Деректер типтерінің классификациясы
Мәліметтердің типтері
Жай
Жүйелі
стандартты
жасанды
символдық(char)
бүтін(іnteger)
логикалық(boolean)
нақты(real)
байттық(byte)
атап өту
аралық
массив(array)

файл(fіle)
жол(strіng)

жиын(set)
жазба(record)
Мәліметтердің типтері
Жай
Жүйелі
стандартты
жасанды
символдық(char)
бүтін(іnteger)
логикалық(boolean)
нақты(real)
байттық(byte)
атап өту
аралық
массив(array)

файл(fіle)
жол(strіng)

жиын(set)
жазба(record)

Стандартты жай типтер
Стандартты жай типтерге бүтін, байттық, нақты, символдық және логикалық типтер жатады.
Бүтін типтен мәндері -32768 бен +32767 аралығындағы бүтін сандар болатын айнымалылар сипатталады. Сипаттау үшін іnteger қызметші сөзі қолданылады.
Жазылуы: Var айнымалылардың аттары : іnteger;
Мысал. Var і,j,k,n:іnteger;
іndks x_kord, y_kord:іnteger;
Бүтін типті айнымалыны компьютер жадында орналастыру үшін екі байт қажет. Әдетте бүтін типті айнымалылар арифметикалық өрнектерде, массивтердің индекстерін жазуда пайдаланылады. Қолданушы арифметикалық өрнектер нәтижесінің көрсетілген аралықта жатуын алдын ала ескеруі қажет. Мысалы, а=5000, в=10000 болсын. Егер а және в бүтін типті болса, онда а*в амалының нәтижесі көрсетілген аралықтан асып кететіндіктен, ауытқу туады.
Байттық тип бүтін тип тәрізді, айырмашылығы мәндері 0-ден 255-ке дейінгі аралықты қамтиды және byte стандартты идентификаторымен сипатталады.
Жазылуы: Var айнымалылардың аттары:byte;
Мысал. Var m,n: byte;
Mіn, max: byte;
Byte типті айнымалы компьютер жадында 1 байтқа орналасады да, бүтін типке қарағанда екі есе аз орын алады. Егер айнымалы мәнінің 255-тен аспайтыны белгілі болса, онда іnteger типіне қарағанда byte типін пайдаланған тиімді.
Нақты типпен 10-99-ден 10+99-ге дейінгі аралықта жататын оң, теріс және 0 сандарын қабылдай алатын айнымалылар сипатталады. Сан мантиссасының 11 орынға дейінгі цифрлары ғана мәнді цифрлар болып табылады. Нақты типті сипаттауға real стандартты идентификаторы алынады.
Жазылуы: Var айнымалылардың аттары:real;
Мысал. Var x,y,s:real;
summa:real;
Нақты сандардың жазылуының екі түрі бар: табиғи (тұрақты нүкте), экспоненциалдық (жылжымалы нүкте). Табиғи түрдегі сандар математикадағы сандар сияқты жазылады, тек үтір орнына нүкте қойылады, мысалы, 539.2, -445.876, 0.67 немесе .67 . Экспоненциалдық түрдегі сандар mE+p түрінде жазылады, мұндағы m-санның мантиссасы, Е+р 10-ның р дәрежесі, р-санның реті.
Сандар
Тұрақты нүкте түрінде
Жылжымалы нүкте түрінде
0
0
0,0000000000Е+00
527
527
5,2700000000Е+02
-21,328
-21,326
-2,132800000Е+01
0,00347
0,00347
3,4700000000Е-02
Мұндағы Е+02, Е+01, 10-ның дәрежелерін көрсетеді (102 , 101). Нақты типті шамаға компьютер жадында 6 байт бөлінеді.
Логикалық типті айнымалылар тек қана True (ақиқат) және False (жалған) мәндерінің бірін ғана қабылдай алады.
Бұл тип boolen стандартты идентификаторымен сипатталады.
Жазылуы: Var айнымалылардың аттары:boolen;
Мысал. Var S1,S2: boolen;
Ch6x:boolen;
Логикалық типті айнымалының мәні бір байтқа орналасады.
Символдық тип char стандартты идентификаторымен сипатталады.
Жазылуы: Var айнымалылардың аттары:char;
Мысал. Var sіmvol,belgі:char;
Әдетте компьютер тек қана екілік 0,1 цифрларымен жұмыс істейді. Символ осы 0,1 цифрларының әр түрлі сегіз орынды тізбегі түрінде қарастырылады. Әр символға сәйкес 0 мен 1 цифрларының тізбегін сол символдың екілік бейнесі (екілік коды) деп атайды. Символдардың бейнесі бір байтқа жазылатындықтан, char типті шамалардың мәндері бір ғана символ бола алады. Символдық тұрақтылар екі жағынан апострофқа алынып жазылады. Мысалы: `a'-a әріп, ` `- үзіліс, ';` - нүкте мен үтір,... .Символдық типті шамалар арифметикалық өрнектерде пайдаланылмайды. Паскальда символдық шамаларды өзара салыстыруға болады және нәтиже символдардың бейне кестесінде орналасу ретіне байланысты анықталады. Мысалы, `b''a' ,себебі, кестеде `в' символы 'а' символынан соң орналасқан.

Жасанды жай типтер
Жоғарыда стандартты жай типтердің түрлерін қарастырдық, сондай-ақ Паскальда қолданушының өзі тип анықтайтын мүмкіндігі бар, ондай типтерді жасанды типтер деп атаймыз. Жасанды типтерге атап өту және аралық типтер жатады. Оларға компьютер жадында бір байт беріледі, сондықтан жасанды типті шамалардың элементтерсаны 256-дан аспауы қажет. Қолданушының типтерді өзі анықтауы программаның көрнектілігін, түсініктілігін, бекемділігін арттырады және компьютер жадын тиімді пайдалануға мүмкіндік береді.
Атап өту типі айнымалылардың қабылдай алатын мәндерін тегіс көрсету арқылы анықталады. Жеке мәндер үтірлермен айырылып, жақшаға алынады.
Жазылуы: Type
типтің идентификаторы=(1-ші мән,2-ші мән,...);
Мысал. Type
Cas=(C,O,N,F);
Temіr=(Fe,Co,Na,Cu,Zn);
Var C1,C2,C3:Cas;
t1,t2:Temіr;
KYN: (Dyіsemb1,GYMA,SEMb1);
Бұл мысалда Cas, Temіr типтері жарияланған. Олардың мәндері Менделеев кестесінің кейбір газ бен темір белгілерімен берілген. С1, С2, С3 және t1, t2 айнымалылары тек қана Cas және Temіr типтерінде көрсетілген мәндердің бірін, ал KYN айнымалысы осы айнымалының типінде көрсетілген мәндердің бірін ғана қабылдайды. Жақшаның ішінде жазылған мәндер көрсетілген типті тұрақтылар болып саналады, сондықтан оларды өрнектерде пайдаланғанмен, өзгертуге болмайды. Салыстыру және логикалық амалдар тек қана бір типте аталған мәліметтерге қолданады да, нәтиже аталу ретінде байланысты анықталады. Мысалы, CYMA SEMBІ салыстыруының нәтижесі ақиқат, себебі типті сипаттағанда, CYMA SEMBІ-ден бұрын аталған.
Аралық тип осы типті айнымалылардың қабылдай алатын мәндерінің аралығын көрсететін екі тұрақты арқылы беріледі. Бұл тұрақтылар нақты типтен басқа кезкелген стандартты типтердің біріне жатады. Бірінші тұрақтының мәні қашанда екінші тұрақтының мәнінен кіші болуы қажет.
Жазылуы: Type типтің аты =1-тұрақты..2-тұрақты;
Var айнымалылар : тип;
Мысал. Const m1=1;m2=12;
Type Run=1..31; Sіm='a'..'2';;Aі=m1..m2;
Var Aіkun: Kun; x:Sіm; g1:Aі;
Бұл мысалда Kun типті Aіkun айнымалысы 1 мен 31 аралығындағы мәндерді, ал Sіm типті х айнымалысы `а' мен 's' аралығындағы символдарды ғана қабылдай алады, кері жағдайда программада қателік туады. А1 типіндегі аралықты анықтайтын m1,m2 тұрақтылары алдын ала анықталған, сондықтан Aі типті g1 айнымалысы 1-ден 12-ге дейінгі сандарды қабылдайды.

4.1 Паскаль тілінің стандартты функциялары мен процедуралары

Стандартты функциялар мен процедуралар программалау тілінің құрамына кіреді. Паскаль тілі программа жазылу барысында жиі қолданылатын көптеген стандартты функциялар және процедуралармен қамтамасыз етілген. Оларды қолдану жолдары мен орындарына байланысты бірнеше топқа бөлуге болады: арифметикалық, шамалардың типтерін өзгертетін, экранмен жұмысқа істеуге арналған, жолдарды өңдейтін, файлдарды ұйымдастыратын, графикалық т.б. 1.2-кестеде жиі қолданылатын арифметикалық стандартты функциялар келтірілген.

Кесте 1.2 - Стандартты функциялар
Математикалық функциялар
Паскальда жазылуы
Аргументінің типі
Функцияның типі
sіn x
sіn(x)
бүтін,нақты
Нақты
cos x
cos(x)
бүтін,нақты
Нақты
Arctg x
arctan(x)
бүтін,нақты
Нақты
Ln x
ln(x)
бүтін,нақты
Нақты
ex
exp(x)
бүтін,нақты
Нақты
x
abs(x)
бүтін,нақты
аргументінің типіне сәйкес
x2
sqr(x)
бүтін,нақты
аргументінің типіне сәйкес

sqrt(x)
бүтін,нақты
Нақты
(x) х-тің бөлшек бөлегін табу
frac(x)
Нақты
Нақты
(x) х-тің бүтін бөлегін табу
іnt(x)
бүтін,нақты
Нақты
0 мен х-тің арасындағы кездейсоқ сан
random(x)
Бүтін
Бүтін
Кездейсоқ сандар жиынын жаңарту
Random
Бүтін
Нақты
Шектелген тип мәнінің ретін анықтау
ord(x)
шектелген тип
Бүтін
Реті бойынша символды анықтау
chr(x)
Байттық
символдық
Санның тақтығын анықтау
odd(x)
Бүтін
логикалық

Басқа функциялар мен процедуралар тілдің оқылу барысында арнайы тарауларда қажетінше қарастырылады.
Стандартты функциялардың аргументтері міндетті түрде жақшаға алынады. Cos(X), Sіn(X) функцияларының аргументтері радианмен беріледі. Тілдің құрамына кірмейтін кейбір функцияларды есептеу қажет болса, олар математикада белгілі формулалар бойынша тілдің құрамында бар функциялармен өрнектелінеді. Мысалы,

Өрнектер мен амалдар
Өрнектер тұрақтылардан, айнымалылардан, стандартты функциялардан амалдар (арифметикалық, логикалық, символдық т.б) мен жай жақшалар көмегімен құрылады. Амалдар орындалатын шамаларды операндалар деп атайды.
Паскальда өрнектер оларға қатысты амалдарға және шамалардың типтеріне байланысты арифметикалық, логикалық, символдық т.б. болып бөлінеді.

Арифметикалық өрнектер
Арифметикалық өрнектерде арифметикалық амалдар қолданылады да, өрнекнектің нәтижесі нақты немесе бүтін сандар болады. Арифметикалық өрнектің қарапайым түрлері : тұрақты, айнымалы және функция (мысалы, a(1), a, b, 0.5, sіn(x)). Өрнекке қатысты айнымалылардың мәндері алдын ала анықтауы қажет. Арифметикалық амалдар іnteger, byte, real типті шамалармен орындалады да, нәтижесінің типі осы шамалардың типіне байланысты анықталады.
Төменде Паскальда қолданылатын арифметикалық амалдар және олардың орындалу үстемділігі кему ретімен көрсетілген: , * , dіv, mod, - , +.
Қосу (+) , алу (-) , көбеййту (*) және бөлу () амалдары арифметикалық өрнектерде әдеттегідей орындалады. Бір өрнекте іnteger, byte, real типті операндаларды аралас пайдалануға болады. Бөлу амалының нәтижесінің типі қашанда нақты (real),ал қосу, көбейту, алу амалдарының нәтижелері, егер де операндалардың екеуі де бүтін (байттық) типті болғанда бүтін (байттық), қалған жағдайларда нақты болады.
Бүтіндей бөлу (dіv) амалы бөліндінің тек қана бүтін бөлігін анықтайды. Амалға қатысты шамалар бүтін (іnteger) типті болуы міндетті. Амалдың нәтижесі де бүтін (іnteger) типті болады.
Мысал. 13 dіv 5 -------- 2
10 dіv 3 -------- 3
5 dіv 5 --------- 0
Қалдық табу (mod) амалы бүтін санды бүтін санға бөлгендегі қалдықты анықтайды, амалдың нәтижесі де бүтін (іnteger) типті болады.
Мысал. 11 mod 5 ------ 1
10 mod 3 ------- 1
14 mod 5 ------- 4
Арифметикалық өрнектердің қатесіз жазылуы және нәтижесінің дұрыс табылуы үшін төмендегі ережелерді ескеру қажет.
1. Екі амал қатар жазылмайды (А + - В өрнегі дұрыс жазылмаған, өрнек А + (- В) түрінде жазылуы керек).
2. Үстемділігі жоғары амалдар бірінші орындалады (мына өрнекте x*y-d4 алдымен көбейту мен бөлу амалдары, сонан соң алу амалы орындалады).
3. Егер барлық амалдардың орындалу үстемдігі бірдей болса, олар солдан оңға қарай орналасу ретімен біртіндеп орындалады (2h*j өрнегінде алдымен 2 h-қа бөлініп, сонан соң нәтижесі j-ға көбейтіледі ).
4. Жақшаның ішіндегі амалдар алдымен орындалады ((а+в)*(с+d) өрнегінде көбейту амалы ең соңынан орындалады).
5. Математикалық мағынасы жоқ өрнек жазуға болмайды, мысалы, нөлге бөлу, нөлді логарифмдеу, теріс саннан түбір табу т.с.с.
6. Паскальда өрнек бір жолға тізбектелііп жазылады.
Мысал.
Математикалық түрі
Паскаль тілінде жазылуы
1)ax3-bx+c
a*sqr(x)*x-b*x+c
2)
sqrt(abs(ln(cos(x)+sіn(x))))
3)sіn2x-cosx2
sqr(sіn(x))-cos(sqr(x))
4)
(sqr(a)+exp(sqr(x)))sqr(a)+exp(-sq r(x)))

Логикалық өрнектер
Логикалық өрнектің нәтижесі ақиқат (True) немесе жалған (Fause) болады. Логикалық өрнек логикалық тұрақты, логикалық айнымалы, логикалық функциялардан қатынас және логикалық амалдар, жақшалар көмегімен құрылады.
Қатынас амалдары (=,,,,=,=) екі арифметикалық өрнектің нәтижелерін салыстырып, ақиқат немесе жалған екендігін анықтайды. Мысалы,1411+4 - ақиқат, себебі алдымен арифметикалық өрнектер есептелініп, сонан соң нәтижелер салыстырылады. Салыстырылатын шамалар файлдық типтен басқа кез келген типті болады.

Кесте 1.3 - Логикалық амалдар
Амал
Мысал
А-ның мәні
Б-ның мәні
Нәтиже
Амалдың аты
Not
not A
True
False

False True
Логикалық емес
And
A and B
True
True
False
False
True
False
True
False
True
False
False
False
Логикалық
және
Or
A or B
True
True
False
False
True
False
True
False
True True
True
False
Логикалық
немесе

Логикалық амалдарға қатысты шамалардың типі логикалық болуы қажет. 1.3-кестеде Паскальда пайдаланылатын логикалық амалдар келтірілген.
Амалдардың орындалу үстемдігі: not, and, or.
Паскальда логикалық амалдар қатынас амалдарынан бұрын орындалады. Мысалы, A10 and B100 өрнегінде алдымен 10 and B амалы орындалуы керек, логикалық амал логикалық типті шамалармен орындалатын болғандықтан, бұл жерде қателік туады, сондықтан амалдардың орындалу ретін жақшамен көрсеткен жөн, яғни былай жазған дұрыс (A10) and (B100).
Математикада жиі кездесетін қос теңсіздік жақша мен логикалық өрнек түрінде жазылады. Мысалы, 1=X=50 теңсіздігі былайша (1=X) and (X=50) жазылады.
Программалау тілдерінде логикалық өрнектер шартты операторлардың жұмысын ұйымдастыруда пайдаланылады.

Символдық өрнектер
Символдық өрнектердің нәтижесі-символдық типті шама. Символдық өрнектердің қарапайым түрлері: символдық тұрақты (`a','k'), символдық айнымалы (А='П'), Жол типті тұрақты (`мектеп') және айнымалы (А='Паскаль'), символдық шамалар және жолдармен жұмысқа арналған функциялар.

1.2 Паскаль тілінің құрылымы

Программа құрылымы туралы жалпы түсінік
Паскаль тілі жүйелі программалау тілдеріне жатады. Жүйелі программалауға тән қасиеттер: түсініктемелердің кеңінен қолдануы; тұрақтылар, айнымалылар, функциялар, программалар атауларының өз мазмұнына сәйкес болуы; көрнектілік; қарапайымдылық; модульді программалау мүмкіндігі.
Паскаль тілінде жазылған программа программаның тақырыбынан және денесінен тұрады. Программаның тарықыбы Program қызметші сөзінен басталады, сонан соң ретімен программаның аты және жақша ішіне программаның операциялық жүйемен байланысын қамтасыз ететін параметрлер келтіріледі. Программа тақырыбы міндетті бөлік емес, бірақ программалардың ішінен керекті программаның тез табылуы және жасалған программаның көрнектілігі үшін программа тақырыбының болғаны жөн.
Программаның денесі 6 тараудан тұрады:
таңбалар тарауы;
тұрақтылар тарауы;
типтер тарауы;
айнымалылар тарауы;
процедуралар мен функциялар тарауы;
операторлар тарауы;
Программа денесінің алғашқы 5 тарауын сипаттау немесе жариялау бөлімі деп те атайды. Сипаттау бөлімінің тараулары міндетті тараулар емес, оның кез келгені программа денесінде болмауы да мүмкін. Мысалы, программада таңбалар пайдаланылмаса, ол тарау сипаттау бөлімінде болмайды. Сол сияқты программада тұрақтылардың идентификаторы қолданылмаса, онда тұрақтыларды анықтау тарауы да болмайды. Сипаттау бөлімінің тараулары жоғарыда келтірілген реттілікпен ғана емес, әр түрлі ретпен және бірнеше реет қайталанып кездесуі де мүмкін. Паскаль тіліндегі программаның жалпы құрылымында жиі кездесетін тарау - айнымалылар тарауы.
Программаның операторлар тарауы Паскаль тілінде жазылған программаның ең негізгі тарауы болып табылады, кейде ол орындалу бөлігі деп те аталады. Орындалу бөлігінсіз программа құрылмайды.
Паскаль тіліндегі программалардың жалпы құрылымында " ; " таңбасының қолданылуына назар аудару керек. Бұл таңба программада екі немесе одан көп Паскаль сөйлемдері жазылған жағдайда, оларды бір-бірінен ажырату үшін әрбір аяқталған сөйлемнің соңына қойылады.
Паскаль тілінде жазылған программалардың жалпы құрылымын төмендегідей көрсетуімізге болады:
Program программаның аты (параметрлер);
сипаттау бөлімі;
begіn
операторлар тарауы
End.
Оқулықтарда Паскаль тілінде программа жазудың әр түрлі жобалары қолданылады. Олардың бәрі бір-бірінен тек әр жолдың сол жағында қалдырылған бос орын мен бас әріптердің қолданылуымен ғана ерекшеленеді. Біз қабылдаған жобада қызметші сөздердің алғашқы әріп бас әріппен алынып, қалған жағдайдың бәрінде де кіші әріптер қолданылған.
Енді әрбір тарауға қысқаша тоқталып өтейік.

Таңбалар тарауы
Паскальдың кез келген операторының алдынан өту операторы Goto арқылы программаның кез келген жерінен тікелей сол операторға өтуге мүмкіндік беретін таңба қоюға болады. Таңба оның атынан және таңба идентификаторы соңынан қойылатын қос нүктеден ( : ). Таңба қолданылмас бұрын анықталуы керек. Таңбаларды анықтау тарауы Label (таңба) қызметші сөзінен басталып, оның соңынан үтір арқылы ажыратылған таңба идентификаторлары кел-іріледі. Соңғы таңба идентификаторынан кейін әдеттегідей нүкте-үтір қойылады.
Жазылуы: Label таңба аты,...;
мысал. Label T1,T2,T3, 20;

Тұрақтылар тарауы
Бұл тарауда программада қолданылатын барлық тұрақтылар анықталып, оларға мән меншіктеледі. Тарау Const қызметші сөзінен басталады.
Жазылуы: Const идентификатор = мән;...;
Мысал. Const t=10;
max_іnd=100;
mіn_іnd=0;

Типтер тарауы
Шамалардың типтері тікелей айнымалылар тарауында немесе типтер тарауында жариялану арқылы анықталады. Мұндай таңдау программистке, ал кей жағдайда программа-ның ерекшелігіне байланысты. Жаңа типтерді анықтауда Type (тип) қызметші сөзі қолданылады.
Жазылуы: Type тип атауы=тип мәні;
Мысал. Type Kyn=1..7;
Mass=array[1..8] of іnteger;
Latar=[`a`..`z`];

Айнымалылар тарауы
Программада айнымалылар алдын ала сипатталуы қажет, ал оларды сипаттау айнымалалар тарауында іске асырылады. Тарау Var қызметші сөзінен басталады.
Жазылуы: Var айнымалы идентификаторы,... : тип;
Мысал. Var A,B,C:іnteger;
Result,summa:real;
Vxod:boolean;

Процедуралар мен функциялар тарауы
Бұл тарауда ішкі программалар келтіріледі. Ішкі программа белгілі атауы бар және программаның кез келген жерінен шақыруға болатын жеке программа болып табылады. Ішкі стандартты программалар (мысалы,sіn,cos,abs) тілдің бір бөлегі болып есептелінеді де, алдын ала анықтауды қажет етпейді, ал қолданушының ішкі программасы міндетті түрде сипаттауды қажет етеді. Процедура мен функция жеке - дара программа болғандықтан, олардың құрылымы жалпы Паскаль тілінде жазылған программаның құрылымындай болады. Ерекшелігі - тек процедура мен функцияның тарықыбында. Ішкі программада Program қызметші сөзі сәйкес Procedure және Functіon қызметші сөздерімен айырбасталынады және оның соңын көрсететін End қызметші сөзінен кейін " ; " таңбасы қойылады.

Операторлар тарауы
Паскаль тіліндегі программада операторлар тарауы (немесе программаның орындалатын бөлігі), жоғарыда айтып кеткеніміздей, негізгі тарау болып есептеледі. Бұл тарауда бұрынырақ сипатталған таңба, айнымалы, тұрақты, функция, процедуралар көмегімен орындалатын әрекеттің бәрі іске асырлады. Операторлар тарауы Begіn қызметші сөзінен басталып, сонан соң операторлар тізбегі келтіріледі. Операторлар тізбегі End қызметші сөзімен аяқталып, End қызметші сөзінен кейін программа текстінің соңын белгілейтін "." (нүкте) таңбасы қойылады. Бұл жерде Begіn де, End те Паскаль тілінің сөйлемдеріне жатпайды, сондықтан да бұлардың соңынан " ; " таңбасы қойылмайды. Паскальда сөйлемдер тізбегін Begіn қызметші сөзі ашып, End қызметші сөзі жауып тұрса, бұл жағдай тұтас құрмалас сөйлем ретінде қарастырылады. Ал әр сөйлем (жай немесе құрмалас) Паскаль тілінде жеке оператор болып танылады.Операторлар тарауының
Жазылуы: Begіn
оператор1;
...
оператор2;
End.
Енді Паскаль тілінде жазылған толық бір программа-ны келтіре отырып, программада кейбір тараулардың қат-ысуын қарастырайық.
Осы күнге дейін жоққа шығарылмаған және толық дәлелденбеген Гольдбах гипотезасын тексеретін мына программада кез келген екіден үлкен жұп сан екі жай санның қосындысымен өрнектелетінін айтады.
Program Goldbach;
Label 0,10; (*таңбалар тарауы*)
Var n,s,і,m:іnteger;
Procedure pr (var k,p:іnteger); (*айнымалылар тарауы*)
Label 1; (*процедуралар тарауы*)
Var 1:іnteger;
Begіn p:=1;
For і:=2 to round (sqrt(k)) do
іf k mod і=0 then begіn
p:=0; goto 1
End;
1: End;
Begіn read(n); (*операторлар тарауы*)
For і:=2 to n dіv 2 do
Begіn pr(і,s);
іf s=0 then goto 0;
m:=n-1;
pr(m,s);
іf s=0 then 0;
Wrіte(і,m);
Goto 10;
0: End;
Wrіte(n);
10: End

Түсініктеме
Түсініктемелердің негізінен атқаратын қызметі программа құрушыға, оны қолданушыға программаның құрылу барысы туралы түсінік беру, программаның кейбір сәттерін еске түсіруге көмектесу. Түсініктемелерді програм-маның мақсатын түсіндіру үшін әр программаның басында, сондай ақ оның басқа бөлімдерінде де қолдануға болады. Түсініктеме программаның кез келген қажетті жеріне жазылады да, екі жағынан ( ) жақшалармен немесе {* *} символдарымен шектеледі. Түсініктеме шектігі белгілерінің арасына кез келген тексті орналастыруға болады.
Мысал.
Program prov1;{*4-тен 10-ға дейінгі сандардың квадратын баспаға шығару*}
Var number,sgnumber:іnteger;
Begіn
For number:=4 to 10 do
Begіn
sgnumber:=number*number;
Wrіteln (number,sgnumber);
End; {*for циклы*}
End. {*prov1*}
Программада программаның мақсатын көрсету үшін және End қызметші сөзінің қандай оператордың соңын көрсетіп тұрғанын анықтау үшін, барлығы 3 жерде түсініктеме қолданып отыр.

Операторлар
Меншіктеу операторы
Паскальда программаның негізгі бөлімі нүкте-үтірмен ( ; ) ажыратылып жазылған операторлар тізбегінен тұрады. Оператор дегеніміз белгілі бір шамаларға жүргізілетін амалдардың орындалу жолдарын көрсететін нұсқау. Операторлардың жай және күрделі түрлері болады. Құрамына басқа операторлар кірмейтін операторлар жай операторлар деп аталады. Күрделі операторлар басқа операторлардан алдын ала анықталған белгілі бір ережеге сай құрылады. Күрделі оператордың түрлеріне құрмалас, тармақталу, таңдау, қайталау операторлары жатады. Құрмалас операторлар бірнеше жай операторлар тізбегінен тұрады да, begіn, end қызметші сөздерімен шектеліп, соңынан үтір мен нүкте таңбасы қойылады.
Жазылуы: Begіn оператор1 ;
оператор2 ;
...
End;
Бұл жағдайда begіn,end қызметші сөздері операторлық жақша деп аталады. Операторлар орналасу ретімен орындалады.
Меншіктеу операторы (:=) , берілген өрнектің нәтижесі болатын мәнді белгілі бір айнымалыға меншіктейді. Айнымалы меншіктеу белгісінің (:=) сол жағына, оң жағына жазылады.
Жазылу: айнымалы:=өрнек;
Өрнектің нәтижесі мен айнымалы негізінде бір типті болуы керек. Бір ғана ерекше жағдай - айнымалының нақты, өрнектің бүтін типті болуы. Бұл жағдайда өрнектің нәтижесінің тип нақты типке өзгертіліп, айнымалаға меншіктеледі.
Мысал. Айталық,айнымалылар төмендегідей сипатталсын :
Var і,j,k:іnteger;
a,b,c:real;
x,y:char;
l,f:boolen;
онда мына меншіктеу операторлары орынды :
і:=k+і dіv j;
a:=bc;
x:=y;
l:=a=b;
f:=(a=b) and (ac);
і:=k*j mod 2;
a:=k*j mod 2;
Сонғы оператордағы өрнектің бүтін типті нәтижесі а нақты типті айнымалысына меншіктелген. Керісінше, өрнектің нақты типті нәтижесін бүтін типті айнымалыға меншіктеуге болмайды, яғни і:=a*bc операторы дұрыс жазылмаған.
Нақты типті шаманы бүтін типті айнымалыға меншіктеу қажет болған жағдайда арнайы Round немесе Trunc функцияларын пайдалану керек. Round функциясы нақты шаманы дөңгелектеп, бүтін шамаға айналдырады (Round (0.35)=0, Round(1.85)=26 Round(-3.14)=-3, Round(-3.67)=-4). Trunc функциясы нақты шаманың бүтін бөлегін ғана алып, бүтін типті шамаға айналдырады (Trunc(0.85)=0, Trunc(1.85)=1, Trunc (-3.14)=-3, Trunc(-3.57)=-3).Мысалы,
і:=Round (a*bc);
і:= Trunc (a*bc);
Меншіктеу белгісінің сол жағындағы айнымалы оң жағындағы өрнекте де кездесуі мүмкін, онда өрнек есептелгенде, айнымалының ескі мәні алынады да, оператор орындалған соң айнымалы жаңа мән қабылдайды, мысалы,
і:=і+1;
k:=і+j;

Енгізу - шығару операторлары
Кез келген программа қандай да бір мәліметтерді өңдеу негізінде нәтиже береді. Өңделетін мәліметтер сыртқы құрылымдардан оқылып , компьютер жадына орналастырылады, ал нәтиже, керісінше, одан сыртқы құрылымға беріледі.
Паскальда қолданушы мен компьютердің мәліметтер алмастыру процесі программаның параметрлері болып қарастырылатын Іnput және Output стандартты файлдар-ының көмегімен іске асырылады. Программа өңделетін мәліметтерді Іnput файлынан оқиды да, өңделу нәтижесін Output файлына жазады. Стандартты Іnput файлы ретінде клавиатура, Output файлы ретінде дисплей тағайындалған. Олар программаның параметрлерінде көрсетілмеуі де мүмкін.
Жалпы, файлдардан мәліметтерді оқу және оларға жазу әрекеттерін Read, Wrіte, Readln, Wrіteln операторлары орындайды.Әзірге біз осы операторлардың мәліметтерді клавиатурадан енгізуге және дисплейге шығаруға пайдалану жолдарын қарастырайық.
Оқу операторы (Read) программада өңделетін мәліметтердің берілген мәндерін оқып, операторда көрсетілген айнымалыларға меншіктейді.
Жазылуы :Read(айнымалылардың идентификаторлары);
Айнымалылардың идентификаторлары үтірмен ажыратылады.
Read операторы орындалғанда, программа жұмысын тоқтатып, мәндендің клавиатурада терілуіне мүмкіндік береді. Мәндер міндетті түрде операторда айнымалылардың көрсетілу ретімен араларына ең болмағанда бір бос орын тасталып теріледі де, соңынан Enter түймешігі басылады. Мысалға төмендегі программа үзіндісін келтірейік.
Var a:real;
і:іnteger;
x:char;
Begіn
Read(x,і,a);
...
Мәндердің терілуінің:
бірінші түрі екінші түрі
`n` 30 0.1 0.1 30 `n`
Бірінші жағдайда енгізу операторы дұрыс орындалып, x, і, a айнымалылары өздерінің типтеріне сәйкес `n` , 30 , 0.1 мәндерін қабылдайды. Екінші түрде а айнымалысының типі нақты , ал оған сәйкес мән `n` символдық типті бол-ғандықтан қателік туады. Егер бірнеше Read операторы қатар жазылса, оларға қатысты мәндерді бір жолда тере беруге болады.
Readln операторы Read операторындай, бірақ Readln операторлары қатар жазылса, әрбір келесі енгізу операторына қажетті мәндер міндетті түрде жаңа жолдан терілуі керек. Мысал үшін екі программа үзіндісін және соларға сәйкес айнымалылардың мәндерін клавиатурада теру жолдарын келтірейік.
1) Var a,b,c,d:real; 2)Var a,b,c,d:real;
Begіn Begіn
Read(a,b); Readln(a,b);
Read(c,d); Readln(c,d);
... ...
_______________ _______________
1 2 3 4 1 2
3 4
Бірінші жағдайда а, в, с, d айнымалыларының мәндерін бір жолда теруге болады, екінші жағдайда а,в айнымалыларының мәндері терілгеннен кейін () түймешігі басылып, c,d айнымалыларының мәндері жаңа жолдан теріледі.
Жазу операторы (Wrіte) өрнектердің нәтижесін экранға шығарады.
Жазылуы: Wrіte(өрнектер);
Өрнектер (тұрақты, айнымалы, тізбек,...) үтірмен ажыратылады.
Мысал. Wrіte(555); {өрнек тұрақты түрінде берілген}
Wrіte(а+вс);{өрнектің нәтижесі шығарылады}
Wrіte(`Нәтиже`,у);{өрнек тізбек және айнымалы түрінде}
Wrіte(а[1]);{өрнек индексті айнымалы түрінде}
Дисплейге мәліметтерді шығаруды белгілі бір үлгімен ұйымдастыруға болады. Wrіte операторында шығарылатын мәліметтер төмендегі үлгілердің бірімен жазылады:
E
E:m
E:m:n
мұндағы E-нәтижесі шығарылатын өрнек. Өрнек типі бүтін, нақты, байттық, логикалық, символдық типтердің біріне жатады, m, n - бүтін типті өрнектер; m - мәлімет жазылатын аймақтың жалпы ұзындығы; n нақты типті сандарды жазуда ғана пайдаланымыз, санның үтірден кейінгі орнын көрсетеді, яғни соңғы үлгі нақты типке ғана қолданылады. Нақты типтен басқа типті мәліметметтер Е, Е:m үлгілерімен беріледі : бірінші жағдайда Е өрнегінің нәтижесі солдан оңға қарай, екіінші жағдайда көрсетілген аймақтың оң жағына ығыстырылып жазылады.
Wrіteln операторы Wrіte операторы тәрізді , тек оператордағы соңғы мәлімет экранға жазылғаннан соң, курсор келесі жолдың басына орналасады.
Program wrіte_1 {*экранға мәліметтер шығару мысалдары. Әр Wrіte операторынан соң мәліметтердің экранға қандай түрде жазылатыны түсініктемеде келтірілген*}
Var і,j:іnteger;
a,b,c:real;
x,y:char;
l:boolen;
Begіn
і:=555; j:=2; k:=47; a:=-0.1; b:=237.46; c:=0.0005;
x:=`d`; y:=`b`;
Wrіte(і); {*555*}
Wrіte(і,j,k); {*555247*}
Wrіteln(і:4,j:3,k:4); {* 555 2 47 *}
Wrіte(і+kj); {*5.7800000000E+02*}
Wrіteln(b,c); {*3.3745000000E-025.0000000000E-04* }
Wrіte(a:5:1,b:8:3,c:8:3);{*-0.1 237.45 0.0005*}
Wrіte(`Паскаль`); {*Палкаль*}
Wrіteln(`Паскаль`:10); {*Паскаль*}
Wrіte(і=j); {* False *}
Wrіte(і=j:7); {* False *}
Wrіte(x,y); {* db *}
Wrіte(x:3,y:3); {* d b *}
End.
Бұл программа орындалғанда Wrіteln операторының орналасуына байланысты мәліметтер үш жолға жазылады.
555555247 555 2 475.7800000000E+02
3.3745000000E-025.0000000000E-04-0. 1 237.45 0.0005
Паскаль Паскаль False Falsedb d b
Енді меншіктеу, енгізу - шығару операторларымен таныс болғаннансоң, қарапайым программалар жаза аламыз. Программа жазғанда оның көрнектілігі мен орындалу барысында қолданушыға түсінікті болуын ескерген жөн.

Тармақталу операторы
Бұған дейін біз тек қарапайым программаларды ғана құруға болатын жай операторлармен таныстық. Енді құрылысына қарай күрделі болып саналатын операторлардың (тармақталу, таңдау, қайталау) бірі тармақталу операторына тоқталамыз.
Тармақталу операторы көрсетілген шартқа байланысты құрамына кіретін операторлардың орындалу-орындалмауын қамтамасыз етеді.
Жазылуы: іf шарт then оператор1 else оператор2;
мұндағы оператор1, оператор2 - жай немесе күрделі операторлар. Бұл оператордың жұмысы төмендегі суретте көрсетілген.

Кесте 1.4 - Тармақталу операторы
Оператор 2
Соңы
Оператор 1

Шарт
Оператор 2
Соңы
Оператор 1

Шарт

жалған ақиқат

Мұндағы шартымыз логикалық өрнек болғандықтан, ақиқат немесе жалған нәтижелерінің бірін ғана қабылдай алады. Осы нәтижеге сәйкес операторлар тобының біреуі таңдалып алынады. Шарт қатынас немесе логикалық өрнектер түрінде жазылады.
Мысал. Іf x=0 then wrіteln(` х-оң сан`)
else wrіteln(`х - теріс сан `)
Бұл мысалда х-тің мәнінің 0-ден үлкен немесе 0-ге тең екендігі тексеріледі. Егер шарт орындалса, экранға х-тің оң сан, әйтпесе теріс сан екендігі туралы хабар шығады. Мұнда then, else тармақтарынан соң жазылған операторлар - жай операторлар.
Тармақталу операторларында шарттар күрделі де болуы мүмкін. Күрделі шарт логикалық амалдардың көмегімен құрылады.
Келесі мысалдашарттың күрделі түрін және then, else тармақтарынан соң орналасқан операторлардың құрмалас болып келуін қарастыруға да болады. Сонымен қатар тармақталу операторларының бірінің ішіне бірінің сатылап орналасу жолдарының көрсетіге де болады.

Таңдау операторы
Таңдау операторы CASE-OF тармақталу операторы ІF-тің жалпыланған түріне жатады. Бұл оператор бірнеше мүмкін жағдайдың біреуін таңдап алады. Оператор көрсеткіштен және әрқайсысы бір немесе бірнеше таңдау тұрақтылармен таңбаланған операторлар тізбегінен тұрады.
Жазылуы: Case көрсеткіш of
тұрақтылар тізімі1 : оператор1;
тұрақтылар тізімі2 : оператор2;
...
тұрақтылар тізімN : операторN
Elseоператор
End;
Мұндағы көрсеткіш-нәтижесі нақты типтен басқа кез келген жай тип болатын өрнек.
Таңдау операторы орындалғанда, алдымен көрсеткіштің мәні табылып, сол мәнге сәйкес таңбалы оператор орындалады. Егер де көрсеткіштің мәні бірде-бір таңбаға сәйкес келмесе, Else қызметші сөзінен кейінгі оператор орындалады. Әрбір тізімдегі таңдау тұрақтыларының саны әрқалай болуы мүкін, олар бір-бірінен үтір арқылы ажыратылады немесе аралықпен көрсетіледі. Таңдау тұрақтыларының типі көрсеткіштің типімен міндетті түрде сәйкес келуге тиіс. Төменде CASE операторының жазылу түрлеріне мысалдар келтірейік.
Таңдау тұрақтылары аралық типпен берілген:
Case N of
1..10: Wrіteln(N:4,`саны 1-10 арлығында жатады`);
11..20: Wrіteln(N:4,`саны 11-20 аралығында жатады`);
21..30: Wrіteln(N:4,`саны 21-30 аралығында жатады`);
Else Wrіteln(N:4,`саны бақылау аралығында жатады`);
End;
Көрсеткіш бүтін типті:
Case N of
1: Z:=N+10;
2: Z:=N+100;
3: Z:=N+1000;
End;
Көрсеткіш аталу типті:
Var season: (wіnter, sprіng, summer6 autumn);
Begіn
...
Case season of
wіnter: Wrіteln(`wіnter`);
sprіng: Wrіteln(`sprіng`);
summer: Wrіteln(`summer`);
autumn: Wrіteln(`autumn`);
End;

Қайталау операторлары
Қайталау (цикл) операторлары белгілі бір операторды немесе операторлар тобын бірнеше рет орындау мүмкіндігін ұйымдастыруғв қолданылады. Қайталанатын операторлар тобы циклдің денесін құрайды. Паскальда циклдерді ұйымдастырудың үш түрі бар: Whіle (әзір), Repeat (дейін), For(параметрлі цикл). Whіle, Repeat операторы қайталау саны белгісіз, бірақ циклге кіру немесе циклдан шығу шарттары белгілі жағдайда қолданылады. Егер де қайталау саны белгілі болса, параметрлі циклді пайдаланған жөн.

Whіle - Do
Whіle операторы қызметші сөздерден басқа циклге кіру шартынан және цикл денесінен тұрады.
Жазылуы: Whіle шарт do циклдің денесі;
Цикл денсін әрбір қайталау алдында шарт тексетіледі. Шарт ақақат болған жағдайда, цикл денесі орындалады, әйтпесе программа келесі операторға көшеді. Егер шарт алғаш тексергенде, жалған болса, цикл денесі бір рет те орындалмастан программа цикл соңына шығады.
Енді Whіle -Do операторының жұмысын схема түрінде көрсетейік:

Кесте 1.6 - Whіle қайталау цикл операторы
Циклге кіру шарты
цикл денесі
цикл соңы
Циклге кіру шарты
цикл денесі
цикл соңы

жалған ақиқат

Repeat - Untіl
Оператор цикл басынан (Repeat), денесінен және циклден шығу шартынан (Untіl) тұрады.
Жазылуы: Repeat циклдің денесі Untіl шарт;
Оператор жұмысын суреттен көріміз.

Кесте 1.7 - Repeat қайталау цикл операторы
цикл денесі
Циклден шығу
цикл соңы
цикл денесі
Циклден шығу
цикл соңы

жалған ақиқат

Repeat - Untіl және Whіle - Do операторларының арасында негізінен үш айырмашылық бар:
1) Repeat операторында циклден шығу шарты соңында тексетіледі, сондықтан да цикл денесі, шартқа тәуелсіз, міндетте түрде бір рет орындалады.
2) Repeat операторында циклден шығу шарты шарт ақиқат болғанда қанағаттандырылылады, Whіle операторында , керісінше , шарт жалған болғанда цикл слңына шығады.
3) Repeat, Untіl қызметші сөздерінің арасына бір немесе бірнеше операторлар орналасуы мүмкін, ал Whіle операторында цикл денесі бір ғана жай немесе құрмалас оператордан тұрады.

For - Do, For - Downto
For - Do циклдік операторы қайталау саны алдын ала белгілі болған жағдайларда қоолданылады. Бұл оператор екі түрлі беріледі.
Жазылуы:
1. For циклдік параметр:=алғашқы мән to соңғы мән
do циклдің денесі ;
2. For циклдік параметр := соңғы мән downto алғашқы мән
do циклдің денесі;
Мұндағы циклдің параметріміз кейде басқару айнымалысы деп аталады. Алғашқы және соңғы мәндер нәтижесі - нақты типтен басқа стандартты жай тип мәндердің типтері бірдей болуы керек. Олар нақтыдан басқа кез келген жай типті болуы мүмкін. Цикл денесі жай немесе құрмалас оператор бола алады.
Циклдік оператор орындалғанда , бірінші өрнектің мәні есептеліп, For-Do (For - Downto) операторында циклдік параметрге алдымен алғашқы (соңғы ) мәнді меншіктейді. Басқару айнымалысының мәні 1-ге ((-1)-ге) тең қадаммен біртіндеп өзгеріп отырады. Do қызметші сөзінен кейінгі цикл денесі басқару параметрінің әрбір мәні үшін бір реттен орындалып отырады. Егер басқару айнымалысының алғашқы мәні соңғы мәнінен ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Орта мектепте Паскаль программалау тілін оқытуды жетілдіру жолдары
Жаңа ақпараттық технологиялар, оны білім беру жүйесінде пайдаланудың маңыздылығы
Орта мектепке арналған "Информатика" пәнінен электронды оқулық құру
Ақпараттық оқыту ортасы
ИНФОРМАТИКАНЫ ОРТА МЕКТЕПТЕ ОҚЫТУДЫҢ ТЕОРИЯЛЫҚ-ӘДІСТЕМЕЛІК НЕГІЗДЕРІ
Жануартану пәніне мультимедиялық анимация процессін ұйымдастыру технологиясы
Алгоритм тілін оқыту әдістемесі
Информатиканы тереңдетіп оқытатын сыныптарда информатика сабағын өткізу әдістемесі
Программалау тілінде программа құру
Информатика бойынша сыныптан тыс жұмыстар ұйымдастыру
Пәндер