Есептеуішпен берілген сызықтық таңдау
МАЗМҰНЫ
КІРІСПЕ 3
1 Есептің қойылымы 4
2 Теориялық мағлұматтар 4
2.1 Сұрыптау 4
2.2 Сұрыптау тәсілдері 5
3 Ішкі сұрыптау 5
3.1 Таңдау сұрыптауы 5
3.1.2 Есептеуішпен берілген сызықтық таңдау 6
3.2 «Көпіршік» тәсілі 7
3.3 Енгізу тәсілі 10
3.3.1 Модификацияланған енгізу тәсілі (бинарлық кірістіру) 11
3.4 Шелл тәсілі 12
3.5 Бөлу сұрыптауы (Quicksort) 14
3.6 Бірігу тәсілі 15
4 Сыртқы сұрыптау 16
4.1 Тура бірігу 16
4.2 Кәдімгі бірігу 17
5 Есептің мақсаты 18
6 Программаның баяндалуы 18
6.1 Жалпы мағлұматтар 18
6.2 Функционалдық қолданылуы 18
7 Программаның алгоритмі 19
8 Қолданылған техникалық жабдықтар 24
9 Программаның шақырылуы және жүктелуі 24
ҚОРЫТЫНДЫ 25
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ 26
КІРІСПЕ
Қазіргі уақытта есептеуіш техника адамзат өміріндегі барлық әрекет өрісіне енді. Көбінесе бұл жағдай – мини әсіресе микро ЭЕМ-нің қарқынды дамуымен түсіндіріледі. Қазір компьютерлерді университет лабораторияларында ғана емес, сонымен бірге мектеп сыныптарында да көруге болады. Біздің уақытта компьютерлерге көптеген адамдардың, мамандығы программист болмаса да, қолы жететін мүмкіндіктері пайда болды.
1980 жылдары барлық ойындар және оқытатын программалар MS-DOS операциялық жүйеге арнап жазылған болатын, оның себебі – графикалық редакторлардың әлсіздігі және де жадының жетіспеушілігі. Кейін жаңа WINDOWS операциялық жүйелері пайда болды да, олардың графикалық редакторлары мықты болып, оқытатын программалар барлық ғылыми және техникалық мекемелерде пайда болды, сонымен қатар кішкентай балаларды оқытатын ойын программалары пайда болды.
1 Есептің қойылымы
Бұл программаны орындау үшін Паскаль тілінің мүмкіндіктерін қолданамыз. Бұл ойын «Крест пен ноль» деп аталады. Негізінде осы ойынның ешқандай қиындығы жоқ. Ойынды бастаудан бұрын берілген инструкциясын оқыңыз.
Есептің шарты:
2.2 Сұрыптау тәсілдері
Кестелермен жұмыс істегенде – оның негізгі операциялары – ол жазбаларды реттеу және берілген шарт бойынша жазба кестелерінде барлау жасау.
Сұрыптау - бұл кейбір критерийлері бойынша жазбаны кестелерде нақты бір тәртіппен реттеу операциясы. Сұрыптау барлық жазбалар кілттерінің мәндерімен сәйкес іске асады (мыс., алфавит бойынша аттарын реттеу немесе сандарды өсу бойынша реттеу). Сұрыптаудың көптеген бір – бірінен айрықша тәсілдері бар. Егер де кесте бүтіндей ЭЕМ – нің жедел жадында орналасса, онда оның реттелуі ішкі деп аталады. Ал егер де реттелген мәліметтерді сақтау үшін сыртқы есте сақтау құрылғысы пайдаланса, онда бұндай реттелу сыртқы деп аталады. Операцияларды салыстырудың орташа саны, сұрыптаудың тәсілінен байланысты, және де рационалды тәсілді таңдаған кезде кейбіреулері минимумға жетеді. Ішкі сұрыптау тәсілдерін екі топқа бөлуге болады:
3 Ішкі сұрыптау
3.1 Таңдау сұрыптауы
Осы метод бойынша, кестедегі бірінші жазбадан бастап, ең кішкентай мәні бар кілттің элементтерін іздеуге болады. Осындай орын-ауыстырудың нәтижесінде, кілттің ең кішкентай мәні бар жазбаны кестедегі бірінші позицияға орналасытырады. Одан кейін кестедегі екінші элементтен бастап, екінші ең кіші мәні бар кілттің ізденуі жүзеге асады. Табылған элемент кестедегі екінші элементпен орын ауыстырады. Бұл процесс кілттің кодтары өсу реті бойынша реттелмейінше тоқтамайды.
3.1.2 Есептеуішпен берілген сызықтық таңдау
Осы тәсілмен кестені реттегенде, бастапқы және реттелген кестелерді сақтау үшін жады керек, сонымен бірге кестенің әрбір жазуының есептеуіші үшін қосымша жады бөлінуі керек. Кестенің қаралуы ең бірінші жазуынан басталады. Оның кілті одан кейін тұрған жазбалардың кілттерімен салыстырылады. Ол кезде салыстырылған кілттердің үлкенінің есептеуіші 1 қадамға үлкейеді. Кестенің екінші қаралуы кезінде бірінші кілт қарастырылмайды, екінші кілт одан тұрған кілттермен салыстырылады. Салыстырудың нәтижелері есептеуішке жазылады. n элементтері бар кестелер үшін, осы процесс n-1 рет қайталанады. Барлық қараулары нәтижесінде әрбір элементтің есептеуіші кестедегі осы элементтегі кілттен қанша кілттер кем екенін көрсетеді. Кейін осы есептеуіштер нәтижелі кестедегі элементтердің индексі ретінде қарастырылады. Жазбаларды есептеуіштердің мәндерімен сәйкес нәтижелі кестеге енгізгенде, реттелген кестені аламыз. Салыстырулар қанша рет орындалса, сонша рет есептеуіштердің мәндері өзгереді.
Осы методты пайдалана отырып келесі мысалды қарастырайық:
3.3.1 Модификацияланған енгізу тәсілі (бинарлық кірістіру)
Тура қосу тәсілін жақсарту үшін, кестенің кезекті элементін реттелген қосалқы кестеге енгізу, оны бинарлық іздеу тәсілінің (дихотамикалық, екілік, логарифмдік) көмегімен жүзеге асыруға болады.
Сұрыптаудың j-ші қадамы:
3.4 Шелл тәсілі
Салыстырылатын элементтердің арасындағы арақашықтығын азайтатын принципті қолданып, енгізу сұрыптауын пайдаланатын жалпы тәсіл.1 суретте «abcdef» массиві үшін Шелл сұрыптауы көрсетіліп тұр. Біріншіден бір-бірінен үш позицияға жылжыған барлық элементтер сұрыпталады. Одан соң екі позицияға жылжыған барлық элементтер сұрыпталады. Ең соңында барлық көрші элементтер сұрыпталады.
5 Есептің мақсаты
Бұл есепті шешуді мақсатымыз – компьютер мен адам арасында крест пен нолик ойнын ойнауы. Бұл есепті шешу барысында Паскаль тілдерінің толық мүмкіндіктерін көруге болады.
Бұл есепті шешу үшін көптеген операторларды пайдаланамыз. Осы программада жолдарға қолданылатын процедураларды, шартты операторларды және динамикалық жадыны және тілдердің тағы көптеген мүмкіндіктерін қарастырдым.
Осы программаның ең баста ерекшелігі – оның жеңілдігінде. Әрбір адам оны түсіне алады.
ҚОРЫТЫНДЫ
Осы курстық жұмысты жазу барысында мен Паскаль тілімен тереңірек таныстым. Паскаль тілі маған өте ұнады,себебі Паскаль тілі өте қарапайым және қолданушыға синтаксисі таныс болып келеді. Крест пен ноль ойнын құрастыру барысында мен Паскаль тілінің шартты операторларын өте көп қолданып және де қалған операторлар мен таныстым. Паскаль тілі программалау тілдерінің негізі екені барлығымызға да белгілі және мен де соған қосыламын.