Информатика пәнінен лекция тезистері



Алгоритмдеу негіздері. Алгоритмнің қасиеттері. Алгоритмді жазу тәсілдері.
2 . лекция. Тақырыбы: Информация ѳлшемі. Алгоритм ұғымын нақтылау.
3 . лекция. Тақырыбы: Паскаль тілінде программалау. Программалаудың элементтері.
4 . лекция. Тақырыбы: Паскаль тіліндегі программаның құрылымы.
5 . лекция. Тақырыбы: Мәліметтердің түрі, олардың классификациясы.
6 . лекция. Тақырыбы: Паскаль тілінің операторлары.
7 . лекция. Тақырыбы: Паскаль тіліндегі операторлар. Қайталау операторы.
8 . лекция. Тақырыбы: Массивтерді пайдалану.
9 . лекция. Тақырыбы: Ішкі программалар
10 . лекция. Тақырыбы: Ішкі программалар
11 . лекция. Тақырыбы: Жолдық деректер.
12. лекция. Тақырыбы: Жиын.
13. лекция. Тақырыбы: Жазбалар.
14. лекция. Тақырыбы: Файлдар.
15. лекция. Тақырыбы: Стандартты модульдерді қолдану.
ЭЕМ-ді пайдалану істерін қарастырмас бұрын оның жұмысымен тығыз байланысты алгоритм, программа ұғымдарын білуіміз қажет. Әрбiр ЭЕМ алдын ала берiлген алгоритммен, яғни жоспармен жұмыс iстейдi. Алгоритмдi заңдылық, реттелген амалдар жиыны, кезекпен орындалатын операциялар тiзiмi деп ұғынған жөн. Бұл ұғым қазіргі кезде кеңінен қолданылып жүр.
Алгоритм – берiлген есептiң шығару жолын реттелген амалдар тiзбегi түріне келтiру. Кез келген есептi қарапайым амалдарды тiзбектей орындау арқылы шығаруға болады. Алгоритмдi ЭЕМ–де орындау үшiн оны программа түрiнде жазып шығу керек.
Программа – алгоритмдi машинаға түсiнiктi нұсқаулар тiзiмi ретiнде жазу. Программа машинаға түсінікті командалардан тұрады. Осы командалар тізбегі орындалу барысында есептің нәтижесі шығады. Әрбір ЭЕМ алдын ала жазылған программамен істейді. Программа арнайы мәтiн арқылы ЭЕМ–ге тапсырманың реттi кезегiн хабарлайды. Процессор программаның құрамындағы командаларды кезекпен орындап отырады. Командалар тізбегін программа деп қарастыруға болады. Команда бір ғана қарапайым амалды орындау үшін бұйрық ретінде беріледі. Командалар: арифметикалық немесе логикалық амал; ақпаратты тасымалдау командасы; берілген сандарды салыстыру командасы, келесі командаларға көшу тәртібін орындау т.с.с.
Алгоритм - информатика пәнінің негізгі ұғымдарының бірі. Компьютерді қоғам өмірінің қай саласында болмасын пайдалана білу үшін алгоритм ұғымын меңгеру керек.
"Алгоритм" сѳзі мағынасы жағынан нұсқау, жарлык, рецепт, ереже, тәртіп, заң, жоба сѳздеріне синоним болып келеді. Алгоритм сѳзі Орта Азияның ортағасырлық ұлы ғалымы - Мұхамед ибн Мұса әл-Хорезмидің атымен байланысты шықкан. Ол өзінің "Арифметикалық трактат" деген еңбегінде арифметикалық амалдарды орындау тәртібін ұсынган. Сөйтіп арифметикалық амалдарды орындау ережесі, геометриялық фигураларды салу ережесі, сөздердің жазылуының грамматикалық ережесі т.е. сияқтылар алгоритм деп аталып кеткен.
A н ы қ т а м а. Алгоритм деп алдын — ала анықталган максатқа жету үшін, есептің шешімін табу үшін орындаушыға (адамға, компьютерге және т.б.) берілген түсінікті нұсқаулардың тізбегін айтады.
ЭЕМ-нің жұмысы программалық принципке негізделген, яғни ол өзінің жадында сақталатын командалар тізбегін автоматты түрде орындау арқылы есеп шығарады.
Алгоритм мен программаға байланысты ЭЕМ–нiң мынадай жұмыс ерекшелiктерi болады:
1) Есептi шығару жолы алгоритм түрiнде өрнектелуi қажет;
2) Алгоритм программаға айналдырылуы тиiс;
3) Программа машина жадына енгiзiлiп, ретiмен орындалуы керек.
Сонымен, керектi нәтиженi алу жолында ақпаратқа қолданылатын әрекеттердiң орындалу ретiн анықтайтын нұсқау – алгоритм болып есептеледi.
Алгоритм қасиеттерi
Алгоритм ұғымының мәнiн ашатын негiзгi қасиеттерiнен немесе оған қойылатын талаптардан қысқаша мағлұматтар келтiрейiк. ЭЕМ–де орындалуға тиiс алгоритмдерге мынадай талаптар қойылады:
1. Анық әрi дәл өрнектелуi тиiс;
2. Алгоритм шектелген уақыттан соң нәтиже беруi тиiс, яғни алгоритм қадамдарының саны шексiз болмауы керек;
3. Бiр тектес есептерге жалпы бiр ғана алгоритм қолданылуы тиiс;
4. Модульдiк (бөлiк), яғни алгоритмдi кiшкене бөлiктерге бөлу мүмкiндiгi болуы қажет.

14. ЛЕКЦИЯ ТЕЗИСТЕРІ

Алгоритмдеу негіздері. Алгоритмнің қасиеттері. Алгоритмді жазу тәсілдері.

Жоспары:
• Алгоритм, программа ұғымдары.
• Алгоритм қасиеттері. Алгоритм түрлері.
• Алгоритмдердi график түрiнде жазу.
• Алгоритмдердiң бiрыңғай түрлерi.

Лекция мақсаты:
Алгоритм, программа жөнінде алгоритмнің қасиеттері, алгоритмнің
түрлеріне жалпы түсінік беру және алгоритмдердi график түрiнде жазу,
алгоритмдердiң бiрыңғай түрлерін түсіндіру.

Лекция мәтіні:
Алгоритм, программа ұғымдары
ЭЕМ-ді пайдалану істерін қарастырмас бұрын оның жұмысымен тығыз
байланысты алгоритм, программа ұғымдарын білуіміз қажет. Әрбiр ЭЕМ алдын
ала берiлген алгоритммен, яғни жоспармен жұмыс iстейдi. Алгоритмдi
заңдылық, реттелген амалдар жиыны, кезекпен орындалатын операциялар тiзiмi
деп ұғынған жөн. Бұл ұғым қазіргі кезде кеңінен қолданылып жүр.
Алгоритм – берiлген есептiң шығару жолын реттелген амалдар тiзбегi
түріне келтiру. Кез келген есептi қарапайым амалдарды тiзбектей орындау
арқылы шығаруға болады. Алгоритмдi ЭЕМ–де орындау үшiн оны программа
түрiнде жазып шығу керек.
Программа – алгоритмдi машинаға түсiнiктi нұсқаулар тiзiмi ретiнде
жазу. Программа машинаға түсінікті командалардан тұрады. Осы командалар
тізбегі орындалу барысында есептің нәтижесі шығады. Әрбір ЭЕМ алдын ала
жазылған программамен істейді. Программа арнайы мәтiн арқылы ЭЕМ–ге
тапсырманың реттi кезегiн хабарлайды. Процессор программаның құрамындағы
командаларды кезекпен орындап отырады. Командалар тізбегін программа деп
қарастыруға болады. Команда бір ғана қарапайым амалды орындау үшін бұйрық
ретінде беріледі. Командалар: арифметикалық немесе логикалық амал;
ақпаратты тасымалдау командасы; берілген сандарды салыстыру командасы,
келесі командаларға көшу тәртібін орындау т.с.с.
Алгоритм - информатика пәнінің негізгі ұғымдарының бірі. Компьютерді
қоғам өмірінің қай саласында болмасын пайдалана білу үшін алгоритм ұғымын
меңгеру керек.
"Алгоритм" сѳзі мағынасы жағынан нұсқау, жарлык, рецепт, ереже,
тәртіп, заң, жоба сѳздеріне синоним болып келеді. Алгоритм сѳзі Орта
Азияның ортағасырлық ұлы ғалымы - Мұхамед ибн Мұса әл-Хорезмидің атымен
байланысты шықкан. Ол өзінің "Арифметикалық трактат" деген еңбегінде
арифметикалық амалдарды орындау тәртібін ұсынган. Сөйтіп арифметикалық
амалдарды орындау ережесі, геометриялық фигураларды салу ережесі, сөздердің
жазылуының грамматикалық ережесі т.е. сияқтылар алгоритм деп аталып кеткен.
A н ы қ т а м а. Алгоритм деп алдын — ала анықталган максатқа жету
үшін, есептің шешімін табу үшін орындаушыға (адамға, компьютерге және т.б.)
берілген түсінікті нұсқаулардың тізбегін айтады.
ЭЕМ-нің жұмысы программалық принципке негізделген, яғни ол өзінің
жадында сақталатын командалар тізбегін автоматты түрде орындау арқылы есеп
шығарады.
Алгоритм мен программаға байланысты ЭЕМ–нiң мынадай жұмыс ерекшелiктерi
болады:
1) Есептi шығару жолы алгоритм түрiнде өрнектелуi қажет;
2) Алгоритм программаға айналдырылуы тиiс;
3) Программа машина жадына енгiзiлiп, ретiмен орындалуы керек.
Сонымен, керектi нәтиженi алу жолында ақпаратқа қолданылатын
әрекеттердiң орындалу ретiн анықтайтын нұсқау – алгоритм болып есептеледi.
Алгоритм қасиеттерi
Алгоритм ұғымының мәнiн ашатын негiзгi қасиеттерiнен немесе оған
қойылатын талаптардан қысқаша мағлұматтар келтiрейiк. ЭЕМ–де орындалуға
тиiс алгоритмдерге мынадай талаптар қойылады:
1. Анық әрi дәл өрнектелуi тиiс;
2. Алгоритм шектелген уақыттан соң нәтиже беруi тиiс, яғни алгоритм
қадамдарының саны шексiз болмауы керек;
3. Бiр тектес есептерге жалпы бiр ғана алгоритм қолданылуы тиiс;
4. Модульдiк (бөлiк), яғни алгоритмдi кiшкене бөлiктерге бөлу
мүмкiндiгi болуы қажет.
Алгоритмді кез келген басқа жазулардан мына мағыналык қасиеттері
арқылы ажыратамыз. Олар алгоритмнің түсініктілігі, дискреттігі
(жалғыздығы), анықтығы, нәтижелігі, жалпыға бірдейлігі. Берілген орындаушы
үшін алгоритмнің т ү с і н і к т і л і г і деп, орындаушыньщ жарлықтарының
жүйесіне, құрамына енетін іс - әрекеттерді орындау, тексеру туралы жазбалар
мазмұнын айтады. Алгоритм ЭЕМ қабылдайтын және сол бойынша кажетті
амалдарды орындай алатын нұсқаулар түрінде берілуі керек. Дискреттілігі-
деп алгоритм жарлықтарының тізбектелген ретпен орындалуын айтады. Оның бір
жарлығының орындалуының соңы мен келесі жарлықтың басына сілтеме дәл, нақты
анықталады. Алгоритм, әрқайсысы ЭЕМ-ді белгілі бір қадам, әрекет жасататын
нұсқаулардың тізбегінен тұрады. Әрбір жарлықты орындағанда алгоритмнің
орындалуы аяқталды ма, не келесі қандай жарлық орындалады, сол туралы дәл
мәлімет болуы шарт, яғни алгоритмде нұскаулардың орындалу реті анықталған
болуы керек. Себебі, ЭЕМ үшін әрбір нұсқауды орындағаннан кейін келесі қай
жарлықты орындау (не істеу керектігі) анык көрсетілуі қажет.
Алгоритм - шектеулі қадамдарды орындап болған соң нәтижеге алыл
келеді. Нәтижеде, алгоритм орындалған соң есептің шешуінің аяқталуы, не
қандай да бір себептерге байланысты есепті шешуді жалғастыру мүмкін
еместігі туралы мәлімет болуы мүмкін. Алгоритмнің ж а л п ы л ы г ы деп оны
бірдей типтегі (түрдегі) есептерді шешу үшін қолдануға болатындығьш айтады.
Алгоритмдердi ЭЕМ-де орындау үшiн оларды алдын-ала жазып алу керек,
яғни ол белгiлi бiр заңдылықпен өрнектелуi тиiс. Жалпы алгоритмдi өрнектеу
түрлерiне:
1) табиғи тіл арқылы жазу;
2) белгiлi бiр терминдер – псевдокодтар арқылы жазу;
3) графика жолымен жазу;
4) алгоритмдiк тiлдермен жазу жолдарын жатқызуға болады.
Алгоритмдердi графика жолымен жазу, кейiннен оны программаға айналдыру
iстерi мемлекеттiк стандартпен бекiтiлiп ақпарат өңдеу жұмысында кеңiнен
қолданылып келедi. Сонымен, алгоритм есептердi шығару жолын баяндау-
өрнектеу үлгiсi, белгiлi бiр проблеманы шешу негiзiнде орындалатын
әрекеттерге басшылық, ой еңбегiн үнемдеуге мүмкiндiк беретiн әдiс, есеп
шешiмiн табуды автоматтандыруға қажеттi iс-әрекет, жаңа проблеманы шешу
кезiнде қолданылатын тәсiлдер, күрделi процестердi өрнектеу және
математикалық дәлдiкпен анық етiп жазу құралы бола алады.
Есептi ЭЕМ-де шығарудың негiзгi кезеңдерi
Есептi ЭЕМ-дi пайдаланып шығару алты кезеңнен тұрады:
1. Есептiң математикалық жобасын белгiлеу;
2. Есептiң шешу әдiсiн таңдап алу;
3. ЭЕМ-ң ерекшелiгiн ескерiп, есептi шешу үшiн алгоритм таңдау,
құрастыру;
4. Программалау;
5. Программа жұмысын ЭЕМ-де тексеру,қалыптастыру;
6. Есептi ЭЕМ-де автоматты түрде орындау.

Алгоритмдердi график түрiнде жазу

Алгоритмдердi өрнектеудiң көп тараған түрi – оны график арқылы
бейнелеу. Графикалық жолмен алгоритмдердi жазу үшiн мемлекеттiк стандарт
белгiленген, онда кез келген амал белгiлi бiр геометриялық фигурамен
өрнектеледi. Ол фигуралар немесе блоктар амалдар символы деп те аталады.
Блоктар бағытталған сызықтармен байланысып, бiрiнен соң бiрi орналасады.
Жиi қолданылатын амалдар, яғни мәлiметтердi ЭЕМ-ге енгiзу, формуламен
есептеу, шарттардың орындалуын тексеру, нәтиженi қағазға басу символдары 1-
суретте көрсетiлген. Осы суреттегi көрсетiлген блоктардан (символдардан)
алгоритм схемалары құрастырылады. Алгоритмдер схемасымен ақпаратты өңдеудiң
әрбiр сатысы немесе орындалатын операциялар ретi анықталады. Кейде
алгоритмдер схемасын оның блок-схемасы деп те атайды.
Сонымен, керек болған жағдайда алгоритмге сәйкес блок–схема жасалады.
Блок-схема – алгоритмнiң орындалуын ұйымдастыру үшiн қолданылатын амалдар
тiзбегiнiң графиктiк кескiнi. Блок–схема келiсiлген геометриялық
фигуралардың көмегiмен құрылады және бұл фигураларға келiсiмге байланысты
өзiндiк мағыналар берiледi.

Іс-әрекеттiң аты Блоктың пiшiнi Оның атқаратын
жұмысы
Процесс Математикалық
өрнектердi есептеу
Таңдау Есеп шығару жолын
жоқ таңдау
иә


Модификация
Цикл(қайталау) басы
Құжат Нәтиженi шығару,
қағазға басып алу

Енгiзу, шығару
Мәлiметтердi
енгiзу(шығару)

Бастау, аяқтау Алгоритмдердi
бастау, аяқтау

Қосалқы программа Қосалқы
программаларға кiру
және шығу
Түсiнiктеме Схеманы, формулаларды

түсiндiру

1 – сурет. Алгоритмдердi бейнелеу блоктары

Алгоритмдердiң бiрыңғай түрлерi
Күрделi алгоритмдердi құру үшiн қарапайым бiрыңғайланған алгоритмдiк
элементтердi қолданады. Олар сызықтық, тармақталу және цикл құрылымдарынан
тұрады.
Сызықтық құрылымды алгоритм немесе қарапайым сызықтық алгоритм iс-
әрекеттердiң орындалу ретiне қарай тiзбектеле орналасқан блоктардан тұрады.
Амалдардың бұлай бiрiнен соң бiрi реттелiп орындалу тәртiбiн табиғи
атқарылу дейдi. Мысалы: Z функциясының сандық мәнiн есептеу алгоритмiн
құралық z=ax2+b+cos(ax2+b)-tg(ax2+b). 3 сурет сызықтық алгоритмнiң мысалы
болып табылады.
Тармақталу алгоритмi. Тұрмыста кездесетiн алгоритмдер әр түрлi болып
келедi. Олардың жиi кездесетiн түрiне алгоритмнiң белгiлi бiр шарттың
орындалуына не орындалмауына байланысты тармақталып бiрнеше жолдарға
бөлiнуi жатады. Тармақталу алгоритмiнiң құрылымы қарапайым болып келедi.
Мұнда арифметикалық теңсiздiк түрiнде берiлген логикалық шарт тексерiледi.
Егер ол орындалса, онда алгоритм бiр жолмен, ал орындалмаса 2-шi жолмен
жүзеге асырылады, яғни есептi шығару жолы тармақталып 2-ге бөлiнiп кетедi.
Тармақталу алгоритмдерiне шартты тексеру блогы мiндеттi түрде кiредi. Ол
ромб түрiнде кескiнделiп, басқа блоктармен 1 кiру және 2 шығу сызықтары
арқылы байланысады. Көбiнесе тармақталу алгоритмдерi екi түрде кездеседi,
олар”таңдау” және “аттап өту ” мүмкiндiктерiн iске асыруға көмектеседi.
“Таңдау” жолымен тармақталуда берiлген шарт тексерiледi (2-сурет),
егер ол шарт орындалса (орындалуы анық, ақиқат болса), онда 1-амал
атқарылып, содан кейiн келесi 3-амалға көшемiз. Ал егер де шарт
орындалмаса, яғни оның орындалу мүмкiндiгi жалған болса, онда 1-амал
атқарылып,содан кейiн 3-амал атқарылады Сонымен, шарттың ақиқат немесе
жалған болуына байланысты 1-амал немесе 2-амал орындалады.
“Аттап өту” (3-сурет) алгоритмiнде шарт орындалса, онда 1-амалды аттап
өтiп, бiрден 2-амалды, содан кейiн 3-амалды орындаймыз. Ал шарт жалған
болса, онда 1-шi амал мiндеттi түрде орындалып, одан кейiн 2 және 3-шi
амалдар жүзеге асырылады.

2-сурет. 3-
сурет

Тармақталу кезеңiнде шартты тексеру блогы орындалуы барысында,
алгоритмнiң екi мүмкiндiгiнiң тек бiреуi ғана таңдап алынып жүзеге
асырылады да, ал екiншi таңдап алынбаған тармақ бiрiктiру нүктесiне дейiн
орындалмай қалады.

