Алгоритмді бейнелеу әдістері


Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 23 бет
Таңдаулыға:
ЖОСПАР:
КІРІСПЕ
1 БӨЛІМ. АЛГОРИТМ ЕРЕЖЕЛЕРІНЕ ШОЛУ
1. 1 КЕЗ КЕЛГЕН ЕКІ ОНДЫҚ САНДЫ КӨБЕЙТУГЕ АРНАЛҒАН ЕРЕЖЕ
1. 2 ЕВКЛИД ЕРЕЖЕСІН ПАЙДАЛАНА ОТЫРЫП ЕКІ НАТУРАЛ САННЫҢ ЕҢ ҮЛКЕН ОРТАҚ БӨЛГІШІН ТАБУ
1. 3 АЛГОРИТМДЕР ТЕОРИЯСЫ
2 БӨЛІМ. АЛГОРИТМДІ БЕЙНЕЛЕУ ӘДІСТЕРІ.
2. 1 БЕЙНЕЛЕУ ӘДІСТЕРІНЕ ҚЫСҚАША ШОЛУ
2. 2 БЛОК - СХЕМА ТІЛІ
2. 3 АҒАШ ТӘРІЗДЕС БЕЙНЕЛЕУ ӘДІСІ
2. 4 ЖАСАНДЫ ТІЛ
3 БӨЛІМ. АЛГОРИТМДЕГІ БАСҚАРУ ҚҰРЫЛЫМДАРЫ.
3. 1 БАСҚАРУ ҚҰРЫЛЫМЫНЫҢ ҰҒЫМЫН ҚАРАСТЫРУ
3. 2ТІЗБЕКТЕУ
3. 3ТАРМАҚТАУ.
3. 4ҚАЙТАЛАУ
ҚОРЫТЫНДЫ
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ
КІРІСПЕ
Информатикада өңдеу ережесін алгоритм деп атайды. «Алгоритм» деген сөз ІХ ғасырдағы Орта Азияның ұлы ғалымы әл - Хорезм есімінің латынша жазылуынан шығады.
Ол арифметикалық амалдардың /қосу, азайту, көбейту, бөлу/ көп разрядты бүтін сандар үшін орындалу ережелерін алғаш құрастырған. Масыла, көп разрядты екі бүтін санды қосу үшін мынадай ережені орындау керек:
- Екі көпразрядты бүтін сандарының мәндерін анықтау;
- Осы екі санды бірінің астына бірін разрядтарын сәйкестендіріп жазу;
- Егер осы сандардыьң біреуінің үлке разрядтары жетіспесе, оны нөлдермен толтыру;
- Ең кіші разрядта қосу амалын орындау және келесі разрядты қарастыруға көшу;
Бұл жағдайда, келесі үлкен разрядқа өтетін бірлік пайда болса, онда оны еске сақтап қою керек;
- Барлық разрядтар біткеше оңнан солға жылжи қарастырып, есте сақталған бірлікті ескеріп, және пайда болған жаңа үлкен разрядқа өтетін бірлікті қайтадан еске сақтай отырып әрбір разрядта қосу амалын орындау;
- Нәтиже ретінде барлық разрядтарда қосу амалы орындалғаннан кейін, шыққан санды аламыз және есте сақталған бірлік болса, онда оны нәтижені ең үлкен разрядтың мәні ретінде есептейміз.
Бұл жазылған ережемен екі көпразрядты ббүтін санды қосу үшін орындаушының қазақ тілін білу және бір разрядты сандарды қосатын қабілеті болуы қажет.
Төмендегі кестеде екі санның /997 және 76/ қосындысының жазылған ереже бойынша табылуы көрсетілген.
- кесте. Екі санның /997 және 76/ қосындысының жазылған ереже бойынша табылуы
997
76
997
076
997
076 1
3
997
076 1
73
997
076 1
073
1 БӨЛІМ. АЛГОРИТМ ЕРЕЖЕЛЕРІНЕ ШОЛУ
1. 1 КЕЗ КЕЛГЕН ЕКІ ОНДЫҚ САНДЫ КӨБЕЙТУГЕ АРНАЛҒАН ЕРЕЖЕ
Жоғарыдағыдай ережелерді құрастырған кезде әрдайым орындаушының қабілетін ескерген жөн. себебі кейбір орындаушы берілген ережені орындау алады да, ал кейбіреулері ондай қабілеті болмайды.
Енді бізге керк орындаушының однық сан деген ұғымды білетін, екі көп разрядты бүтін санды көрбейте алатын кез келген екі ондық санды көбейтуге болатын ережені құрастырайық:
- Екі ондық санның мәнтерін анықтау;
- Осы сандардағы ондық белгісін көрсететін үтірді ескермей, оларды бірінің астынав бірін бүтін көбейткіштер ретінде жазу;
- Көбейткіштерді көбейтіп көбейтіндіні табу;
- Берілген екі ондық сандарындағы үтірдің оң жағындағы таңбалардың санын қосу;
- Нәтиже ретінде үтірден кейінгі таңбалардың саны 4 - қадаммен шыққа саңға тең болатындай етіп жазылған 3 - қадамнан шыққан көбейтіндіні аламыз. Мұнда көбейтіндідегі барлық таңбалардың саы 4 - нөл қойылады да, үтірдің оң жағына алдымен жетіспеген таңбаларжың орнына нөлдер, соныңан көбейтіндінің мәні жазылады.
Осындай арифметикалық амалдарды орындау ережелерін алгоритм деп түсінсе, кейін келе «Алгоритм» деген сөз түрлі математикалық есептерді шешу ережелерін белгілеуге қолданыла бастады. Мысалы, грек ғалымы Евклид құрастырған екі натурал санның ең үлкен ортақ бөлшігін табатын келесі бөлімде қарастырылатын төмендегі ереже Евклид алгоритмі деп аталады.
1. 2 ЕВКЛИД ЕРЕЖЕСІН ПАЙДАЛАНА ОТЫРЫП ЕКІ НАТУРАЛ САННЫҢ ЕҢ ҮЛКЕН ОРТАҚ БӨЛГІШІН ТАБУ
- Екі натурал санын алып, олардың мәндерін анықтау.
- Егер екісан өзара тең болса, онда нәтиже ретінде осы сандардың кез келгенін алу керек, немесе осы сандардың үлкенін анықтау керек;
- Үлкен санжы үлкен сан мен кіші санның айырмасына алмастыру керек;
- Әрекетті 2 - қадамнан бастап қайталау;
Бұл алгоритм екі натурал сан М, К берілсе және М>К, онда М, К санждарының ең үлкен ортақ бөлгіші М-К, сандарының ең үлкен ортақ бөлгіші М, К, К сандарыны~ең үлкен ортақ бөлгішіне тең болады деген қасиетке негізделген.
Жоғарыда келтірілген мысалдардан алгоритмдегі көрсетілген нұсқауларды орындаушы адам өте қарапайым және бір - біріне ұқсас болып келетін көптеген амалдарды орындайтынын байқаға болады.
Осындай амалдарды орындауды алды алаоқытылған басқа орындаушыға тапсыруға болатыны да айқын.
Демек, осыған байланысты орындаушының әрекетін автоматтандыру идеясы шығады.
Бұл идеяны жүзеге асыру үшін алдымен алгоритм ұғымына дәл анықтама беру қажет. Осы пікір математиканың «Алгоритмдер теориясы» деген жаңа саланың пайда болуына септесті. Айтылған сала алгоритм ұғымына дәл математикалық анытама беруге және оған байланысты туатын теориялық проблемаларды зерттеуге бағытталған ғылым.
1. 3 АЛГОРИТМДЕР ТЕОРИЯСЫ
Алгоритмдер теориясы саласындағы қол жеткен жетістіктер алгоритмдердің орындалуын автоматандыруға мүмкіндік Берге есептегіш техникасын жасауға болатынын дәлелдеді.
Есептегіш техниканың пайда болуы алгоритм ұғымының кең таралуына шарт болды. Алгоритм деп тек математикадық есептерді ғана емес, басқа да есептерді шешетін ережелерді айта бастайды. Олардың тобына экономикалық есептер, басқару есептері, бір тілден екінші тілге аударуесептері, т. б. жатады.
Қазіргі кезде есептегіш техниа қолданылмайтын адамның қызмет саласын табу өте қиын. Бұл жағдай бүкіл адамзат алдына өте бір күрделі мәселе қойды. Ол алгоритмдерді құрастыра білу және оларды есептегіш техника түсіндіретін формада бейнелеу болып табылады.
Дегемен, алгоритмдерді құрастыруы үйрену үшін алгоримтнің математикалық дәл анықтамасын білу шарт емес. Оған алгоритмнің интуитивті анықтамасын, қасиеттерін және оның бейнелеу әдістерін біл жеткілікті.
Алгоритмнің интуитивті анықтамасын төмендегіднй беруге болады.
Анықтама: Алгоритм деп шекті сан қадам жасау арқылы белгілі бір кластағы кез келген есепті шешуге арналған түсінікті және дәл қай амалды қандай ретпен орындалатынын көрсететін нұсқаулар тізбегін айтамыз.
Берілген анықтамадан алгоритмнің мынандай қасиеттері шығады:
- Түсініктілік. Бұл нұсқаулардың орындаушыға түсінікті тілде жазылуын талап етеді.
- Дәлдік. Бұл нұсқаулардың бір мәнділігін талап етеді.
- Дискреттілік. Бұл нұсқаулардың тізбек құратындығын және олардың орындалуы жеке қадам жасауды талап ететінін көрсетеді.
- Шектілік. Бұл нұсқаулардың орындалуы шекті сан қадам жасау арқылы бітетіндігін және осыдан кейін нәтиже шығатындығын көрсетеді.
- Жалпыламалық. Бұл алгоритмнің жеке ьбір есеп шін емес, осы сияқты есептердің бүкіл класына арналғандлығын көрсетеді.
Енді, УЕОВ (М, К) арқылы М және К натурал сандарының ең үлкен ортақ бөлгішінің атауын белгілеп, жоғарыдағы Евклид алгоритмнін былай етіп жазуға болады:
- М, К натурал сандарының мәндерін анықтау;
- Егер М= К, онда ЕУОБ (М, К) М;
- Егер М>К, онда М М- К және 2 қадамнан бастап қайталау;
- К К-М және 2 қадамнан бастап қайталау.
Осы жазылған алгоритмнің қасиетін көрейік:
2 - кесте. Мысал
2 БӨЛІМ. АЛГОРИТМДІ БЕЙНЕЛЕУ ӘДІСТЕРІ.
2. 1 БЕЙНЕЛЕУ ӘДІСТЕРІНЕ ҚЫСҚАША ШОЛУ
Өткен бөлімде алгоримтді бейнелеудің бір әдісін, яғни адамдар қатынас жасайтын табиғи тілде бейнелеуді сипаттадым.
Алгоритмдеі нұсқаулар мен амалдарды анықтай түсу үшін кейде осы тілдерге математикалық өрнектер қосылады.
Енді алгоритмді кескіндеудің басқа да әдістерін қарастырмақпын. Ол алгоритмнің графикалық әдіспе және жасанды тілде бейнеленуі.
Жалпы, алгоритмнің бейнелнену әдістерін біріктіріп алгоримтдік тіл деп атауға болады.
Төменде графикалық әдістіні екі түрі беріледі. Олар блок - схема тілі мен ағаш тәріздес бейнелеу әдісі. Сондан кейін жасанды тіл енгізіледі.
Қарастырылған материалға қатысты мынадай кілт сөздер бар: табиғи тіл, жасанды тіл, графикалық әдіс, алгоритмдік тіл, блок = схема тілі, ағаш тәріздес бейнелеу әдісі.
Материалдың логикалық құрылымы төмендегідей болады.
1 - сурет.
2. 2 БЛОК - СХЕМА ТІЛІ
Блок - схема тілі алгоритмдегі әр түрлі әрекеттерді хронологиялық байланысын көрсете алады, ол үшін бұл тілде түрлі әрекеттерді бейнелейті геометриялық фигуралар және әрекеттердің орындалу ретін көрсететін бағыттама /стрелка/ пайдаланылдады. Бұлар блок - схема алфавитін құрайды, ал олардың мағынсы алды ала анықталған келісім бойынша беріледі.
Төмендегі кестеде стандарты блок - схема тілінің алфавиті анықталады:
3-кесте
Блок -схема тілінің алфавитін қарастрған кезде /3 кесте/ пайдаланылған белгілерді енгізу және нәтижені шығару деген әрекеттердің мағыналарын есептегіш техникасының құрылымын өткен кезде анырқтаймыз. Олардың орнына «берілгендердің мәндерін анықтау» және «нәтиженің мәнің дайындау» деп атап алып меншіктеу амалын пайдаланамыз.
2. 3 АҒАШ ТӘРІЗДЕС БЕЙНЕЛЕУ ӘДІСІ
Жоғарыда қарастырылған блок - схема тілі ертеде пайда болған. Ол қарапайым алгоритмдерді бейелеуге арналған графикалық әдіс.
Бұл тілде бейнеленген алгоритмдер мейлінше түсінікті болады. Бірақ, ол жаңадан үйреніп жүрген құрастырушыға ыңғайлы болғанымен, күрделі алгоримтдерді бейрегеуге жарамсыз.
Себебі, күрделі алгоритм бөліктерінің блок - схемасы бөлек бірнеше бетке салынады да, олардың арасындағы байланысын және алгоритмнің жалпы логикасын байқау өте қиынға түседі.
Сондықтан, төменде алгоритмдерді бейнелеудің тағы да бір графикалық әдісін сипаттамақпын.
Бұл әдіс нұсқаулардың хронологияық байланысымен қатар, олардың логикалық жіктелуін яғни декомпозияицсын көрсете отырып, алгоритмнің иерархиялық құрылымын бейнелеуге мүмкіндік береді мұндай әдситің жалпы бейнесі төмендегідей.
2- сурет
2 - сурет бұталанып өскен ағашқа ұқсайды. Сондықтан оны ағаш тәріздес бейнелеу әдісі деп атайды.
Сол жақтағы ең шеткі әрекетті ағаштың түбірі, ал оң жақтағы ең шеткі әрекетті ағаштың түбірі, ал ол жақтағы ең шеткі әрекеттерді ағаштың жапырақтары дейді.
2. 4 ЖАСАНДЫ ТІЛ
табиғи тілдерде бірмәнділік болғандықтан осы тілдерде жазылған алгоритмдерді нұсқаулардың біннеше мағынасы болуы мүмкін.
Әрине, бұл орындаушының осындай тілде жазылған алгоримтді орындауын қиындатады, тіппті ондай алгоритмді орындау мүмкін болмайды. Сондықтан, табиғи тілдердің байлығына қарамастан, информатикада алгоритмдерді бейнелеу үшін бір мәнді жасанды тілдерді қолданады.
Қазіргі кезде жасанды тілдердің саны жүзден асып кетті. Олардың ішінде, табиғи тілдердегі сияқты, негіздері ұқсастары және негіздері бөлектері де бар.
Төменде қазақ тілі мен математикалық өрнектерге негізделген жасанды тіл қарстырылған.
Бұл тілде қазақ тілінің бас әріпімен жазылған бірнеше сөздері қолданылады. Яғни әрқайсысының алдын ала анықталған бір - ақ мағынасы болады. Сондықтан оларды осы тілдің алфавитіне кіргізуге болады. Сонымен қатар бұл тілдің алфавитінің таңбалары, араб цифрлары, математикалық таңбалар, тыныс белгілері, жаюқшалар, меншіктеу амалынң таңбасы, бос жерді белгілейтін таңба қосылады. Яғни, бұл алфавиттің таңбалары төмендегі кестеде беріледі.
4 - кесте
3 БӨЛІМ. АЛГОРИТМДЕГІ БАСҚАРУ ҚҰРЫЛЫМДАРЫ.
3. 1 БАСҚАРУ ҚҰРЫЛЫМЫНЫҢ
ҰҒЫМЫН ҚАРАСТЫРУ
Өткен бөлімде алгоритмнің анықтамасын, қасиеттерін, бейнелену әдістерін және бірнеше мысалдар қарстырылды. Осы мысалдардан алгоритмді бір күрделі әрекет деп қарастыруға болатындығын және күрделі әрекеттің бірнеше қарапайым әрекеттерге жіктелетіндігін айқын сипаттадым.
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz