ЭЕМ–алгоритмдіорындаушы. ЭЕМ үшін кез келген бағдарламаны жасау алгоритм құрудан басталады. Оны компьютержәне нақты бағдарламалаужүйесі(Бейсик, Паскаль және т.б.) орындайды. Бұл схема түрінде 5.2-суретте [42] бейнеленген.
ПАСКАЛЬ бағдарламалау жүйесі
Паскальдағы бағдарлама
Шамаұғымы,оныңсипаттамасы.Компьютер ақпаратпен жұмыс жасайды. Компьютерлік бағдарламада өңделетін ақпаратты деректердеп атайды. Шама–жекеақпараттықобъект,жекедеректербірлігі.Компьютерлік бағдарламадағы бұйрықтарды, шамалармен жасалатын әрекеттерді анықтайды.
Есептеу процесінде алынатын деректер,бағдарламау тұрғысынан қарастырғанда: алғашқы, нәтижелер(ақырғы деректер) және аралықдеректер деп бөлінеді (5.3-сурет [42]).
Мысалы, ax2+bx+c=0квадрат теңдеуді шешкенде: алғашқы
деректер – a,b,скоэффициенттері; нәтижелер – x1,x2теңдеудің түбірлері;аралық деректер – D=b2-4астеңдеудің дискриминанты болады.
-сурет. Деректердіңдеңгейлері
Оқушылар игеретін ең басты түсінік, ол мына тұжырым: кезкелгеншамаЭЕМжадындаөзініңбелгіліорыныналады.Нәтижесінде оқушылардың санасында шаманы сақтайтын жадыұяшығыныңбейнесі бекітілуге тиіс. Шаманы сақтау орынын белгілеу үшін «жадыұяшығы» терминін қолданған жөн.
Кез келген шаманың үшнегізгісипаттамасыбар – атауы, мәніжәне типі. Машиналық бұйрықтар деңгейінде, кез келген шама – сонда сақталған жады ұяшығының адресіментеңестіріледі, ал мәні – осы ұяшықтағы екіліккоды болады.
Алгоритмдерде және бағдарламалау тілдерінде шамалартұрақтыжәне айнымалыдеп бөлінеді.
Тұрақты– өзгермейтіншама, алгоритмде өзінің меншікті мәнімен (мысалы 10, 3.5, 'к', true және т.б.) немесе символикалық атымен (саны) ұсынылады. Тұрақтышаманыңесімі,мәніжәнетипі өзгермейді,олардыңбарлығыбірмезгілдеанықталады. Айнымалышамалар– алгоритмнің орындалу барысында өз мәндерін өзгертеді және символдық атау – идентификаторменұсынылады, мысалы, X, S2, COD15, Rez және т.б.
Әйтсе де, тұрақтыболсын, не айнымалыболсын жадыдан орын ұяшықтаралады, ал олардың мәніосы ұяшықта екілік кодпен анықталатынын оқушылар білуге тиіс.
Деректердіңтиптері.Бағдарламалау үшін бұлұғыміргеліболып табылады. Оқушылар деректер типі ұғымымен электрондық кестелерді оқығанда кезігуі мүмкін.
Әр бағдарламалау тілінде деректер типтерінің өз тұжырымдамасы, өзінің типтерінің жүйесі болады. Әйтсе де, кез келген тілге минималды қажет деректердің негізгі типтерінің жиыны кіреді. Оларға мыналар жатады: бүтін,нақты,логикалықжәнесимволдық.Шаманың типімен оның мына үшқасиетібайланысты: мәндердіңмүмкінжиыны,амалдардыңмүмкінжиыны,ішкіұсынупішіні(5.1-кесте).
5.1-кесте
Типі
Мәні
Амалдар
Ішкі ұсынымы
Бүтін
Кебір диапозондағы
Арифметикалық
Форматы тия-
бүтін оң және теріс
амалдар: +, -, х, бүтін
нақты нүктелі.
сандар.
бөлінді алу, қалдық
Мысалдар: 23, -12, 387
алу, қатынас амалдары
(<, >, = және т.б.).
Нақты
Кейбір диапозонда кез
Арифметикалық амал-
Форматы жыл-
келген (бүтін және
дар: +, -, *, / .
жымалы
бөлшек) сандар. Мы-
Қатынас амалдары
нүктелі
салдар: 2.5, -0.01, 45.0,
3, 6*109
Логикалық
TRUE(шындық),
Логикалық амалдар:
1 бит: 1-true;
FALSE(жалған)
және (and), немесе (or),
0-false.
жоқ (not). Қатынас
амалдары
Символдық
Компьютерлік алфа-
Қатынас амалдары
Символдық
виттің кез келген сим-
кодтау кесте
волы. Мысалы:
кодтары.
‘d’, ‘5’, ‘+’,‘S’
1 символ - 1
байт
Шамаларменорындалатынәрекеттерді– алгоритм (бағдарлама) анықтайды және мына иерархиялық ұғымдарға негізделеді: амал–өрнек–бұйрықнемесеоператор–бұйрықтаржүйесі (5.4-сурет) [26, 42].
Амал– деректермен жасалатын ең қарапайым тұтас әрекет. Деректердің негізгі типтері үшін жасалатын амалдар 5.1-кестеде аталған.
Өрнек–кейбір шаманы есептеу үшін алгоритмде (бағдарламада) амалдардың тізбегін анықтайтын жазба. Өрнектер – амалдарды және дөңгелек жақшаларды қолданып, әртүрлі типті тұрақтылардан, айнымалылардан, функцияларданқұрастырылған жазба. Өрнектің есептелу реті жақшаларменжәне операндалардың үстемділігіменанықталады.
-сурет. Шамаларменәрекеттерді орындауқұралдары
Бұйрық– алгоритмнің жазбасына кіретін, орындаушыға кейбір тұтас әрекетті орындау нұсқамасы. Меншіктеу,енгізу,шығару– қарапайымбұйрықтар, тармақталужәне циклді– құраманемесе құрылымдыбұйрықтар деп атайды.
Бағдарламалау тілдерінде амалдардың, өрнектердің, бұйрықтардың жазылу ережелері қатал анықталған. Алгоритмдерді алгоритмдік тілде немесе блок-схемалар түрінде сипаттағанда синаксистік ережелерді ұстану міндетті емес. Мысалы, алгоритмдік тілде әр бұйрық жеке жолда жазылса, онда соңында нүктелі үтірді қоймаса да болады, немесе көбейту амалында математикалық: , бағдарламалық: * белгілері жазыла береді.
Әйтсе де, алгоритм ары қарай қолданылатын бағдарламалау тіліне бейімделген болуы қажет. Бейсик тілінде дәрежеге шығару амалы бар (жазылуы: Х^5), сондықтан алгоритмдік тілде х5немесе х^5 түрінде жазуға болады. Ал, Паскаль тілінде дәрежеге шығару амалы болмағандықтан, алгоритмде ол амалды қолданудың қажеті жоқ, мына түрде: х*х*х*х*х жазуға болады. Әйтсе де, Паскаль тілінде дәрежеге шығару expжәне ln: функциялары арқылы ұйымдастырылады: ху=eylnx exp(y*ln(x)).
Айнымалыжәнеменшіктеуұғымдарыбағдарламалауда – түйіндіұғымдар болып табылады. Есептелу алгоритмінің орындалу процесі – тізбекпен айнымалы мәндерінің өзгеру процесі. Қорытындысында белгіленген айнымалылар ізделіген нәтижені алады.
Меншіктеунәтижесіндеайнымалыбелгілібірмәндіалады.6.17-суретте ұсынылған ОБЖ-не кіретін бұйрықтардың ішінен – енгізужәне меншіктеубұйрықтары меншіктеуді орындайды.
Көбінесе меншіктеудіңмәнінтолық түсінбеудің салдарынан, оқушылардың бағдарламалауды толық игере алмайтынын, педагогикалық тәжрибе көрсетуде. Сондықтан мұғалімдерге осы мәселеге ерекше көңіл бөлу қажет. Меншіктеу бұйрығының түрі:
<айнымалы> := <өрнек> Бұйрықтағы «:=» белгісін, «меншіктеу» – деп оқу қажет. Бұл нұсқау мына әрекеттер тәртібін белгілейді:
өрнекті есептеу;
шыққан нәтижені айнымалыға меншіктеу.
Меншіктеубұйрығыоңнансолғақарайорындалады.Осыған оқушылардың назарын аудару қажет. Меншіктеу бұйрығын математикалық теңдікпен шатастыруға болмайды!
Әдетте, меншіктеудіжәне теңдіктібірдей санайтын оқушыларға, мынадай: Х:= Х+1 бұйрық мүлдем түсініксіз болып көрінеді. Мұндай математикалық теңдіктің болуы мүмкін емес!
Бұл бұйрықтың мәнін былай түсіндіру керек: айнымалыХ-ңмәніне1қосыладыда,нәтижесіқайтаданосыХайнымалысынаменшіктеледі.Басқаша айтқанда, бұйрық Х айнымалысының мәнін бірге өсіреді. Мынадай жаттығуларды талдауға болады:
Мысалы: мына меншіктеу бұйрықтарының тізбегі орындалу нәтижесінде X айнымалысының ақырғы мәнін анықтайық. Әр бұйрықтың тұсына фигуралық жақша ішіне Х айнымалысына жаңадан меншіктелген нәтижені жазамыз:
Х:=2 {2}
Х:=Х*Х {4}
Х:= Х*Х*Х {64}
Бағдарламалауда енгізуұғымы – деректерді кез келген сыртқы құрылғыдан жедел жадыға жіберу процесі деп түсініледі. Әйтсе де, бағдарламалаудың бастамасында деректерді жедел жадыға енгізу негізінен пернетақта арқылы жүзеге асады. Бұл жағдайда енгізуді компьютер адаммен бірлесіп жасайды. Енгізу бұйрығы бойынша, процессордың жұмысы үзіледі және пайдаланушының әрекетін тосады; пайдаланушы пернетақтада енгізілетін деректерді тереді, және пернесін басады; мәндер енгізілетін айнымалыларға меншіктеледі.
Оқыту әдістемесінде дидактикалықпринциптердіңеңбастысыкөрнекілікекені белгілі. Әрбір оқылатын ұғым, оқушылардың санасында қалайда бір көзбен шолынатын бейнемен бекітілуі қажет.
Мысалы, екісандықосу алгоритмініңорындалуын, оқушы мынадай түрде түсінуі керек (5.5-сурет [42]):
-сурет. Есептеуалгоритмінкомпьютердіңорындауы
Алгоритмді ізсалу(трассировка) тәсілімен жазбаша орындау бағдарламалаудытүсінудіңтиімдіәдістемелікқұралыболып табылады. Ол ізсалу кестесі арқылы жүзеге асады.
Шамалармен жұмыс жасау алгоритмдерін оқытудың әдістемелік мәселелерін талдауын, бағдарламалауаспектісінде қарастыратын боламыз.