Програмистің библотекасын ұйымдастыру технологиясы
Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 3
Негізгі бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..5
Турбо Паскаль туралы жалпы ұғым ... ... ... ... ... ... ... ... .6
1. Іріктеу алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... 7
1.1 Таңдау арқылы іріктеу ... ... ... ... ... ... ... ... ... ... 8
1.2 Айырбастау арқылы іріктеу ... ... ... ... ... ... ... ..10
1.3 Шейкерлі іріктеу ... ... ... ... ... ... ... ... ... ... ... ... .11
1.4 Қосу арқылы іріктеу ... ... ... ... ... ... ... ... ... ... ..12
1.5 Хоар іріктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..14
2. Іздеу алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... ...16
2.1 Сызықтық іздеу ... ... ... ... ... ... ... ... ... ... ... ... ...16
2.2 Тосқауылы бар іздеу ... ... ... ... ... ... ... ... ... ... .18.
2.3 Екілікті іздеу ... ... ... ... ... ... ... ... ... ... ... ... ... ...19
3. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ...22
4. Негізгі программаның Блок схемасы ... ... ... ... ... ... 25
5. Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...26
6. Пайдаланылған әдебиеттер ... ... ... ... ... ... ... ... ... ... . 27
Негізгі бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..5
Турбо Паскаль туралы жалпы ұғым ... ... ... ... ... ... ... ... .6
1. Іріктеу алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... 7
1.1 Таңдау арқылы іріктеу ... ... ... ... ... ... ... ... ... ... 8
1.2 Айырбастау арқылы іріктеу ... ... ... ... ... ... ... ..10
1.3 Шейкерлі іріктеу ... ... ... ... ... ... ... ... ... ... ... ... .11
1.4 Қосу арқылы іріктеу ... ... ... ... ... ... ... ... ... ... ..12
1.5 Хоар іріктелуі ... ... ... ... ... ... ... ... ... ... ... ... ... ..14
2. Іздеу алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... ...16
2.1 Сызықтық іздеу ... ... ... ... ... ... ... ... ... ... ... ... ...16
2.2 Тосқауылы бар іздеу ... ... ... ... ... ... ... ... ... ... .18.
2.3 Екілікті іздеу ... ... ... ... ... ... ... ... ... ... ... ... ... ...19
3. Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ...22
4. Негізгі программаның Блок схемасы ... ... ... ... ... ... 25
5. Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...26
6. Пайдаланылған әдебиеттер ... ... ... ... ... ... ... ... ... ... . 27
Алгоритм дегеніміз – орындаушыға белгіленген мақсатқа жетуге бағытталған әрекеттер тізбегін орындап шығуға алдын ала берілген түсінікті және анық ұйғарым. «Алгоритм » сөзі IX ғасырдағы орта Азияның ұлы математигі Әбу жафар Мұхаммед ибн Мұса әл-Хорезми (763 – 850 жж.) латынша Аlgorithmi болып жазылуынан шыққан. әл – Хорезми алғашқы рет арифметикалық амалдарды орындау режелерін жазған.
Алгоритмдік тіл дегеніміз – орындалған әрекеттерді, амалдарды біріңғай және дәл жазуға арналған, программалау тілінің негізі болып табылады. Алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын тақырыбы болады. Алгоритмдік тіл табиғи тілге жақын, сондықтан ол қарапайым мәтін түрінде жазылады және оқылады. алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын тақырыбы болады. Тақырынан кейінгі бөлігі алгоритм тұлғасы деп аталады, ол басы және соңы түйінді сөздерімен шектеліп тұрады.
Программа дегеніміз – алгоритмдерің программалау тіліндегі кескіні.
Программалау тілдері дегеніміз – Алгоритмдік тілде құралған амалдар тізбегін компьютерге түсінікті командалар мәтіні түрінде жазуға арналған жасанды тілдер.
Программист деген кім? Программист – белгілі бір ақпаратты өңдеумен, сұрыптаумен, реттеумен, жинақтаумен, т.с.с., және арнайы құралдарға арналған программалық жабдықтауларды арнайы программалық тілдерде құратын адам. Программист жұмысы кез келген ұйымда, банкте болсын, өте жоғары бағаланады.
Алгоритмдік тіл дегеніміз – орындалған әрекеттерді, амалдарды біріңғай және дәл жазуға арналған, программалау тілінің негізі болып табылады. Алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын тақырыбы болады. Алгоритмдік тіл табиғи тілге жақын, сондықтан ол қарапайым мәтін түрінде жазылады және оқылады. алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын тақырыбы болады. Тақырынан кейінгі бөлігі алгоритм тұлғасы деп аталады, ол басы және соңы түйінді сөздерімен шектеліп тұрады.
Программа дегеніміз – алгоритмдерің программалау тіліндегі кескіні.
Программалау тілдері дегеніміз – Алгоритмдік тілде құралған амалдар тізбегін компьютерге түсінікті командалар мәтіні түрінде жазуға арналған жасанды тілдер.
Программист деген кім? Программист – белгілі бір ақпаратты өңдеумен, сұрыптаумен, реттеумен, жинақтаумен, т.с.с., және арнайы құралдарға арналған программалық жабдықтауларды арнайы программалық тілдерде құратын адам. Программист жұмысы кез келген ұйымда, банкте болсын, өте жоғары бағаланады.
1. Мұртазина Ә.Ө., Сатпаева А.К. “Pascal тілінде программалаудың негіздері” Алматы: ҚазҰТУ, 2002ж.
2. Фаронов В.В. “Turbo Pascal 7.0” М.:2000ж.
3. Культин Н. “Pascal” М:2001ж.
4. Уэит, Мартин Д. “Язык Turbo Pascal” М.:1988ж.
5. Ә.Ө. Муртазина, Б.Б. Тусупова “Программалар мен алгоритмдердің анализдері және құрылымдары” Алматы 2001.
2. Фаронов В.В. “Turbo Pascal 7.0” М.:2000ж.
3. Культин Н. “Pascal” М:2001ж.
4. Уэит, Мартин Д. “Язык Turbo Pascal” М.:1988ж.
5. Ә.Ө. Муртазина, Б.Б. Тусупова “Программалар мен алгоритмдердің анализдері және құрылымдары” Алматы 2001.
Пән: Информатика, Программалау, Мәліметтер қоры
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 20 бет
Таңдаулыға:
Жұмыс түрі: Курстық жұмыс
Тегін: Антиплагиат
Көлемі: 20 бет
Таңдаулыға:
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
Тұрар Рысқұлов атындағы Қазақ Экономикалық университеті
Факультет: Инженерлік – экономикалық
Кафедрасы: Қолданбалы информатика
Курстық жұмыс
Пәні: Алгоритмдеу және программалау тілдері
Тақырыбы: Програмистің библотекасын ұйымдастыру технологиясы
Тексерген: Ақыш.Ә.
Орындаған: АЖ 101 топ
студенті Кәрімтай Жанар
Алматы 2006
Мазмұны
Кіріспе
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... 3
Негізгі
бөлім ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... .5
Турбо Паскаль туралы жалпы ұғым ... ... ... ... ... ... ... ... ..6
1. Іріктеу
алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... .7
1.1 Таңдау арқылы іріктеу ... ... ... ... ... ... ... ... ... ... 8
1.2 Айырбастау арқылы іріктеу ... ... ... ... ... ... ... ..10
1.3 Шейкерлі
іріктеу ... ... ... ... ... ... ... ... ... ... ... ... .11
1.4 Қосу арқылы
іріктеу ... ... ... ... ... ... ... ... ... ... ..12
1.5 Хоар
іріктелуі ... ... ... ... ... ... .. ... ... ... ... ... ... ... 14
2. Іздеу
алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... ... 16
2.1 Сызықтық
іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... .16
2.2 Тосқауылы бар
іздеу ... ... ... ... ... ... ... .. ... ... ...18.
2.3 Екілікті
іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... ... .19
3. Есептің
қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... 22
4. Негізгі программаның Блок схемасы ... ... ... ... ... ... 25
5.
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
...26
6. Пайдаланылған әдебиеттер ... ... ... ... ... ... . ... ... ... ... 27
Кіріспе
Алгоритм дегеніміз – орындаушыға белгіленген мақсатқа жетуге
бағытталған әрекеттер тізбегін орындап шығуға алдын ала берілген
түсінікті және анық ұйғарым. Алгоритм сөзі IX ғасырдағы орта
Азияның ұлы математигі Әбу жафар Мұхаммед ибн Мұса әл-Хорезми (763 –
850 жж.) латынша Аlgorithmi болып жазылуынан шыққан. әл – Хорезми
алғашқы рет арифметикалық амалдарды орындау режелерін жазған.
Алгоритмдік тіл дегеніміз – орындалған әрекеттерді, амалдарды
біріңғай және дәл жазуға арналған, программалау тілінің негізі болып
табылады. Алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын
ашатын тақырыбы болады. Алгоритмдік тіл табиғи тілге жақын,
сондықтан ол қарапайым мәтін түрінде жазылады және оқылады.
алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын
тақырыбы болады. Тақырынан кейінгі бөлігі алгоритм тұлғасы деп
аталады, ол басы және соңы түйінді сөздерімен шектеліп тұрады.
Программа дегеніміз – алгоритмдерің программалау тіліндегі
кескіні.
Программалау тілдері дегеніміз – Алгоритмдік тілде құралған
амалдар тізбегін компьютерге түсінікті командалар мәтіні түрінде
жазуға арналған жасанды тілдер.
Программист деген кім? Программист – белгілі бір ақпаратты
өңдеумен, сұрыптаумен, реттеумен, жинақтаумен, т.с.с., және арнайы
құралдарға арналған программалық жабдықтауларды арнайы программалық
тілдерде құратын адам. Программист жұмысы кез келген ұйымда, банкте болсын,
өте жоғары бағаланады. Программист осы ұйымға керекті барлық
ақпаратты өңдеп отырады, яғни программист қолынан ұйымға қажетті
мәліметтер өтіп отырады. Сондықтан да меніңше программист еңбегі өте
жоғары бағаланады соған қарап оларға жалақы жоғары төленеді, сондықтан да
осы мамандықты менің таңдауым бекер емес деп ойлаймын.
Программисттің библиотекасы (программа қоры) дегеніміз – әрбір
программистің өзінің белгілі бір жиі қолданып жүрген процедуралары болады.
Бұл процедураларды ықшамдап модуль түрінде кез келген программада қолдануға
болады. Бұл модульдерді программистің жеке библиотекасы (қоры) деп те атаса
болады. Осы принципте құрылған модульдерді пайдалану өте ықшамды. Сол
себепті көптеген программистер өз ыңғайына қарап түрлі библиотекаларды
жинақтайды. Осы қор арқылы программист сол бағдарламаларды қайта оқу арқылы
өз білімін арттырып отырады. Программалық қор көптеген мәліметтерден
тұрады, онда программист еңбегі нәтижесі көрініп тұрады. Программист өзі
прогарамма жазу жолын ұмытып қалған кезде кез келген уақытында қайта
айналып келіп жазылу жолын қарап шығуына көмек жасайды. Бұл кез келген
программаларда кездесетін анықтамалық жүйелермен іспетті. Сондықтан да
программалық қорлар кез келген программистке көмек жасайды.
Негізгі бөлім
Программистің библотекасы (программа қоры)
Арнау:
Әрбір тәжірибелі программист уақыт сайын белгілі бір мөлшерде
процедуралар мен функцияларды жинайды ( өте қарапайым біраз үлкен
қолданыстағы ), дайын блоктар ретінде пайдаланылатын мүлдем әр түрлі
өз тәбиғаты бойынша программа.
Бұл уақытпен жаңа программалардың бағасын үнемдейді. Белгілі
системалрдың анализы ПЭБМ үшін қатар елементтерді ерекшелеуге
мүмкіндік береді, барлық осы системаларды соларға құруға қолданысты,
келесі процедуралар жатады:
• Әр түрлі рамкалар тұрғызу;
• Терезелер ұйымы тақырыптары мен океантталған тақырыптары бар ;
• Көрінетін және көрінбейтін курсордың қалыптасуы;
• Түс және фонның орналасуы;
• Дыбыстық сигналдардың берілуі;
• Әр түрлі типті мәзірлер тұрғызылуы;
• Амалдардың тізбегі шектелген, бірақ жеткілікті әмбебап.
Мысалы, сызусыз рама және басқару түспен және дыбыспен хаттау
жақсы жоспарланған эргономикалық берілгендерін енгізу, жылдамдықсыз
мәзір тұрғызу мүмкін емес программаны структура жасау және әр
түрлі логикалық блоктармен басқару. Әр программист, ең болмаса
бірінші этапта, осы процедураларды өзінің кітапханасында ұстап және
экранды қалыптастырған кезде қолдана білуі керек.
MyServis библиотекасы:
Текст келтіреміз жиі қолданылатын бастапқы деңгейде программалық
әнбебап процедуралары қажетті пікірлермен және қолдануға
ұсыныстармен. Мәзірге тұрғызылатын сұрақтар 15 тарауда қарастырылады.
Турбо паскаль туралы жалпы ұғым
Қазіргі кезде, дүние жүзінде болашақ програмистердің
көпшілігі тіл үиренуді Паскаль тілінен бастайды. Себебі, ол логикасы
қарапайым, құрлымдық программалау принципіне негізделген, қиын
есептердің прогпаммасын бөлшектеп құруға мүмкіндік жасайтын,
меңгеруге жеңіл, программа құрушыға да, оны пайдаланушыға ыңғайлы
тіл. Солардың бірі – Turbo packal. Турбо паскальдің түп нұсқасын
Швецария ғалымы Никлаус Вирт жасаған. Паскаль - программалау тілінен
тарайды. Қазіргі кезде Паскпль тілі – қолданбалы программалар жазу
үшін және жүиелі программалау тілі ретіндеде кеңінен қолданылады.
Сонымен бірге көптенен мини және макро компютерлерді қамтамасыз ету
осы тілде жазылады. Паскаль тілі – бұрын құрылған программалау
тілдерінен маңызды ерекшелігі ол құрлымдық программалау идеясын
өмірге біртіндеп енгізу. Паскаль тілінің тағы бір ерекшелігі ол
деректер құрлымының концепциясының алгоритім түсінігімен қатар
программалаудың негізінде жатқан фундаменталды түсініктер қатарына
кіруі. Паскаль тілі өте қарапайым есептеулерден бастап, күделі
есептерді дәл шешуге көмегін тигізеді. Паскаль тілінің программалау
компилияторы мен инструменталдық программа ортасы бірігіп Турбо
паскпль программалау жүйесін құрайды. әрбір программист жүйемен
практикалық жұмыс істеу барысында Паскаль ортасымен қақтығысады.
Turbo packal тілі – кез келген күрделі есептерді шығара
алатын кең таралған стандартты оқу тілі. Паскаль тілінде жазылған
программа компьютерде орындалу барысында алдымен трансляцияланады (
машина тіліне аударылады ), объектік программаға түрлендіріледі де,
содан кейін ғана орындалады. Осы сәтте компютерде программаның екі
нұсқасы болады, оның біріншісі – алгоритмдік тілдегі алғашқы
түпнұсқасы, ал екіншісі – объектік кодтағы жазылған программа. Есеп
нәтижесін машиналық кодта жазылған программа арқылы аламыз, ал
программаны түзету қажет болғанда, оның алгоритмдік тілде жазылған
алғашқы нұсқасы өңделеді.
Іріктеу алгоритмдері
Бұл айтылған пікірлердің барлығы программалаудың ең бір қажетті
мүмкіндіктері іріктеу ге арналған. Іріктеу кез-келген программада
қолдануға болады. оның мүмкіндіктері шексіз. Осы мүмкіндіктерді
пайдалана отырып, программа алгоритмін қарапайым жолмен жеңілдетуге
болады. Негізінен іріктеудің түрлері өте көп.
Кез-келген күнделікті жағдайда біз Іріктеу үрдістерімен жұмыс
жасаймыз. Әр адамда неліктен? деген сұрақ туады. Жауап өте қарапайым.
Себебі бұл үрдістермен жұмыс жасау өте ыңғайлы. Тіпті өзіміздің
күнделікті қолданып жүрген персоналды компьютеріміз де сол принциппен
жұмыс істейді. Олар сіз енгізген мәліметтерді іріктеп қояды да, сіз
оларды іздегенде лезде тауып бере қояды. Іріктеу тәсілдерін кеңінен
қолданады. Бұл тәсілдерді қарапайым студент те, кәсіпқой программист те
қолдана алады. Жалпы алғанда кез-келген программа іріктеуден басталады. Ал
тез іріктеп, қажет элементті табу үшін іріктеу тәсілдерін жетік
білген жөн. Сондықтан іріктеу тәсілдерін қарастырып көрейік.
Іріктеудің ең қарапайым есебi - массив элементтерiнiң өсу, не кему
ретiмен орналастыру болып табылады. Басқа есеп болып, берiлген белгiлер
бойынша массив элементтерiн реттеу. Әдетте мұндай белгi ретiнде аргументi
массив элементтерi болып табылатын белгiлi функция мәнi болып табылады.
Бұл функцияға реттеушi функция деп атау қабылданған.
Іріктеудің әр түрлi тәсiлдерi бар. Әрбiр тәсiлдi N бүтiн сандардан
өспелi массивтi іріктеу мысалында көрсетемiз.
Таңдау арқылы іріктеу
Тәсілдің принципі:
Бірінші элементтен n-ші (соңғы) элементке дейінгі аралықта минималды
элементті тауып, оны бірінші элементпен орын ауыстыру. Одан кейін
екінші элементтен n-ші (соңғы) элементке дейінгі аралықта тағы да
минималды элементті тауып, оны бұл жолы екінші элементпен орын
ауыстыру.
Солай n-1-ші элементке дейін жалғасып кете береді.
Мысалы:
a[1..n] массивiнiң элементтерін өсу ретімен орналастыру.
Program Sort_Tandau1;
Uses Crt;
Const n=20; {Массив ұзындығы}
type TVector=array [1..n] of Real;
Var Vector:TVector;
Min:Real;
Imin:Integer;
I:Integer;
Begin ClrScr;
writeln('Массив элементтерiн енгіз: ');
for i:=1 to n do Read (Vector[i]);
readln;
For s:=1 to n-1 do
Begin
{S-ші элементтен n-ші элемент аралығында минималды элементті іздеу}
Min:=Vector [s];
Imin:=s;
For i:=s+1 to n do
If Vector[i]Min then begin
min:=Vector[i];
Imin:=i ;
End;
{Минималды элементтен S-ші элементпен өзара орын ауысуы}
Vector[Imin]:=Vector[S];
Vector[S]:=Min;
End;
Writeln(‘Сортталған массив: ’);
For i:=1 to n do write(Vector[i]:8:2);
Writeln;
End.
Айырбастау арқылы іріктеу
( “көпіршікті” іріктеу )
Тәсілдің принципі:
Сол жақтан оң жаққа қарай кезек-кезекпен қатар қатар тұрған элементтер
өзара бір-бірімен салыстырылады. Егер олардың орналасуы берілген шартқа
сәйкес келмесе, онда бір-бірімен орын ауыстырады. Содан кейін келесі
екі қатар тұрған элементтер салыстырылады, т.с.с. массивтің соңына
дейін орындала береді.
Осы жұмыс толығымен бір рет орындалғаннан кейін массивтің соңғы
(n-ші) элементінің позициясында массивтің максималды элементі тұрады
(бірінші ‘көпіршік қалқып шықты’). Максималды элемент массивтің соңғы
орнында тұрғандықтан, екінші рет іріктеу опындалғанда ол тек n-1-ші
элементке дейін ғана орындалады. Бұл жұмыс т.с.с. жалғасып кете
береді.
Мысалы:
a[1..n]массивiнiң сандарын кему бойынша айырбаспен сұрыптау.
Program Sort_Auis1;
Uses Crt;
Const n=20; {Массив ұзындығы}
Type TVector=array [1..n] of Real;
Var Vector:TVector;
B:Real;
i,k:Integer;
Begin
ClrScr;
writeln('Массив элементтерiн енгіз: ');
for i:=1 to n do Read(Vector[i]); Readln;
for k:=n downto 2 do
{к-ші позицияға максималды элементтің “қалқып шығуы”}
For i:=1 to k-1 do
If Vector[i]Vector[i+1] then
Begin
B:=Vector[i];
Vector[i]:=Vector[i+1];
Vector[i+1]:=B;
End;
writeln('Сортталған массив: ');
For i:=1 to n do Write(Vector[i]:8:2);
Written;
end.
Шейкерлі іріктеу
Бұл алгоритм негiзiнен айырбас арқылы іріктеудің модификациясы
болып табылады. Айырмашылығы, айырбас арқылы іріктеуде өтулер бiр жақты
ғана болса, мұнда бағыт әрбiр рет сайын өзгерiп отырады. Сонымен
қатар, шейкерлi іріктеуде айырбас фактi мен айырбастың соңғы орнын
анықтауға болады. Негiзгi алгоритмде екiлiк өтулер саны N div 2-ге
тең.
Мысалы:
а[1..n] массивiн Шейкерлi сорттау арқылы өсу ретiмен орналастыру.
Program Shaker;
Var a:array[1..20] of integer;
N,i,k,x,j,d : integer;
Begin
write('Массив элементтерiнiң саны');
read(N);
For i:=1 to n do
writeln('Массивтi енгiзiңiз');
read(a[i]);
d:=1; i:=0;
For k:=n-1 downto 1 do { k – салыстырылатын жұптар саны }
Begin
i:=i+d;
For j:=1 to k do
Begin
If (a[i]-a[i+d])*d0 then
{көршiлес элементтердi орындарымен ауыстыру}
Begin x:=a[i]; a[i]:=a[i+d]; a[i+d]:=x; end;
i:=i+d;
end;
d:=-d;
{қозғалыс бағытын қарама-қарсыға өзгертемiз}
end;
For i:=1 to n do write(a[i],' '); {реттелген массив}
End.
Қосу арқылы іріктеу
Тәсілдің принципі:
Массив іріктелген және іріктелмеген болып екі бөлікке бөлінеді.
іріктелмеген бөлігіндегі элементтер кезек-кезекпен іріктелген ... жалғасы
Тұрар Рысқұлов атындағы Қазақ Экономикалық университеті
Факультет: Инженерлік – экономикалық
Кафедрасы: Қолданбалы информатика
Курстық жұмыс
Пәні: Алгоритмдеу және программалау тілдері
Тақырыбы: Програмистің библотекасын ұйымдастыру технологиясы
Тексерген: Ақыш.Ә.
Орындаған: АЖ 101 топ
студенті Кәрімтай Жанар
Алматы 2006
Мазмұны
Кіріспе
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... 3
Негізгі
бөлім ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... .5
Турбо Паскаль туралы жалпы ұғым ... ... ... ... ... ... ... ... ..6
1. Іріктеу
алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... .7
1.1 Таңдау арқылы іріктеу ... ... ... ... ... ... ... ... ... ... 8
1.2 Айырбастау арқылы іріктеу ... ... ... ... ... ... ... ..10
1.3 Шейкерлі
іріктеу ... ... ... ... ... ... ... ... ... ... ... ... .11
1.4 Қосу арқылы
іріктеу ... ... ... ... ... ... ... ... ... ... ..12
1.5 Хоар
іріктелуі ... ... ... ... ... ... .. ... ... ... ... ... ... ... 14
2. Іздеу
алгоритмдері ... ... ... ... ... ... ... ... ... ... ... ... ... ... 16
2.1 Сызықтық
іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... .16
2.2 Тосқауылы бар
іздеу ... ... ... ... ... ... ... .. ... ... ...18.
2.3 Екілікті
іздеу ... ... ... ... ... ... ... .. ... ... ... ... ... ... .19
3. Есептің
қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... 22
4. Негізгі программаның Блок схемасы ... ... ... ... ... ... 25
5.
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
...26
6. Пайдаланылған әдебиеттер ... ... ... ... ... ... . ... ... ... ... 27
Кіріспе
Алгоритм дегеніміз – орындаушыға белгіленген мақсатқа жетуге
бағытталған әрекеттер тізбегін орындап шығуға алдын ала берілген
түсінікті және анық ұйғарым. Алгоритм сөзі IX ғасырдағы орта
Азияның ұлы математигі Әбу жафар Мұхаммед ибн Мұса әл-Хорезми (763 –
850 жж.) латынша Аlgorithmi болып жазылуынан шыққан. әл – Хорезми
алғашқы рет арифметикалық амалдарды орындау режелерін жазған.
Алгоритмдік тіл дегеніміз – орындалған әрекеттерді, амалдарды
біріңғай және дәл жазуға арналған, программалау тілінің негізі болып
табылады. Алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын
ашатын тақырыбы болады. Алгоритмдік тіл табиғи тілге жақын,
сондықтан ол қарапайым мәтін түрінде жазылады және оқылады.
алгоритмдік тілде әрбір алгоритмнің мазмұндық сипатын ашатын
тақырыбы болады. Тақырынан кейінгі бөлігі алгоритм тұлғасы деп
аталады, ол басы және соңы түйінді сөздерімен шектеліп тұрады.
Программа дегеніміз – алгоритмдерің программалау тіліндегі
кескіні.
Программалау тілдері дегеніміз – Алгоритмдік тілде құралған
амалдар тізбегін компьютерге түсінікті командалар мәтіні түрінде
жазуға арналған жасанды тілдер.
Программист деген кім? Программист – белгілі бір ақпаратты
өңдеумен, сұрыптаумен, реттеумен, жинақтаумен, т.с.с., және арнайы
құралдарға арналған программалық жабдықтауларды арнайы программалық
тілдерде құратын адам. Программист жұмысы кез келген ұйымда, банкте болсын,
өте жоғары бағаланады. Программист осы ұйымға керекті барлық
ақпаратты өңдеп отырады, яғни программист қолынан ұйымға қажетті
мәліметтер өтіп отырады. Сондықтан да меніңше программист еңбегі өте
жоғары бағаланады соған қарап оларға жалақы жоғары төленеді, сондықтан да
осы мамандықты менің таңдауым бекер емес деп ойлаймын.
Программисттің библиотекасы (программа қоры) дегеніміз – әрбір
программистің өзінің белгілі бір жиі қолданып жүрген процедуралары болады.
Бұл процедураларды ықшамдап модуль түрінде кез келген программада қолдануға
болады. Бұл модульдерді программистің жеке библиотекасы (қоры) деп те атаса
болады. Осы принципте құрылған модульдерді пайдалану өте ықшамды. Сол
себепті көптеген программистер өз ыңғайына қарап түрлі библиотекаларды
жинақтайды. Осы қор арқылы программист сол бағдарламаларды қайта оқу арқылы
өз білімін арттырып отырады. Программалық қор көптеген мәліметтерден
тұрады, онда программист еңбегі нәтижесі көрініп тұрады. Программист өзі
прогарамма жазу жолын ұмытып қалған кезде кез келген уақытында қайта
айналып келіп жазылу жолын қарап шығуына көмек жасайды. Бұл кез келген
программаларда кездесетін анықтамалық жүйелермен іспетті. Сондықтан да
программалық қорлар кез келген программистке көмек жасайды.
Негізгі бөлім
Программистің библотекасы (программа қоры)
Арнау:
Әрбір тәжірибелі программист уақыт сайын белгілі бір мөлшерде
процедуралар мен функцияларды жинайды ( өте қарапайым біраз үлкен
қолданыстағы ), дайын блоктар ретінде пайдаланылатын мүлдем әр түрлі
өз тәбиғаты бойынша программа.
Бұл уақытпен жаңа программалардың бағасын үнемдейді. Белгілі
системалрдың анализы ПЭБМ үшін қатар елементтерді ерекшелеуге
мүмкіндік береді, барлық осы системаларды соларға құруға қолданысты,
келесі процедуралар жатады:
• Әр түрлі рамкалар тұрғызу;
• Терезелер ұйымы тақырыптары мен океантталған тақырыптары бар ;
• Көрінетін және көрінбейтін курсордың қалыптасуы;
• Түс және фонның орналасуы;
• Дыбыстық сигналдардың берілуі;
• Әр түрлі типті мәзірлер тұрғызылуы;
• Амалдардың тізбегі шектелген, бірақ жеткілікті әмбебап.
Мысалы, сызусыз рама және басқару түспен және дыбыспен хаттау
жақсы жоспарланған эргономикалық берілгендерін енгізу, жылдамдықсыз
мәзір тұрғызу мүмкін емес программаны структура жасау және әр
түрлі логикалық блоктармен басқару. Әр программист, ең болмаса
бірінші этапта, осы процедураларды өзінің кітапханасында ұстап және
экранды қалыптастырған кезде қолдана білуі керек.
MyServis библиотекасы:
Текст келтіреміз жиі қолданылатын бастапқы деңгейде программалық
әнбебап процедуралары қажетті пікірлермен және қолдануға
ұсыныстармен. Мәзірге тұрғызылатын сұрақтар 15 тарауда қарастырылады.
Турбо паскаль туралы жалпы ұғым
Қазіргі кезде, дүние жүзінде болашақ програмистердің
көпшілігі тіл үиренуді Паскаль тілінен бастайды. Себебі, ол логикасы
қарапайым, құрлымдық программалау принципіне негізделген, қиын
есептердің прогпаммасын бөлшектеп құруға мүмкіндік жасайтын,
меңгеруге жеңіл, программа құрушыға да, оны пайдаланушыға ыңғайлы
тіл. Солардың бірі – Turbo packal. Турбо паскальдің түп нұсқасын
Швецария ғалымы Никлаус Вирт жасаған. Паскаль - программалау тілінен
тарайды. Қазіргі кезде Паскпль тілі – қолданбалы программалар жазу
үшін және жүиелі программалау тілі ретіндеде кеңінен қолданылады.
Сонымен бірге көптенен мини және макро компютерлерді қамтамасыз ету
осы тілде жазылады. Паскаль тілі – бұрын құрылған программалау
тілдерінен маңызды ерекшелігі ол құрлымдық программалау идеясын
өмірге біртіндеп енгізу. Паскаль тілінің тағы бір ерекшелігі ол
деректер құрлымының концепциясының алгоритім түсінігімен қатар
программалаудың негізінде жатқан фундаменталды түсініктер қатарына
кіруі. Паскаль тілі өте қарапайым есептеулерден бастап, күделі
есептерді дәл шешуге көмегін тигізеді. Паскаль тілінің программалау
компилияторы мен инструменталдық программа ортасы бірігіп Турбо
паскпль программалау жүйесін құрайды. әрбір программист жүйемен
практикалық жұмыс істеу барысында Паскаль ортасымен қақтығысады.
Turbo packal тілі – кез келген күрделі есептерді шығара
алатын кең таралған стандартты оқу тілі. Паскаль тілінде жазылған
программа компьютерде орындалу барысында алдымен трансляцияланады (
машина тіліне аударылады ), объектік программаға түрлендіріледі де,
содан кейін ғана орындалады. Осы сәтте компютерде программаның екі
нұсқасы болады, оның біріншісі – алгоритмдік тілдегі алғашқы
түпнұсқасы, ал екіншісі – объектік кодтағы жазылған программа. Есеп
нәтижесін машиналық кодта жазылған программа арқылы аламыз, ал
программаны түзету қажет болғанда, оның алгоритмдік тілде жазылған
алғашқы нұсқасы өңделеді.
Іріктеу алгоритмдері
Бұл айтылған пікірлердің барлығы программалаудың ең бір қажетті
мүмкіндіктері іріктеу ге арналған. Іріктеу кез-келген программада
қолдануға болады. оның мүмкіндіктері шексіз. Осы мүмкіндіктерді
пайдалана отырып, программа алгоритмін қарапайым жолмен жеңілдетуге
болады. Негізінен іріктеудің түрлері өте көп.
Кез-келген күнделікті жағдайда біз Іріктеу үрдістерімен жұмыс
жасаймыз. Әр адамда неліктен? деген сұрақ туады. Жауап өте қарапайым.
Себебі бұл үрдістермен жұмыс жасау өте ыңғайлы. Тіпті өзіміздің
күнделікті қолданып жүрген персоналды компьютеріміз де сол принциппен
жұмыс істейді. Олар сіз енгізген мәліметтерді іріктеп қояды да, сіз
оларды іздегенде лезде тауып бере қояды. Іріктеу тәсілдерін кеңінен
қолданады. Бұл тәсілдерді қарапайым студент те, кәсіпқой программист те
қолдана алады. Жалпы алғанда кез-келген программа іріктеуден басталады. Ал
тез іріктеп, қажет элементті табу үшін іріктеу тәсілдерін жетік
білген жөн. Сондықтан іріктеу тәсілдерін қарастырып көрейік.
Іріктеудің ең қарапайым есебi - массив элементтерiнiң өсу, не кему
ретiмен орналастыру болып табылады. Басқа есеп болып, берiлген белгiлер
бойынша массив элементтерiн реттеу. Әдетте мұндай белгi ретiнде аргументi
массив элементтерi болып табылатын белгiлi функция мәнi болып табылады.
Бұл функцияға реттеушi функция деп атау қабылданған.
Іріктеудің әр түрлi тәсiлдерi бар. Әрбiр тәсiлдi N бүтiн сандардан
өспелi массивтi іріктеу мысалында көрсетемiз.
Таңдау арқылы іріктеу
Тәсілдің принципі:
Бірінші элементтен n-ші (соңғы) элементке дейінгі аралықта минималды
элементті тауып, оны бірінші элементпен орын ауыстыру. Одан кейін
екінші элементтен n-ші (соңғы) элементке дейінгі аралықта тағы да
минималды элементті тауып, оны бұл жолы екінші элементпен орын
ауыстыру.
Солай n-1-ші элементке дейін жалғасып кете береді.
Мысалы:
a[1..n] массивiнiң элементтерін өсу ретімен орналастыру.
Program Sort_Tandau1;
Uses Crt;
Const n=20; {Массив ұзындығы}
type TVector=array [1..n] of Real;
Var Vector:TVector;
Min:Real;
Imin:Integer;
I:Integer;
Begin ClrScr;
writeln('Массив элементтерiн енгіз: ');
for i:=1 to n do Read (Vector[i]);
readln;
For s:=1 to n-1 do
Begin
{S-ші элементтен n-ші элемент аралығында минималды элементті іздеу}
Min:=Vector [s];
Imin:=s;
For i:=s+1 to n do
If Vector[i]Min then begin
min:=Vector[i];
Imin:=i ;
End;
{Минималды элементтен S-ші элементпен өзара орын ауысуы}
Vector[Imin]:=Vector[S];
Vector[S]:=Min;
End;
Writeln(‘Сортталған массив: ’);
For i:=1 to n do write(Vector[i]:8:2);
Writeln;
End.
Айырбастау арқылы іріктеу
( “көпіршікті” іріктеу )
Тәсілдің принципі:
Сол жақтан оң жаққа қарай кезек-кезекпен қатар қатар тұрған элементтер
өзара бір-бірімен салыстырылады. Егер олардың орналасуы берілген шартқа
сәйкес келмесе, онда бір-бірімен орын ауыстырады. Содан кейін келесі
екі қатар тұрған элементтер салыстырылады, т.с.с. массивтің соңына
дейін орындала береді.
Осы жұмыс толығымен бір рет орындалғаннан кейін массивтің соңғы
(n-ші) элементінің позициясында массивтің максималды элементі тұрады
(бірінші ‘көпіршік қалқып шықты’). Максималды элемент массивтің соңғы
орнында тұрғандықтан, екінші рет іріктеу опындалғанда ол тек n-1-ші
элементке дейін ғана орындалады. Бұл жұмыс т.с.с. жалғасып кете
береді.
Мысалы:
a[1..n]массивiнiң сандарын кему бойынша айырбаспен сұрыптау.
Program Sort_Auis1;
Uses Crt;
Const n=20; {Массив ұзындығы}
Type TVector=array [1..n] of Real;
Var Vector:TVector;
B:Real;
i,k:Integer;
Begin
ClrScr;
writeln('Массив элементтерiн енгіз: ');
for i:=1 to n do Read(Vector[i]); Readln;
for k:=n downto 2 do
{к-ші позицияға максималды элементтің “қалқып шығуы”}
For i:=1 to k-1 do
If Vector[i]Vector[i+1] then
Begin
B:=Vector[i];
Vector[i]:=Vector[i+1];
Vector[i+1]:=B;
End;
writeln('Сортталған массив: ');
For i:=1 to n do Write(Vector[i]:8:2);
Written;
end.
Шейкерлі іріктеу
Бұл алгоритм негiзiнен айырбас арқылы іріктеудің модификациясы
болып табылады. Айырмашылығы, айырбас арқылы іріктеуде өтулер бiр жақты
ғана болса, мұнда бағыт әрбiр рет сайын өзгерiп отырады. Сонымен
қатар, шейкерлi іріктеуде айырбас фактi мен айырбастың соңғы орнын
анықтауға болады. Негiзгi алгоритмде екiлiк өтулер саны N div 2-ге
тең.
Мысалы:
а[1..n] массивiн Шейкерлi сорттау арқылы өсу ретiмен орналастыру.
Program Shaker;
Var a:array[1..20] of integer;
N,i,k,x,j,d : integer;
Begin
write('Массив элементтерiнiң саны');
read(N);
For i:=1 to n do
writeln('Массивтi енгiзiңiз');
read(a[i]);
d:=1; i:=0;
For k:=n-1 downto 1 do { k – салыстырылатын жұптар саны }
Begin
i:=i+d;
For j:=1 to k do
Begin
If (a[i]-a[i+d])*d0 then
{көршiлес элементтердi орындарымен ауыстыру}
Begin x:=a[i]; a[i]:=a[i+d]; a[i+d]:=x; end;
i:=i+d;
end;
d:=-d;
{қозғалыс бағытын қарама-қарсыға өзгертемiз}
end;
For i:=1 to n do write(a[i],' '); {реттелген массив}
End.
Қосу арқылы іріктеу
Тәсілдің принципі:
Массив іріктелген және іріктелмеген болып екі бөлікке бөлінеді.
іріктелмеген бөлігіндегі элементтер кезек-кезекпен іріктелген ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz