Файл: Дріс таырыбы 1. Бадарламалау тілдері жне алгоритм ымына кіріспе. Дріс жоспары.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.01.2024
Просмотров: 124
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Дәріс тақырыбы №1. Бағдарламалау тілдері және алгоритм ұғымына кіріспе.Дәріс жоспары.
Проблемалы – бағдарланған тілдересептерді сипаттау үшін қызмет атқарады.Бірақ алгоритмдік тілдер өздігінен барлық проблеманы, тіптен программаны да шеше алмайды. Мұндай тілде жазылған программа компьютерде тікелей орындалмайды, ол орындалу үшін алдын ала сол компьютердің машина тіліне аудару жеткілікті қиын мәселе болып табылады.Алгоритмдік тілден программаны машина тіліне аудару жұмысын компьютердің әмбебаптығын пайдаланып, оның өзіне жүктеуге болады. Бұл үшін әрбір алгоритмдік тілден машина тіліне формальды аударуға яғни аударудың ережесін алгоритм түрінде тұжырымдауға мүмкіндік беретіндей болуы керек. Егер, осы алгоритмді бір рет машиналық программа түріне келтіріп алсақ, онда одан кейін осы программаның көмегімен компьютердің өзі берілген алгоритмдік тілде жазылған кез келген программаны нақтылы компьютердің машина тіліне аударып бере алады. Мұндай арнайы аудармашы-программа жоғарыда айтқанымыздай транслятордеп аталады.2 Бағдарламалау тілдеріне қойылатын талаптар мен олардың классификациясыБағдарламалаудың алгоритмдік тілдерінің мақсаты– математикалық және логикалық мәндер мен операцияларды адамның да, компьютердің де математикалық моделімен (математикалық шамалардың жиыны) көрсетілген есепті бір мәнді және дұрыс шеше алуы үшін сипаттау. Алайда алгоритмдік тілдегі сипаттау адамның табиғи тіліндегі сипаттауы да мәндердің көптілігінен зардап шегуі мүмкін. Әр түрлі алгоритмдік тілдерде сипатталған есептеу процедураларының кезектілігі бірдей дұрыс нәтижеге әкелуі мүмкін, бірақ түрлі командаларды қажет етеміз, демек машина уақыты шығындарын аңғарамыз. Сөйтіп, әр түрлі тілдегі бағдарламаны құру бағдарламашылардың әр түрлі біліктілігін және олардың еңбегінің шығынына әкеліп соғады. Демек, бағдарламалаудың алгоритмдік тілін жасау үшін логика да, білім де, шығармашылық та, өнер де, математикада қажет. Сонымен қатар бір топтағы есептерді бағдарламалауға арналған тіл есептердің басқа тобына қолданылу мүмкіндігінің жоқ болуы ықтимал. Ол тіл машиналардың бір түрімен тиімді, ал екінші машиналармен қолданылу барысында сәтсіздікке келіп тірелуі әбден мүмкін.Бұл жағдай бағдарламалау тілдерінің жүздеген немесе мыңдаған нұсқаларының дамуына жағдай жасайды. Ешкім де неше бағдарламалау тілдерінің бар екендігіне жауап бере алмайды, соның өзінде көптеген елдерде әр түрлі институттар мен фирмалар жаңа тілдерді құруда.
Бұған қарамастан бағдарламалау тілдеріне деген қойылатын талаптарды топтауға болады және сол тілдерді олардың ерекшеліктері бойынша бөлуге болады. 3. Алгоритмнің сипаттамасы, қасиеттері, типтері, жазу ережесіКез келген есепті шешу - берілген алғашқы мәліметтерді пайдаланып, нәтиже алуды талап етеді, яғни есепті шешу алгоритмі алғашқы мәліметтерді бірте-бірте тұрлендіру арқылы нәтиже алу жолын сипаттайды.Көздеген мақсатқа жетуге, қойылған мәселені шешуге бағытталған әрекеттер тобын іске асыру үшін атқарушыға түсінікті әрі дәл нұсқаулар жиынтығы алгоритм деп анықталады. «Алгоритм» сөзi мағынасы жағынан нұсқау, жарлық, рецепт, ереже, тәртiп, заң, жоба сөздерiне синоним болып келедi, Алгоритм сөзi Орта Азияның орта ғасырлык ұлы ғалымы - Mухамед ибн Mұса. Хорезмидiң атымен байланысты шыққан. Қойылған мәселені шешудің дұрыс алгоритмі мынадай негізгі қасиеттерге ие болуы тиіс: анықтылық, нәтижелілік, жалпыламалық, дискреттік.Алгоритмнің анықтылығы дегенде оның әрбір адымы әртүрлі түсінікке жол бермейтін, дәл және анық түжырымдалған ережені түсінеміз.Алгоритмнің нәтижелілігі деп санаулы қадам жасалған соң қарастырылған мәселенің не шешімі табылатынын, не шешімі жоқтығы анықталатынын айтады.Алгоритмнің жалпыламалық қасиеті бойынша дайын алгоритммен жеке бір есепті ғана емес, осы есеп класына тиісті кезкелген есепті шығару мҺмкін болуы тиіс.Алгоритмнің дискреттілігі деп алгоритммен анықталған есептеулерді жекеленген кезеңдерге (қарапайым амалдарға) жіктеуді ұғамыз.Алгоритмді
Бірақ табиғи тілде жазылған алгоритм компьютерде орындалмайды, өйткені бұл жағдайда дәлдік, нақтылық сақталмайды. Ал алгоритмді екінші көрсетілген жолмен жазу, қарапайым алгоритмдік тіл деп аталып, кеңінен қолданылып жүр. Мұны олардың ағылшын тіліне негізделіп жасалған программалау тілдеріне жақындығымен түсіндіруге болады.Алгоритмнің графиктік түрде кескінделуі – кең таралған әдіс. Бұл жазудың түсінікті, анық, көрнекі түрі болып табылады. Оны сызу ғана уақыт алады. Алгоритмдерді графиктік жолмен жазудың мемлекеттік стандарты айқындалған. Алгоритм схемасын оның блок-схемасы деп атайды.Блок-схемада пайдаланылатын фигуралар оның блоктары, ал оларды бір-бірімен қосатын сызықтар байланыс сызықтары деп аталады. Байланыс сызықтары тармақталған жағдайда оның бағытын көрсету үшін бағыттауыш белгісі қойылады. Блок-схема құрудың төмендегідей ережесі бар:
кодтар тілі деп аталады1. – сурет Программаны орындау кезеңдеріАлгоритмдік және программалау тілінде программа жазу – ыңғайлы болып табылады. Оларды белгілі бір машинада (компьютерде) орындау үшін сол программалау тілін машина тіліне автоматты түрде аударатын түрлендіргіш (аудармашы) программалар болуы керек, оларды трансляторлар деп атайды. Трансляторлар үш түрге бөлінеді: интерпретатор, компилятор және ассемблер.Интерпретатор – берілген программаның әрбір жолын (командасын) жеке-жеке аударып отырып орындайтын транслятор.Компилятор – бірден барлық программа мәтінін толық аударып машина тіліндегі бір модуль түріне келтіреді де, сонан соң сол модульді компьютер жадына қайта жазып алып, оны кейін тек біздің қалауымыз бойынша орындайды.Ассемблер – тек автокад түрінде, яғни ассемблер тілінде жазылған программаларды ғана машина тіліне аударады.Негізгі әдебиеттер тізімі1. Қойбағарова Т. Қ. Turbo Pascal программалау тілі: оқу құралы. - Павлодар, 20122. Көксеген Ә. Е. Алгоритмдеу және программалау тілдері: оқулық. - Алматы, 20113. Шайқұлова А. Ә. Бағдарламалық жасақтаманың қазіргі заманғы жабдықтары: оқулық.- Астана, 20104. Культин, Н. Turbo Pascal 7.0. - Спб, 1998Қосымша әдебиеттер тізімі1. Муканов М. М. Основные идеи и понятия программированного обучения-Алма-Ата, 19732.Ершов А. П. Введение в теоретическое программирование: уч. пособие. - М., 1977
-
Бағдарламалау тілдері жайындағы жалпы мағлұматтар. -
Бағдарламалау тілдеріне қойылатын негізгі талаптар -
Алгоритмнің сипаттамасы, қасиеттері, типтері, жазу ережесі
-
машинаға тәуелді тілдер;
-
машинаға тәуелсіз тілдер;
-
машина тілі; -
машинаға бағдарланған тілдер;
-
символдық кодтау тілдері, басқаша айтқанда мнемокодтар; -
макротілдер.
-
процедулалы- бағдарланған тілдер; -
проблемалы – бағдарланған тілдер
Проблемалы – бағдарланған тілдересептерді сипаттау үшін қызмет атқарады.Бірақ алгоритмдік тілдер өздігінен барлық проблеманы, тіптен программаны да шеше алмайды. Мұндай тілде жазылған программа компьютерде тікелей орындалмайды, ол орындалу үшін алдын ала сол компьютердің машина тіліне аудару жеткілікті қиын мәселе болып табылады.Алгоритмдік тілден программаны машина тіліне аудару жұмысын компьютердің әмбебаптығын пайдаланып, оның өзіне жүктеуге болады. Бұл үшін әрбір алгоритмдік тілден машина тіліне формальды аударуға яғни аударудың ережесін алгоритм түрінде тұжырымдауға мүмкіндік беретіндей болуы керек. Егер, осы алгоритмді бір рет машиналық программа түріне келтіріп алсақ, онда одан кейін осы программаның көмегімен компьютердің өзі берілген алгоритмдік тілде жазылған кез келген программаны нақтылы компьютердің машина тіліне аударып бере алады. Мұндай арнайы аудармашы-программа жоғарыда айтқанымыздай транслятордеп аталады.2 Бағдарламалау тілдеріне қойылатын талаптар мен олардың классификациясыБағдарламалаудың алгоритмдік тілдерінің мақсаты– математикалық және логикалық мәндер мен операцияларды адамның да, компьютердің де математикалық моделімен (математикалық шамалардың жиыны) көрсетілген есепті бір мәнді және дұрыс шеше алуы үшін сипаттау. Алайда алгоритмдік тілдегі сипаттау адамның табиғи тіліндегі сипаттауы да мәндердің көптілігінен зардап шегуі мүмкін. Әр түрлі алгоритмдік тілдерде сипатталған есептеу процедураларының кезектілігі бірдей дұрыс нәтижеге әкелуі мүмкін, бірақ түрлі командаларды қажет етеміз, демек машина уақыты шығындарын аңғарамыз. Сөйтіп, әр түрлі тілдегі бағдарламаны құру бағдарламашылардың әр түрлі біліктілігін және олардың еңбегінің шығынына әкеліп соғады. Демек, бағдарламалаудың алгоритмдік тілін жасау үшін логика да, білім де, шығармашылық та, өнер де, математикада қажет. Сонымен қатар бір топтағы есептерді бағдарламалауға арналған тіл есептердің басқа тобына қолданылу мүмкіндігінің жоқ болуы ықтимал. Ол тіл машиналардың бір түрімен тиімді, ал екінші машиналармен қолданылу барысында сәтсіздікке келіп тірелуі әбден мүмкін.Бұл жағдай бағдарламалау тілдерінің жүздеген немесе мыңдаған нұсқаларының дамуына жағдай жасайды. Ешкім де неше бағдарламалау тілдерінің бар екендігіне жауап бере алмайды, соның өзінде көптеген елдерде әр түрлі институттар мен фирмалар жаңа тілдерді құруда.
Бұған қарамастан бағдарламалау тілдеріне деген қойылатын талаптарды топтауға болады және сол тілдерді олардың ерекшеліктері бойынша бөлуге болады. 3. Алгоритмнің сипаттамасы, қасиеттері, типтері, жазу ережесіКез келген есепті шешу - берілген алғашқы мәліметтерді пайдаланып, нәтиже алуды талап етеді, яғни есепті шешу алгоритмі алғашқы мәліметтерді бірте-бірте тұрлендіру арқылы нәтиже алу жолын сипаттайды.Көздеген мақсатқа жетуге, қойылған мәселені шешуге бағытталған әрекеттер тобын іске асыру үшін атқарушыға түсінікті әрі дәл нұсқаулар жиынтығы алгоритм деп анықталады. «Алгоритм» сөзi мағынасы жағынан нұсқау, жарлық, рецепт, ереже, тәртiп, заң, жоба сөздерiне синоним болып келедi, Алгоритм сөзi Орта Азияның орта ғасырлык ұлы ғалымы - Mухамед ибн Mұса. Хорезмидiң атымен байланысты шыққан. Қойылған мәселені шешудің дұрыс алгоритмі мынадай негізгі қасиеттерге ие болуы тиіс: анықтылық, нәтижелілік, жалпыламалық, дискреттік.Алгоритмнің анықтылығы дегенде оның әрбір адымы әртүрлі түсінікке жол бермейтін, дәл және анық түжырымдалған ережені түсінеміз.Алгоритмнің нәтижелілігі деп санаулы қадам жасалған соң қарастырылған мәселенің не шешімі табылатынын, не шешімі жоқтығы анықталатынын айтады.Алгоритмнің жалпыламалық қасиеті бойынша дайын алгоритммен жеке бір есепті ғана емес, осы есеп класына тиісті кезкелген есепті шығару мҺмкін болуы тиіс.Алгоритмнің дискреттілігі деп алгоритммен анықталған есептеулерді жекеленген кезеңдерге (қарапайым амалдарға) жіктеуді ұғамыз.Алгоритмді
-
қарапайым тілмен (cөзбен және формулалар арқылы) жазып көрсетуге -
схема (графиктік жол) арқылы кескіндеуге -
алгоритмдік тілде (программалау тілінде) жазуға болады.
-
табиғи тілдегі жазылуы; -
белгілі бір түйінді сөздер – терминдер (псевдокодтар – жалған кодтар) арқылы қысқаша тізбекті түрде жазу, мұны қарапайым алгоритмдік тіл деп те айтады; -
графиктік жолмен (блок – схема арқылы) жазу. -
програмалау тілдеріндегі жазылуы.
Бірақ табиғи тілде жазылған алгоритм компьютерде орындалмайды, өйткені бұл жағдайда дәлдік, нақтылық сақталмайды. Ал алгоритмді екінші көрсетілген жолмен жазу, қарапайым алгоритмдік тіл деп аталып, кеңінен қолданылып жүр. Мұны олардың ағылшын тіліне негізделіп жасалған программалау тілдеріне жақындығымен түсіндіруге болады.Алгоритмнің графиктік түрде кескінделуі – кең таралған әдіс. Бұл жазудың түсінікті, анық, көрнекі түрі болып табылады. Оны сызу ғана уақыт алады. Алгоритмдерді графиктік жолмен жазудың мемлекеттік стандарты айқындалған. Алгоритм схемасын оның блок-схемасы деп атайды.Блок-схемада пайдаланылатын фигуралар оның блоктары, ал оларды бір-бірімен қосатын сызықтар байланыс сызықтары деп аталады. Байланыс сызықтары тармақталған жағдайда оның бағытын көрсету үшін бағыттауыш белгісі қойылады. Блок-схема құрудың төмендегідей ережесі бар:
-
блок-схеманың басын және соңын міндетті түрде көрсетіп тұратын блок болуы керек; -
блок-схемада бірімен-бірі қосылмай қалған блоктар болмауы керек; -
блок-схемада блоктар орындалу реті бойынша тізбектеле орналасуы қажет; -
арифметикалық амалдарды орындайтын блоктардың бір ғана ену, бір ғана шығу сызығы, ал шарттың орындалуын тексеретін ромб түріндегі логикалық блоктың бір ену, екі шығу сызығы болуы қажет. Ал алтыбұрышты фигурамен берілген цикл басы блогының екі ену және екі шығу сызығы болады.
кодтар тілі деп аталады1. – сурет Программаны орындау кезеңдеріАлгоритмдік және программалау тілінде программа жазу – ыңғайлы болып табылады. Оларды белгілі бір машинада (компьютерде) орындау үшін сол программалау тілін машина тіліне автоматты түрде аударатын түрлендіргіш (аудармашы) программалар болуы керек, оларды трансляторлар деп атайды. Трансляторлар үш түрге бөлінеді: интерпретатор, компилятор және ассемблер.Интерпретатор – берілген программаның әрбір жолын (командасын) жеке-жеке аударып отырып орындайтын транслятор.Компилятор – бірден барлық программа мәтінін толық аударып машина тіліндегі бір модуль түріне келтіреді де, сонан соң сол модульді компьютер жадына қайта жазып алып, оны кейін тек біздің қалауымыз бойынша орындайды.Ассемблер – тек автокад түрінде, яғни ассемблер тілінде жазылған программаларды ғана машина тіліне аударады.Негізгі әдебиеттер тізімі1. Қойбағарова Т. Қ. Turbo Pascal программалау тілі: оқу құралы. - Павлодар, 20122. Көксеген Ә. Е. Алгоритмдеу және программалау тілдері: оқулық. - Алматы, 20113. Шайқұлова А. Ә. Бағдарламалық жасақтаманың қазіргі заманғы жабдықтары: оқулық.- Астана, 20104. Культин, Н. Turbo Pascal 7.0. - Спб, 1998Қосымша әдебиеттер тізімі1. Муканов М. М. Основные идеи и понятия программированного обучения-Алма-Ата, 19732.Ершов А. П. Введение в теоретическое программирование: уч. пособие. - М., 1977