Лекция. Модульдік программалау концепциясы 1 страница



Мазмұны   1-лекция. Кіріспе. 4 2-лекция. Тілдің элементтері 10 3-лекция. Құрылымдық программалау концепциясы. 16 4-лекция. Модульдік программалау концепциясы.. 17 5-лекция. Объектіге бағытталған программалау концепциясы. 18 6-лекция. Негізгі түсініктер мен енгізу ортасы және программаларды орындау механизмі 22 7-лекция. Деректердің негізгі типтері 26 8-лекция. Программаларды ұйымдастыру және құрылымдардың негізгі принциптері. 28 9-лекция. Жариялау. 30 10-лекция. Енгізу-шығару. Кітапхана, енгізу-шығару функциялары. 32 11-лекция. Операторлар. 37 12-лекция. Қадамдап қайталау (цикл) операторы, шарты алдындығы қайталану операторы, шарты соңындағы қайталану операторы. 41 13-лекция. Жалғасу операторы, ауыстырғыш-операторы, ажырау операторы, көшу операторы, қайтару операторы. 43 14-лекция. Деректерді өңдеудің негізгі құралдары.. 45 15-лекция. Стандартты функциялар және процедуралар. 47 16-лекция. Программалық құралдар. 51 17-лекция. Нәтижелі программаларды жазудың алгоритмдік негіздері 52 18-лекция. Тізбектерді өңдеудің негізгі алгоритмдері 57 19-лекция. Сілтеме (сілтеуіш) тип. 59 20-лекция. Модульдік программалау. 61 21-лекция. Программалық интерфейс негізгі принциптері және ұйымдастыру құралдары. 68 22-лекция. Жадыны ұйымдастыру және Си тілінің көрсеткіштері. 76 23-лекция. Программалау жүйелері 77 24-лекция. Интегралданған программалау жүйелері: олардың міндеті және компоненттері. 80 25-лекция. Функциялар. 83 26-лекция. Программаны құрудың негізгі принциптері 85 27-лекция. Виртуалды машинға арналған ассемблер тілі 88 28-лекция. Графика. 90 29-лекция. Енгізу-шығару. 97 30-лекция. Ерекше жағдайларды өңдеу. 103 Әдебиеттер. 106

Лекция. Кіріспе

Жоспар:

1. Алгоритм түсінігі.

2. Программа түсінігі.

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р қатарды ек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р мақсатқа сәйкес өңдей алу қаб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н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ң алынуына немесе есепт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 пайдаланатын сөздермен, табиғи т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. Дербес жағдайда, алгоритмд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 қолданатылатын шығыр-символдары:

 

  1   Орындауға жiберу, тоқтату, алгоритмнiң басы мен соңын бiлдiретiн шығыр және де көмекшi программаларда кiру немесе шығу;
2   Процесс – меншiктеу немесе арифметикалық есептеудi бiлдiретiн шығыр;
3   Құжат – шығару, натиженi баспаға немесе экранға шығару әрекетiн белгiлейдi;  
4     Еңгiзу – берiлгендердiң мәндерiн еңгiзудi белгiлейдi;
  5   Шешiм – логикалық шартты тексеретiн шығыр (шарттың орындалуына байланысты алгоритмнiң орындалу бағыты таңдалынады);  
6   Байланыстырушы – блок-схеманың сызықтары бөлiнгенде қолданылады;
  7 Басынан белг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лi бiр заңдылық бойынша есептеу нәтижесiне мiндеттi түрде жеткiзу.

Қарастырылған есепте бастапқы берiлгендер - квадрат теңдеудiң a, b, c –коэффициенттерi, ал нәтижелiк х1 мен х2 болып саналады, сондықтан Бұл мысалдың алгоритмнде кiрiс шамалар ретiнде a, b, c-параметрлерiнiң мәндерi және де шығыс параметрлерi болып х1 мен х2 мәндерi алынады.

соњы
x1, x2
x1, жєне x2 аныќтайтын формула  
а, b,c
соњы
Квадрат тењдеуiн шешу: ax2+bx+c=0  
басы
а)

басы
 

Б)  

жоќ
ия
Т‰бiрi жоќ
Бiр бiрiне тењ екi т‰бiрi бар
Екi тІбiрi бар
Екi т‰бiрi бар
D=b2-4ac
a,b,c
D=0
D>0
жоќ
ия
с)

 

                                                

                                            …                                               

 

Сурет. Қадамдық толық талқылау әдiсiн пайдаланып құрастырған алгоритм

 

Тендеудiң коэффициенттерi нақты сандар және де бәрi де 0-ге тең емес деп аламыз.

Сонымен, Бұл есептiң алгоритмi алғашында а) суретiнде көрсетiлгендей болып құрылады, келесi қадамында ”квадрат теңдеуiн шешу” блогының әрекетi б) суретiнде көрсетiлгендей тағы да үш әрекетке бөлiнедi, олар – a,b,c бастапқы мәндерiн еңгiзу; x1, және x2 анықтайтын формула; және x1, мен x2 мәндерiн баспаға беру. Келесi қадамда талдауды одан әрi жалғастырып с) суретiнде көрсетiлген алгоритмге келуге болады. Бұл жерде “x1, және x2 анықтайтын формула” блогының әрекетi келесi нұсқаулардың орындалуына келтiредi – дискриминантты есептеп, кейiннен оның мәнiне байланысты, егерде d>0 болса теңдеудiң екi тібiрi, егерде d<0 теңдеудiң тібiрi жоқ, ал d=0 болса теңдеудуң бiр бiрiне тең болатын екi тібiрi бар деген информация баспаға берiледi. Талдауды әрi қарай жалғастырып, квадрат теңдеудiң тібiрiн анықтайтын формулаларымен және қорытынды нәтиженi баспаға беру блоктарымен алгоритмдi толықтыру керек.


Дата добавления: 2019-02-12; просмотров: 754; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!