1 билет Алгоритм ұғымы. Алгоритмнің анықталу жолдары. Алгоритмнің графигі


билет Алгоритмнің негізгі құрылымдары



жүктеу 55,45 Kb.
бет3/15
Дата03.02.2022
өлшемі55,45 Kb.
#35492
1   2   3   4   5   6   7   8   9   ...   15
698 algoritm

2 билет Алгоритмнің негізгі құрылымдары

Алгоритм негізгі 3 базалық құрылымға бөлінеді:

1)     сызықтық

2)     тармақталушы

3)     циклдік.

Сызықтық алгоритмдерде есеп шешімінің қадамдары бірінен кейін бірі тізбектей орындалады. 

  Тармақталушы алгоритмдерде алдымен қандайда бір шарт тексеріледі және шарттың орындалуына немесе орындалмауына сәйкес есептеу процесінің бірі орындалады.

4 билет

Алгоритмдік тіл (ағылш. algorіtmіc — алгоритмдік және language — тіл) — ЭЕМ-мен шығарылатын есептердің алгоритмін бірмәнді түрде жазуға арналған жасанды тіл. Ол белгілер(символдар) жиынтығынан (Алгоритмдік тіл алфавитінен), синтаксистік ережелер мен семантикалық анықтамалардан құралған. Алгоритмдік тілдің негізгі белгілері латын не орысалфавиттері әріптері, қандай да бір таңбалар мен шартты белгілер болуы мүмкін. Сөздер, сөз тіркестері (фразалар, сөйлемдер) , кестелер мен кестелер жүйесі Алгоритмдік тілдің құрылымы болып табылады. Түсіндіру ережелері ЭЕМ-де аппараттармен жүзеге асырылатын Алгоритмдік тіл машиналық тіл деп аталады. Алгоритмдік тіл табиғи тілден бірмәнділігі мен айқындылығы жағынан ерекшеленеді. Есептеу машинасына Алгоритмдік тілін пайдаланғанда бағдарламалау мен машина жұмысын үйлестіретін арнайы бағдарламалаушы —процессор қолданылады. Ол бағдарламаны енгізу, машиналық, синтаксистік, семантикалық талдаулар, формальды қателерді анықтау, бағдарламаны орындау т.б. жұмыстарды атқарады. Алгоритмдік тілдің бірнеше түрі бар. Олардың кейбіреулері ғана (мыс., алгол, кобол, лисп, Пл/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лде жазу.

ЭЕМ көмегімен есептерді шешу үшін бағдарламалық тіл қажет болды. Машиналық кодпен бағдарламалау деп нақты алгоритмді машиналық бұйрық тілінде сипаттауды айтады. Программистер машиналық операциялардың барлық кодтарын, олардың қолдану ерекшеліктерін және оларды сақтайтын жадының нақты ұяшықтарының адресін білу керек. Мұндай бағдарламаларды құру кезінде өте қиын болды. Сондықтан, программистер өздерінің жұмыстарын жеңілдету үшін машиналық кодтарға символдық аттарды аударатын тіл ойлап тапты. Бір сөзге сәйкес келетін екілік кодты есте сақтағаннан көрі, сол сөздің өзін есте сақтаған оңай. Символдық белгілермен жұмыс істейтін бағдарламаларды ассемблер деп атайды. Мұндай машиналық бағдарламалық тілдер төменгі деңгейдегі тілдерге жатады.

1955ж. ең бірінші жоғарғы деңгейдегі тіл пайда болды. Мұндай тілде жазылған бағдарламалар жеке машиналар бұйрықтарының жиынтығынан емес,операторлар деп аталатын ірі элементтерден тұрады. Осындай тілдер алгоритмді сипаттауға бағытталған. Сондықтан, олар алгоритмдік тілдер деп те аталады. ЭЕМ тек машиналық тілді түсінетін болғандықтан алгоритмдік тілде жазылған бағдарлама орындалар алдында транслятор деп аталатын арнайы бағдарлама арқылы машиналық тілге аударылады. Translator ағылшын тілінен аударғанда “аудармашы” дегенді білдіреді. Трансляторда бағдарламадағы алгоритмдік тілдің барлық ережелері және оны машиналық тілге аударатын құрылғы енгізілген. Транслятордың екі түрі бар:

1) Интерпретатор (Interpretation) – бағдарламалау тілінде берілген бағдарламаны аудара отырып орындау әдісі.

2) Компилятор (Compile-собирать) – бағдарламаның барлық мәтіндері аударылып, жинақталғаннан кейін орындалатын әдіс.

Ең алғашқы алгоритмдік тіл 1955 ж. пайда болды. Ол Фортран тілі. Ол ғылыми-техникалық және инженерлік есептерді шешуде қолданылды. Фортранды (Formula translator ағылшын сөзінің алғашқы буындарынан құрылған – формулалар аудармасы) Джон Бэкусаның басқаруымен IBM фирмасының қызметкерлері құрды. Көп жылдар өте келе Фортранның көптеген нұсқалары пайда болды. Осы тілмен көптеген тілдердің кітапханасы жазылды.

1960ж. Алгол (Algoritmic language – алгоритмдік тіл) пайда болды. Бұл тіл де ғылыми жұмыстарға арналды және соңғы тілдердегі блоктық құрылым түсінігі енгізілді.

IBM фирмасыныңі қолдауымен Кобол (Cobol ағылшынның Comnon business oriented language – жұмысқа бағытталып жалпы қабылданған тіл) тілі пайда болды. Ол экономикалық есептерді шешуге, ақпараттарды өңдеуге арналған.

1961ж.американдық профессор Джон Маккарти “ЛИСП” (List procssing language – тізім өңдеу тілі) бағдарламалау тілін ойлап тапты.

1965ж. Бейсик тілі пайда болды.

1967-1968жж. PL/1 (Programming language – бағдарламалық бағытталған әмбебап тіл) бағдарламалау тілі IBM фирмасында пайда болды. Бұл тіл қуатты, қиын тіл. Ол жоғарғы оқу орындарында, ғылыми зерттеу орталықтарында қолданылды.

1970ж. Никлаус Вирт Цюрих политехникалық университетінде Паскаль тілін ойлап тапты. Бұл тіл бағдарламаларды үйренуге жақсы бағытталған және қазіргі заманғы ЭЕМ-де әртүрлі есептерді тиімді шешуге мүмкіндік береді.

1973ж. Франциядағы Люммин университетінің Колмероэ және басқа да ғалымдары “Пролог” (Prolog-programmation en logique – логикалық бағдарламалау) бағдарламалау тілін ойлап тапты

1980ж. Ада бағдарламалау тілі пайда болды. Бұл тіл ағылшын поэты Лорд Байронның қызы, есептеуіш техника тарихындағы алғашқы программист Ада Лавлейс атына берілді. Ада тілі американың қорғаныс министрінің сұранысы бойынша әмбебап бағдарламалау тілі ретінде Францияда құрылды. Ол ең жаңа, қуатты бағдарламалау тілі болды. Оны Паскаль мен Алгол-68 тілдерінің ортақ қасиеттерінен құрған және ол қосымша қаситтерге де ие.

2, Алгоритмдік тіл (ағылш. algorіtmіc — алгоритмдік және language — тіл) — ЭЕМ-мен шығарылатын есептердің алгоритмін бірмәнді түрде жазуға арналған жасанды тіл. Ол белгілер (символдар) жиынтығынан (Алгоритмдік тіл алфавитінен), синтаксистік ережелер мен семантикалық анықтамалардан құралған. Алгоритмдік тілдің негізгі белгілері латын не орыс алфавиттері әріптері, қандай да бір таңбалар мен шартты белгілер болуы мүмкін. Сөздер, сөз тіркестері (фразалар, сөйлемдер) , кестелер мен кестелер жүйесі Алгоритмдік тілдің құрылымы болып табылады. Түсіндіру ережелері ЭЕМ-де аппараттармен жүзеге асырылатын Алгоритмдік тіл машиналық тіл деп аталады. Алгоритмдік тіл табиғи тілден бірмәнділігі мен айқындылығы жағынан ерекшеленеді. Есептеу машинасына Алгоритмдік тілін пайдаланғанда бағдарламалау мен машина жұмысын үйлестіретін арнайы бағдарламалаушы — процессор қолданылады. Ол бағдарламаны енгізу, машиналық, синтаксистік, семантикалық талдаулар, формальды қателерді анықтау, бағдарламаны орындау т.б. жұмыстарды атқарады. Алгоритмдік тілдің бірнеше түрі бар. Олардың кейбіреулері ғана (мыс., алгол, кобол, лисп, Пл/1, Фортран, Паскаль т.б.) кең тараған