Циклдiк алгоритмдер. Көптеген есептердi шығару кезiнде бiр теңдеудi
пайдаланып, ондағы айнымалының өзгеруiне байланысты оны бiрнеше рет
қайталап есептеуге тура келедi. Осындай қайталап орындалатын есептеу
процесiнiң белгiлi бiр бөлiктерiн цикл деп атайды. Осы бiрнеше рет
қайталанатын бөлiгi бар алгоритмдер тобы циклдiк алгоритмдерге жатады. Цикл
алгоритмдердi пайдалану оларды кейiннен программаларда цикл операторы
түрiнде қысқартып жазу мүмкiндiгiн бередi. Циклдер қайталану санының алдын
ала белгiлi және белгiсiз болуына байланысты 2 топқа бөлiнедi. қайталану
сандары алдын ала белгiлi болып келетiн циклдер тобы арифметикалық цикл
болып есептеледi, ал орындалу саны белгiсiз циклдер – қадамдық
(итерациялық) цикл болып табылады. Цикл орындалуы алдында оның айнымалы
аргументi–параметрi алғашқы мәнге ие болуы керек, сонан кейiн қайталану
кезеңiнде цикл параметрi белгiлi бiр шамаға өзгере отырып, ол алдын-ала
берiлген ең соңғы мәнге дейiн жетуi қажет.
Алгоритмнiң орындалу барысында цикл параметрi, мысалы, х өзiнiң ең
алғашқы х0 мәнiнен ең соңғы хk мәнiне дейiнгi тұрақты шамаға (dx) өзгерiп
отырады. Осының нәтижесiнде х мынадай мәндердi қабылдайды:
х0,x0+dx,x0+2dx,...,x0+(n-1)dx,xk

Қадамдық циклдер. Циклдi орындаудың алдында, оның қайталану саны
белгiсiз болған жағдайда қадамдық циклдер пайдаланылады. Мұнда циклдi жазу
үшiн тек қана “шартты тексеру” блогын қолдану қажет, ол циклдi аяқтау үшiн
белгiлi бiр шартты тексередi. Қадамдық циклдердiң схемасын сызғанда
модификаторды (алтыбұрышты) пайдалана алмаймыз, өйткенi алдын ала циклдiң
неше рет қайталанатыны бiзге белгiсiз.

Бақылау сұрақтары:
1. Алгоритм деген не?
2. Алгоритмнің қандай қасиеттері бар, оларды қалай түсінесіз?
3. Алгоритмдердің берілуі. Алгоримнің орындаушысы?
4. Алгоритмді сипаттаудың қандай әдістерін білесіз?
5. Алғашқы, қорытынды мәліметтер деп нені айтамыз?

2 – лекция. Тақырыбы: Информация ѳлшемі. Алгоритм ұғымын нақтылау.
Тьюринг машинасы.
Тьюрингтің тезисі және оның дәлелдеуі.
Марковтың нормалы
алгоримдері. Нормалауды қағида және
оның дәлелдеуі.
Жоспары:
• Тьюринг машинасының құрылымы, қызметі.
• Тьюрингтің тезисі және оның дәлелдеуі.
• Марковтың нормалы алгоримдері.
• Нормалауды қағида және оның дәлелдеуі.
• Марковтың тьюринг машинасы және нормалды алгоритмдерді композициялау.
• Пост машинасы.

Лекция мақсаты:
Информация өлшемі, Тьюринг машинасының құрылымы, қызметі туралы,
Мароковтың нормалы алгоритмдері, Пост машинасы туралы жалпы түсінік беру.

Лекция мәтіні:
Информация ѳлшемі. Алгоритм ұғымын нақтылау. Тьюринг машинасы
Информация шамасын өлшеудің үш тәсілі бар: көлемдік, энтропиялық,
алгоритмдік.
Көлемдік өлшем — мәлімет құрайтын символдар саны.
Оны ѳлшеу информацияның жазылу түріне байланысты. Мысалы, 13 санын
түрліше жазуға болады: "он ұш ", 13, XIII, 11012 (бұлардың соңғысы екілік
санау жүйесінде жазылған).
Информация теориясында информацияны ѳлшеу үшін энтропиялық тәсіл
пайдаланылған (энтропия — ішке айналу). Энтропия деп кездейсоқ (екі
үштылық) болатын жағдайдың (орындалуы алдында нәтижесі белгілі емес
тәжірибенің) анықталмағандық шамасын айтады. Ол мынадай модельден түрады:
- тәжірибе бойынша белгілі оқиғалардың орындалу шамасы анықталады;
- шамаларды дәл есептеу мүмкін болмағандықтан, олардың энтропиясын
ықтималдықты пайдаланып есептейді.
Энтропияны информацияның жеткіліксіздік шамасы деп қарастыруға болады.
Ол ықтималдықтар жиынтығының біршама математикалық байланыстылығы арқылы
сипатталады.
1-мысал. Тиын ақшаны аспанға лақтырғаңда оның сандық бетімен не қарсы
бетімен түсуінің энтропиясын анықтау керек.
Мұңдай жағдай тең ықтималдықты екі оқиғадан тұратыны белгілі, ықтималдық
(P) 0.5-ке тең. Информация теориясында берілген тең ықтималдықты n оқиғалар
үшін әр оқиғаның энтропиялық шамасы (H) анықталатын формула:

H = * log2 n
Жоғарғы мысалда: n = 2, H = 0.5 (log2 2 = 1).
Тандалған оқиғалар саны (n) 2-нің бүтін дәрежесіне тең болмаса да, тең
ықтималдықты оқиғалар үшін осы формула пайдаланылады (әр оқиғаның орындалу
ықтималдығы ln-ге тең). Егер оқиғалар тең ықтимаддықты болмаса, энтропия
шамасы төмендегі формула бойынша есептеледі (формуланы 1948 жылы ғалым К.
Шеннон ұсынған):

Мұңдағы Рк — к-жағдайдағы жүйенің ықтималдығы; H — жүйенің энтропиясы
(информацияньщ жеткіліксіздік шамасы. Ол тәжірибеде информация санының
мөлшері үшін де пайдаланылады).
Егер барлық оқиғалар тең ықтимаддықты болса (Рк = 1 n), олардың
энтропиясы:

2-мысал. Қапшықта 10 шар бар. Олардың 9-ы ақ, 1-і қара түсті.
Қапшықтан алынған шардың түсін білдіретін информация шамасын (энтропияны)
анықтау керек.
P1 = 0.9; P2 = 0.1
H = 0.9 * log2 (1 0.9) + 0.1 * log2 (1 0.1) 0.469
Яғни бұл тәжірибенің энтропиясы бірдей ықтималдықты екі оқиғаның
энтропиясынан кіші екенін көрсетеді.
Алгоритмдер теориясьшда мәліметтік информацияны алгоритмдік тәсілмен
бағалау жүргізіледі. Алгоритм қасиеттері жоғарыда аталып кеткен болатын.
Олар: үздіктілік, түсініктілік, қадамдардың қарапайымдылыгы, көпшілікке
бірдейлігі және нәтижелілік. Ал, егер есептің шешімі болмаса, оны дәлелдеу
және мәнсіздіктен құтылу үшін алгоритмнің қатаң түрде зандылық анықтамасы
қажет. Мұндай ұғым өткен ғасырдың 30-жылдарының ортасында рекурсивті
функциялар және дерексіз автоматтар (машиналар) негізінде енгізілді:
у = f (X1, X2, ... , Xn) сандық функциясының мәңдерін есептеудің
алгоритмі болу үшін функция жарым-жартылай рекурсивті болу керек.
Жарым-жартылай рекурсивті функция ұғымы алгоритмдер теориясының
негізгі ұғымдарының бірі:
- әр жарым-жартылай рекурсивті функцияньщ шешу алгоритмі бар;
- алгоритмдер бойынша шешілетін функциялар жарым-жартылай рекурсивті,
керісінше жагдайда есеп алгоритм бойынша шешімсіз.
Есептің шешілуін оңайлату тәсілдерінің бірі — берілген есепті бастапқы
берілгендер мен шешуі бірдей болатын оңайлатылған ішкі есепке ауыстыру (ол
бәсендету стратегиясы делінеді), ал кезегімен оны да осы сияқты басқа ішкі
есепке алмастыруға мүмкін болса, мұндай процесс рекурсия делінеді. Кейбір
программалау тілдерінде ішкі программаның ѳзін-ѳзіне шақыратын құрылымын
рекурсивтік құрылым деп атайды. Рекурсивтік әдіс нәтижелі болу үшін ол
есептің шешуін дәл беруі тиіс. Рекурсияны пайдалану үшін алдымен берілген
есеп пен қосымша есептің байланысын (кейде жиектік шартты да) анықтап алу
керек. Әдетте қарапайымдау болатын жиектік шартты пайдаланып есепті шешу
әдісі жоғары кѳтерілу стратегиясы делінеді. Мысалы, рекурсия бойынша n !
мәнін есептеу әдісі:
n! = (n—1)! * n;

Мұндай әдіс рекурренттік деп те аталады (recurrent — қайталанушы).
Алгоритмдер теориясында дәлелденгеніндей, алгоритмнің бір менді
түсінілуі, ал оның қадамдары қарапайым және орыңдалатын болуы үшін осы
талаптарды орындайтын машина болуы тиіс. МҰндай машиналардың бірі —
абстрактілі (теория жүзіндегі) Тьюринг машинасы. Алгоритмнің қатаң
зандылығымен жұмыс істейтін Тьюринг машинасының құрылымы 2.1-суретте
кѳрсетілген (а — енгізілген символдар, і = 1, 2, 3, ...).
Машина құрамындағы таспа жеке ұяшықтардан тұрады (таспа шексіз болуы
да мүмкін). Әр ұяшыққа алфавитке сәйкес тек бір символ енгізіледі
( 1-суретте символ енгізілмеген ұяшық бос символ ( ) арқылы
белгіленген). Бастиек міндетті түрде бір ұяшықтың үстінде орналасулы
тұрады. Ол символды оқи және енгізе алады, қажет болса, оны өшіреді.
Бастиектің ерекшелігі — ол таспа бойынша еркін жылжи алатын етіп
орналастырылган.

басқару құрылғысы
бастиек

... ... [pic...
]

Осыған сәйкес 10.3+5.4 командасының машиналық тілде жазылу түрі:
1100 43 1200 1206 1214
Жоғарғы команданы орындау нұсқауы берілген кезде процессор ОЕСҚ-ның
1100-адресінен "1200-адресті ұяшық пен 1206-адресті ұяшықтарға енгізілген
берілгендерді қосып, қосындысы 1214-ұяшыққа енгізу керек" деген машиналық
команданы оқып шығады да, орындауға кіріседі (яғни программа машиналық код
деп аталатын сандар тізбегінен ғана тұрады).
Қосымша 1208, 1210-адресті ұяшықтарды таңдап алып, жоғарыда
дайындалған алгоритмге сәйкес машиналық тілде программаны мынадай түрде
жазу мүмкін (бұл тәсіл негізінен бірінші буын ЭЕМ-деріңде пайдаланылатын):
Программа
Сандар Командалар
1100 43 1200 1206
1214
1102 42 1214 1208
1214
1104 47 1214 1210
1214
1106 -60 0000 1214
0000
1108 77 0000 0000
0000

1200 10.3
1206 5.4
1208 6
1210 2

ЭЕМ-мен жұмыс істеу кезінде ескеретін жайт: ұяшыққа не регистрге жаңа
информация енгізілсе, онда бұрыннан енгізулі тұрған информация автоматты
түрде өшіп кетеді; егер енгізілмесе, ескі информация арнайы берілетін өшіру
командасына дейін сақталып тұра береді және оны қайталап пайдалана беру
мүмкін. Құрылған программада 1214-адресті ұяшықты пайдалану осыған
негізделген.
1106-ұяшыққа енгізілген команда — нәтижені басып шығару комаңдасы,
1108-ұяшыққа енгізілген команда — "тоқтау" комаңдасы.

Тьюринг машииасы және Пост машинасы көмегімен алгоритм ұғымын айқындау.

Алгоритм есепті шешу және практикада қолдану әдісін сипаттау болып
табылады. Ол әдісті зерттеу нәтижесі бойынша қүрылады. Алгоритм есепті шешу
үшін орындалатын әрекеттердің қатаң жазбаларының реттелген тізбегі болып
табылады. Бұл әрекеттер шешу әдісінен туындайды.
Алгоритмнің қасиетті сапаларының бірі - орындаушыдан шешу әдіс, яғни
жазылған әрекеттерді не үшін орындау кажеттігін түсінуді талап етпейді.
Орындаушыдан жазылған әрекеттерді орындай алуды және кағидаларды түсінуді
талап етеді.
Орындаушы алгоритмді қағида-жарлықтардын ізімен "механикалық" түрде
орындайды. ЭЕМ-ді, алгоритмді орындау құралы ретінде пайдалану мүмкіндігі
осыған негізделген.
Алгоритмдер арқылы шешілмейтін есептер - математикалық логаканың
негізгі түсініктерінің бірі. Есептердің шешілгіштігін дәлелдеу күрделі
мәселелердің бірі. Оны дәлелдеу үшін алгоритмнің катандығы түсінігін
нақтылау кажет. Алгоритмнің қатаңдығы түсінігіне Пост, Тьюринг машиналарын,
Марковтың нормаль алгоритмін т.б. атауға болады. "Алгоритмдер арқылы
шетілмейтін есептер" түсінігінін практикалық маңыздылығы алгоритмдер арқьшы
шешілмейтін есептерді компьютерде шешуте әрекеттену нәтижесіз болады.
Э.Пост- АҚШ математигі, акпаратты түрлендіру үшін пайдаланылатын
операциялық жүйелердің толықтығы түсінігінің маңыздылығын зерттеген алғашқы
ғалымдардьщ бірі.
Э.Пост өз идеяларын ақпараттарды автоматты түрлендірушілер лайда
болғанға дейін 1935 жылы жариялады. Оның ақпараттарды түрлендіру туралы
құнды ойлары 1967 жылы ЭЕМ-де жұмыс істеу үшін адрестерді ұйымдастырудың
теориясы мен программасын құру үшін жаңа позицияда пайдаланыдды.
В.А.Успенский алғаш рет "Математика в школе" журналында жарияланған
мақаласында "Пост машинасы" терминін енгізіп, машина сѳзін конструкторлық
емес, бағдарламалаушы көзкарасымен сипаттады.
Біріншіден, Э.Пост барлык ақпараттарды алдымен белгілі бір формада
түрлендіруді ұсынды. Ол берілген әрбір созді екі әріпті алфавитта қайта
жазуды талап етті. Мысал ретінде, нүкте және сызықша белгілерін әріп
ретінде пайдаланатын телеграфист жұмысын атауға болады.
Э.Пост жүйесінің екінші маңызды болігі екілік алфавитта жазылған әрбір
сөзді әріп бойынша еңдеу болып табылады.
Анықталган ақпарат екілік алфавитта қайта жазылған соң, ол әріппен
әріп тізбегімен машинаның ақпараттық лентасына беріледі. Ақпаратты лента
бірдей секцияларға бөлінген. Лентадагы секциялар саны ақырсыз. Демек, қажет
жағдайда ақпараттық лентаға оң, сол жағынан қажетті секциялар санын жалғай
аламыз. В.А.Успенский ойлап тапкан екілік алфавиттің бір әріпі ретінде
таңба пайдаланылып, ол лентаның кандай да бір секциясына орналасады, екінші
әріп секциядағы бос орын болады. Таңбамен мазмұндалган секция таңбаланған
деп, кері жағдайда таңбаланбаған деп аталады. Таңбаланған және
таңбаланбаған секцияның таралуы лента күйін анықтайды. Акпараттык лента
бойымен каретка қозғалады. Ол тек қана бір рет қана оңға немесе солға
секіру арқылы қозғалады. Каретканың орналасуына байланысты лентаның нақты
жағдайы. машинаның күйін анықтайды. Каретка кѳмегімен машина каретка
астында орналасқан лентаның нақты секциясының
таңбаланған немесе
таңбаланбағандығын анықтай алады. Каретка секциядағы таңбаны өшіре және бос
секцияға таңба орналастыра алады. Каретка нақты екілік сөзді әрптік
түрлендіру жасай алады. Пост машинасының негізгі қызметі акпараттық лента
күйін түрлендіру болып табылады. Машина түрлендіруді адам тарапынан
жасалған алгоритмнің жетекшілігімен іске асырады.
Пост машинасының архитектурасы және жұмыс істеу принциптері Тьюринг
машинасына ұқсас. Олар өз мүмкіндіктері бойынша эквивалентті және бір
мезгілде бір-біріне тәуелсіз жасалған.
Тьюринг машинасын 30-шы жылдары математик Алан Тьюринг алгоритм
түсінігін түрақтандыру үшін лоне кейбір мәселелердің алгоритмдік
шешілмейтіндігін дәлелдеу үшін теориялық механизм сапасында жасады.
Тьюринг машинасы оң және теріс бүтін сандармен тізбектеле нөмірленген
ұяшықтарға бөлінген екі жағынан шектелмеген лентадан тұрады. Лентаның әрбір
ұяшығында берілген алфавиттің "бос символмен" бөлінген кез-келген символы
болуы мүмкін. "Бос символ" - ұяшық бостығының белгісі. Машина бастапқы және
ақырғы күйлерден тұратын ішкі ақырлы күйлердің жиынынан тұрады. Машинаның
лентадан баска біріншіден, алға, артқа жылжу және орынында түру қозғалысын
аткаратын; екіншіден мазмұнды оқып, өшіріп, алфавиттердің бірінен символ
жаза алатын; үшіншіден, бағдарламамен басқарылатын басы бар. Бағдарлама
әрбір торында команда жазылған кестені бейнелейді. Әрбір тор алфавит
символы және машина күйі деп аталатын екі жұппен анықталады. Команда оқу
жазу басын ағымдық күйден қайта жылжыту, қай символды ағымдык ұяшыққа жазу
және машина қандай күйге ауысатынын анықтайтын нұсқау береді.
Марковтың нормаль алгоритмі:
1. A= {а, а..., aN} алфавитімен;
2. P= (Aj Bj} алмастырулардьщ формулалар жиынын анықтайтын
алмастырулардың нормаль сүлбесімен;
3. R=(A =B}, мұндағы RP формулалар жиынынан тұрады.
Алфавит - әріп деп аталатын бос емес, акырлы элементтердің жиыны.
Әріптердің түрлі орналасулары сөзді бейнелейді. Алмастырудың нормаль
сүлбесі - сол жақтағы сөз оң жаққа өтетін (немесе керісінше) сөздер жұбынан
құралган ақырлы терім. A алфавитіндегі нормаль алгоритм дегеніміз -бастапқы
сөз ретінде P сөзінің өзі алынып, оған рет бойынша алмастыру сүлбесінен
сөздер тізбегін құратын әрбір жұптын қабылдануы. Егер алмастыру мүмкін
болса, оны іске асырып, алмастыруды басынан бастайды.Егер процесс Q сөзінде
тоқталса немесе ақырғы алмастыруға жетсе, онда берілген нормаль алгоритм Р-
ны Q-ға түрлендіреді. Марковтың нормаль алгоритмдер класы Тьюринг және Пост
машиналары формасында бейнеленген алгоритмдер класымен сәйкес келеді.
Марков формасындагы теорияның негізгі гипотезасы: барлық алгоритмдер
нормалданады.
Ал Тьюринг гипотезасы бойынша: барлык алгоритмдер сәйкес машиналарда
реализацияланады.
Сондай-ақ, Тьюриштін сәйкес машинасын сипаттау арқылы мәселенін шешілу
алгоритмінің бар немесе жок екендігі дәлелденеді.
Джон Маккарти, математик, 1956 ж. жасанды интелект терминін ұсынған
және оны саладағы алғашкы зерттеушілердің бірі. 1957—1958
жылдары Маккарти инициативасы бойынша МТИ жанынан жасанды
интеллект лабораториясын құрды және өзінің бірнеше студенттерімен
бірге негізгі түсініктері математиканың лямбда-есептеу (Х.-
есептеу) арнайы белімінің таңбаларына негізделген жоғары деңгейдегі
тілді жасауға кірісті. 1931 жылы математик Алонзо Черче енгізген, лямбда-
есептеу элементтердің үш типімен ғана операциялаңады: айнымалылар мен
тұрақтыларды көрсететін символдар; символдарды топтауға арналған жақшалар;
лямбда грек әрпін пайдаланып функцияларды белгілеу. Тез арада пайда
болған тіл Лисп (LISP, LISt Processing — тізімдерді өңдеу) деп аталды.
Біраз уақыттан соң Маккартидің "Рекурсивные функции и символьные
вычисления" деп аталатын Лисп тілін колданудың
математикалық негіздері баяндалған мақаласы жарық
кѳрді.
Программы и данные Лиспа "тізімдік" құрылым түрінде сақталатын арнайы
символдық ѳрнек формасында болады. Объектілердің екі түрі пайдаланылады:
атомдар және тізімдер. Атомдар — сандық немесе символдық болуы мүмкін және
объектілерді идентификациялауға қолданылатын символдар. Тізім— атом немесе
тізім болатын деңгелек жақшалармен жабылған элементтердің тізімі.

3 – лекция. Тақырыбы: Паскаль тілінде программалау. Программалаудың
элементтері.
Паскаль тілінің негізгі
элементтері
Жоспары:
• Программалау жүйелері туралы жалпы мағлұмат.
• Тілдің алфавиті мен сөздігі
• Тұрақтылар мен айнымалылар
• Мәліметтердің типтері
• Стандартты функциялар мен процедуралар
• Өрнектер мен амалдар.

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

Лекция мәтіні:
Ерте заманнан бастап-ақ адамдарға есептеу жұмыстарын жүргізу қажет
болған. Ең алғашқы есептеулерді ата-бабаларымыз қолдың саусақтары немесе
сүйектерді, тастарды қолдану арқылы жүргізген. Есептеуіш құрылғыларды бұдан
бірнеше ғасыр бұрын жасаумен айналыса бастаған, әсіресе XVII ғасырдан
бастап ұлы ғалымдар көп айналысты. Уақыт өткен сайын ондай есептеуіш
құралдарының түрлері де өзгеріп жетілдіріле түсті. Бұл сананың дамуы
астрологиялық есептеулерге де ықпалын көп тигізді.
Тұңғыш есептеуіш машинасын 1642 жылы француз оқымыстысы Блез Паскаль
(1623-1662) жасады. Бұл есептеу құрылғысы көп мәнді сандарды азайтып қосуға
арналды. Сондықтан оны арифмометр деп атады.
Ғылым мен техниканың қарқынды дамуының нәтижесінде XX ғасырдың 40
жылдары алғаш рет электронды – цифрлы есептеуіш машинасы жасалынды.
Қазіргі уақытта қолданылып жүрген ЭЕМ немесе компьютер арқылы күрделі
есептеулер жасауға мүмкіндік туды. ЭЕМ-де есептеулерді жүргізуді жеңілдету
үшін кез келген басқа құрал-сайман сияқты оның тілін білу қажет. Адам мен
ЭЕМ арасындағы байланыста алдын-ала келісіммен алынған шарттар жүйесін
беретін нақты бір тіл атқарады. Соңғы кездерде компьютердің түрлері
көбейуімен қатар көптеген программалау тілдері пайда болды.
Дүние жүзіне кең таралған тілдерге Фортран, Бейсик, Паскаль, СИ,
ПЛ1, Ассамблер, Алгол және т.б. Осы тілдердің біреуін жақсы білген адам
басқа тілдердіде тез меңгеріп ала алады.
Паскаль программалау тілі Блез Паскальдың құрметіне арналып 1971 жылы
Швейцариядағы жоғары политехникалық мектептің информатикалық институтының
профессоры Никлаус Вирт жасап шығарды.

Тілдің ерекшеліктері:
• қарапайым, тез арада жете меңгеруге ыңғайлы;
• деректердің құрылымына қарай сандық, белгілік және екілік ақпаратпен
жұмыс жүргізуге және күрделі алгоритмді бағдарлама жасауға қызмет
етеді;
• жүйелік бағдарламалауда кеңінен қолдануына оның өте тиімді программа
құру мүмкіндігі септігін тигізеді.

Белгілі бір есепті шешуде, есептеу жүргізуде қанат іс-қимылдарды нақты
түрде ретімен сипаттайтын іс-әрекеттер жоспарын программа (бағдарлама)
дейміз.
Іс-әрекеттердің ретімен анықталған ереже бойынша орындалуын алгоритм
дейміз.
Сонымен программа тиісті алгоритмдік тілде жазылады. Паскаль тілінде
жазылған программа ағылшын сөзінен құралған қызмет сөздер тізбегінен
тұрады. Әрбір аяқталғын іс-қимылдан соң нүктелі үтір (;) қойылады.
Программада көрсеткішті және бөлшек түріндегі “этажды” жазулар
мүлдем қолданылмайды. Оладың орнына келісілген белгілер қолданылады.
Жалпы түрде Паскаль тілінде программа былай жазылады:

Program программа аты;
Var айнымалы аты, . . . айнымалы аты : түрі;
Begin
Программаның орындалу бөлігі;
end.

Үшбұрыштың ауданын есептеу программасын құрып көрелік:

Program audan (input, output);
Var a, b, c, p, S: Real;
Begin
Read (a , b, c);
p:= 0.5 * (a + b + c);
S:= sqrt (p*(p-a)*(p-b)*(p-c));
Write (S)
end.

Басқа позициялық санау жүйклкріндегі сандарды анықтау үшін ондық
жүйедегі сияқты арифметикалық амалдар қолданылады. Санау жүйелерін бір
бірінен айыру үшін төмен жағына индекс қойылады.

12.438

Енді p = 2 болатын сану жүйесін қарастырайық.

Екілік санау жүйесі

Кез келген санды екілік жүйеде 0 және 1 цифрларын пайдаланып анықтайды.

мұндағы коэффиценті екілік жүйедегі нөл немесе бір цифрын қабылдай
алады. Екілік жүйеде цифрлар тізбектеліп орналасады

Мысалы:
310 = 112 1010 = 10102
610 = 1102 0,510 = 0.12
810 = 10002 0,2510 = 0.012

Паскь тілінің негізгі элементтері.

Программалаудың көпшілігі белгілі бір есепті шешу үшін жазылады. Ал
есептің шешіміне ақпараттар мен деректерді өңдеу арқылы жетуге болады.
Сондықтан программалаушы ретінде бізге қалай

• ақпараттарды программаға кіргізу – енгізу;

• ақпараттарды сақтау – деректер;

• деректерді өңдеудің дұрыс командаларын беру – операциялар;

• программадан деректерді алу (орындалулардың нәтижелері) – шығару
керек екенін білу қажет.

Біз өзіміздің командаларымызды жазып, төмедегідей реттей аламыз:

• олардың кейбіреуі белгілі бір шарт немесе шарттар орындалған
кезде ғанаорындалатындай – шартты орындалу;

• басқалары белгілі бір рет орындалатындай – циклдер;

• тағы басқалары жеке топтарға жинақталып программаның бірнеше
жерінде орындалатындай – қосалқы программалар.

Сонымен программалаудың негізгі жеті түсініктерін атап өттік: енгізу,
деректер, операциялар, шығару, шартты орындалу, циклдер және қосалқы
программалар. Төменде әрбір элементтің қысқаша сипаттамасы берілген:

1) Енгізу. Бұл пернеліктен келіп түсетін немесе сыртқы есте
сақтау құрылғысындағы (СЕСҚ) деректер жиынынан оқылатын
ақпарат;

2) Деректер. Бұл тұрақтылар, айнымалылар, массивтер, жазбалар,
жиындар, мәтіндер (символдар және жолдар), файлдар;

3) Операциялар. Мәндерді меншіктеуді, өрнектерді есептеуді
(қосу, бөлу және т.с.с.), мәндерді салыстыруды (теңдік, үлкен,
кіші және т.с.с.) қамтамасыз етеді;

4) Шығару. Бұл ақпараттарды дербес компьютердің (ДК)
мониторындағы экранға шығару немесе СЕСҚ – дағы деректер
жиынына жазуды білдіреді;

5) Шартты орындалу. Бұл бір немесе бірнеше командалардың белгілі
бір шарт орындалғанда (ақиқат) орындалуы. Егер шарт
орындалмаса, онда бұл командалар өткізіліп жіберіледі немесе
командалардың басқа жиыны орындалады;

6) Циклдер. Мұнда командалардың жиыны қандай да бір шарт ақиқат
болып тұрған кезде немесе шарт ақиқат болмайынша қайталанып
орындалады;

7) Қосалқы программалар. Программаның кез келген жерінде аты
арқылы шақырып орындауға болатын инструкциялардың белгілі
атпен біріктірілген жиыны.

Паскаль тілінің алфавитіне кіретін символдарды үш топқа бөлуге болады:
әріптер, цифрлар және арнайы символдар.

Әріптер ретінде латын алфавитінің бас және кіші әріптері
(A,a,B,b,...,Z,z) пайдаланылады. Сонымен қатар Паскаль тілінде жазылған
программалар түсінікті болуы үшін арнайы программалардың көмегімен орыс,
қазақ алфавиттерінің әріптерін де пайдалану мүмкіндіктері бар.
Цифрлар - өзімізге белгілі араб цифрлары (0, 1, 2, 3, 4, 5, 6, 7, 8,
9).
Арнайы символдар:
+ Қосу { } фигуралы жақшалар
- Алу . нүкте
* көбейту , үтір
бөлшек белгісі : қос нүкте
= Теңдік ; нүкте мен үтір
Үлкен ‘ апостроф
Кіші $ доллар белгісі
[ ] Квадрат жақшалары бос орын
( ) Жай жақшалар тағы сол сияқтылар.

Программалау тілдерінде бөлінбейтін тұтас символдар тізбегі сөз
құрайды. Сөздер стандартты идентификаторлар (sіn, cos, sqr,...), қолданушының
идентификаторы (x, x1, 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 = ’мектеп’;
Кейбір тұрақтылар тілдің құрамына кіреді де, алдын ала анықтауды қажет
етпейді, мысалы, Pі мәні 3.14..., Maxіnt мәні 32767 т.с.с.
Айнымалылар дегеніміз - программаның орындалу барысында мәндерін
өзгертуге болатын шамалар. Айнымалылардың кезекті мәндері компьютер жадында
оларға жаңа мән бергенше ғана сақталады.
Тұрақтылар мен айнымалылар Паскаль тіліндегі келісілген мәліметтердің
бір типіне жатуы тиіс. Тұрақтылардың типтері олардың берілуіне байланысты
өздігінен анықталады. Айнымалылардың типтері программаның арнайы тарауында
сипатталады.
Жазылуы: Var идентификатор,... : тип идентификаторы;...
Айнымалыларға сипаттауда көрсетілгеннен басқа типті мән меншіктеу
қателік туғызады.

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

Бақылау сұрақтары:
1. Паскаль тіліндегі негізгі қандай элементтер бар?
2. Идентификатор деген не? Идентификатор не үшін қажет?
3. Шамалар қандай жағдайда міндетті түрде тұрақты ретінде анықталады?
4. Паскаль тілінде тип ұғымының енгізілу себебі не?
5. Жүйелі тип не үшін қажет?
6. Бүтін тип. Логикалық типтер.
7. Стандартты функциялардың программалауда алатын орны қандай?
8. Int стандартты функциясы мен div арифметикалық амалының айырмашылығы
неде?
9. Арифметикалық амалдарда ауытқу туу себептері қандай?
10. Паскальда қатынас амалы мен логикалық амалдарының қайсысының орындалу
үстемділігі жоғары?

4 – лекция. Тақырыбы: Паскаль тіліндегі программаның құрылымы.
Программаның басы.
Жоспары:
• Программа құрылымы туралы жалпы түсінік.
• Тараулар.
• Түсініктеме. Блок.

Лекция мақсаты:
Жалпы программа құрылымын түсіндіріп, әрбір тараудың мағынасын ашып
көрсету және түсініктеме ұғымын түсіндіру.

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

Тараулар
Таңбалар тарауы
Паскальдың кез-келген оператордың алдынан өту операторы Goto арқылы
программаның кез-келген жерінен тікелей сол операторға өтуге мүмкіндік
беретін таңба қоюға болады. Таңба оның атынан және таңба идентификаторы
соңынан қойылатын қос нүктеден (:) тұрады. Таңба қолданылмас бұрын
анықталуы керек. Таңбаларды анықтау тарауы Label(таңба) қызметші сөзінен
басталып, оның соңынан үтір арқылы ажыратылған таңба идентификаторлары
келтіріледі. Соңғы таңба идентификаторынан кейін әдеттегідей нүкте-үтір
қойылады.
Жазылуы: Label таңба аты,...;
М ы с а л. Label T1, T2, 13, 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) тілдің бір бөлігі болып есептелінеді де, алдын ала анықтауды қажет
етпейді, ал қолданушының ішкі программасы міндетті түрде сипаттауды қажет
етеді. Процедура мен функция жеке - дара программа болғандықтан, олардың
құрылымы жалпы Паскаль тілінде жазылған программаның құрылымындай болады.
Ерекшелігі - тек процедура мен функцияның ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Информатиканы оқыту әдістемесі пәнінен дәрістер тезистері
Математика пәнінен дәрістік тезистері
«Педагогикалық процесс мұғалім қызметінің объектісі ретінде» пәнінен лекция тезистері
Информатика оқыту әдістемесі туралы қысқаша мәлімет
Информатика пәнінен лекциялық сабақтардың тезистері
Педагогика бойынша лекциялар
Информатика пәнінен оқушылардың өздік жұмыстары
Информатиканы оқытуда өзіндік жұмыстарды ұйымдастыру
Электрондық оқулықтың сипаттамасы
Информатика пәнінен өздік жұмыстарды ұйымдастыру
Пәндер