5 сурак

Деннис Ритчи жазған Си тілінің таралу себебі: салыстырмалы түрде «төмен деңгейлі» тіл, сондықтан алгоритм жұмысының әрбір бөлімін бақылау мүмкіндігі бар және жоғары деңгейлі тілдер принцптері енгізілгендіктен, нақты бір компьютердің архитиктурасы ерекшелітерінен тәуелсіздігін қамтамасыз ету мүмкін болды. Жоғарғы деңгейлі тілдерден Си тілінің ерекшелігі: - операторлар түрі өзгеше; - көрсеткіштер жиі қолданылады; - басқа тілдерге қарағанда синтаксикалық ережелері аз, нәтижесінде компилятор тиімді жұмыс жасау үшін 256 Кб оперативті жады жеткілікті; - қызметші сөздерге қарағанда операторлар мен олардың комбинациялары көп; - алғашқыда Си тілінде 27 қызметші сөз ғана болған. Кейін ANSI Си тіліне және Microsoft C тіліне қызметші сөз қосылды, жалпы саны шамамен 50; - Көп программалау тілдерінде бар функциялар Си тілінде жоқ; - Си тілінде қосалқы енгізу шығару функциялары, математикалық функциялары және жолдармен жұмыс жасау функциялары жоқ, бірақ сол функциялардан және басқа функциялардан тұратын жеке кітапханалардан алу мүмкіндігі қарастырылған; - мәліметтер типін бақылау жеңіл, яғни программаның бір жерінде айнымалыны символ түрінде , екінші бір жерінде осы символдың ASCII коды ретінде қарастыруға болады; - Си тілінде қазіргі тілдері секілді барлық басқарушы конструкциялары бар(For, if / else,….); - Cи тілінде модулдік программалауға болады, яғни программаның әртүрлі бөлігін жеке копиляциялауға болады; - Ассемблер тілінде жазылған ішкі программаларды шақыруға болады; - көрсеткіштер яғни жады аймақтарынан берілген адрес бойынша қарау программаны орындау жылдамдығын арттырады. Көрсеткіштер көп тілде қолданылады, ал көрсеткіштерге арифметикалық амалдар тек Си тілінде қолданылады. - Си тілінде барлық массивтер бір өлшемді, бірақ Си тілінде бір өлшемді массивтерден тұратын конструкциялар бар, яғни көп өлшемді массивтер құрылады; - тек қажетті кітапханалар шақырылатын болғандықтан жады тиімді қолданылады; - басқа тілдердегідей қосалқы функциялар; - көптеге мамандандырылған функциялар кітапханаларының жинытығы бар. Кемшілігі: - Си тілінде мәліметтер типі қатаң қадағаланбайды, сондықтан Си тілінде тәжірибелі программист байқағанмен жаңа үйренуші байқамайтын айнымалы мәндеріне өзгерістер болуы мүмкін. 36 Мысалы, бір өрнекте (=) меншіктеу операторы бірнеше рет қолданылуы мүмкін. Сондықтан нәтижесінің типі түсініксіз және қиын анықталады. Бірақ оны қолдану арқылы тілдің қуаты арттырылған. С++ тілі Си тілінің толықтырылған, яғни объектілі бағытталған программалау(ОБП) құралдарымен толықтырылған жиыны деуге болады. Си және С++ тілдерінің айырмашылығы: -құрылымдар мен класстар аттары мәләметтер типтерінің аттары болып табылады. С- де класс түсінігі жоқ.




жүктеу 55,45 Kb.

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   15




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау