Массив элементтерін сорттау

МАЗМҰНЫ

КІРІСПЕ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...4
1 ТЕОРИЯЛЫҚ НЕГІЗІ ЖӘНЕ АҚПАРАТПЕН ЖАБДЫҚТАЛУЫ
1.1 Массивтерді сипаттау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...5
1.2 Массив элементтерін өңдеу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .8
2 МАССИВ ЭЛЕМЕНТТЕРІН СОРТТАУ
2.1 Берілген шарттарға байланысты массив элементтерін сорттау ... ... ... ..12
2.2 Екі өлшемді массивтерді өңдеу ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..17
2.3 Массивтегі циклдік орын ауыстыруды программалау ... ... ... ... ... ... ... 18
3 ЭЕМ.ДА ЕСЕПТЕРДІ ШЕШУ ЖӘНЕ ТАЛДАУ
3.1 Бір өлшемді массивті паскаль тілінде өңдеу ... ... ... ... ... ... ... ... ... ... ... 21
3.2 Екі өлшемді массивті паскаль тілінде өңдеу ... ... ... ... ... ... ... ... ... ... ... 22
ҚОРЫТЫНДЫ ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...25
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 26
КІРІСПЕ

Курстық жұмыстың тақырыбы: Паскаль тілінде бір өлшемді массивтермен жұмыс жасау.
Курстық жұмыстың мақсаты: Турбо Паскал программалау ортасында бір өлшемді және екі өлшемді массивтерді күрделі есептерді шешуде қолдануды үйрену.
Ақпараттық коммуникациялық технологиялардың қарқынмен дамып, күнделікті тұрмысқа енуіне байланысты соңғы кездері программалауға деген қызығушылықтың арта түскені белгілі. Қазіргі уақытта компьютерсіз қандай да бір жұмыс істейтін адамға қандай да бір ұмтылысты тудыруы мүмкін.
Есептеуіш техниканың қарқынмен дамуы тиімді программалық құралдарды жасау – объектілі бағдарланған программалау жүйелерінің жасалуына әкелді. Жылдам құру жүйесінің негізіне (RAD-Rapid Application Development –қосымшаларды жылдам құру ортасы)визуалды жобалау мен оқиғалы объектілі бағдарланған программалау технологиясы алынған. Мұндай программалаудың мәні – программа жасаушы құрал жұмыстың көп бөлігін өзі атқарып, программистке диолог терезелерін құрастыру мен оқиға өңдеушіні құру жұмыстарын қалдырады. RAD жүйелерінің ішінде Borland Delphi және Visual Basic орталары әртүрлі программалар құруға мүмкіндік береді: қарапайым бір терезелік қосымшалардан бастап, үлестірілген мәліметтер қорын басқару программаларына дейін. Borland Delphi ортасындағы программалау тілі Object Pascal тілі.
Программалау іскерлігін үйрену үшін нақты есептер шығарып, программасын жаза білу қажет. Ол үшін программалау тілі мен оны құру ортасын меңгеру керек. Объектілі бағдарланған программалау жүйелерінде программалаудағы негізгі ерекшелік алдымен программалау синтаксисі мен компоненттерді пайдалануды үйренуде болып табылады.
Бұл ұсынылып отырған оқу құралдарында объектілі бағдарланған программалау жүйелерінің негіздері берілген. Оқу құралын Delphi ортасында программалауға қажетті теорилық материалдар мен мысалдар келтірілген. Әрбір тараудың соңында теориялық материалдарды бекітуге арналған бақылау сұрақтары мен жаттығулар берілген.
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТ ТІЗІМІ

1. Абрамов В.Г., Трифонов Н.П., Трифонова Г.Н. Введение в язык Паскаль. - М.: Наука, 1988. - 320 б.
2. Абрамов С.А., Зима Е.В. Начала программирования на языке Паскаль. - М.: Наука, 1987. - 112 б.
3. Вирт Н. Алгоритмы и структуры данных./ Ағылшан тілінен аударылған. М.: Мир, 1989. - 360 б.
4. Грогоно П. Программирование на языке Паскаль. - М.: Мир, 1982. - 382 б.
5. Дантеманн Дж., Мишел Дж., Тейлор Д. Программирование в среде Delphi: Ағылшан тілінен аударылған. - Киев: НИПФ “ДиаСофтЛтд.”, 1995. - 608 б.
6. Епанешников А., Епанешников В. Программирование в среде Турбо Паскаль 7.0. - М.: ДИАЛОГ-МИФИ, 1993. - 288 б.
7. Йенсен К., Вирт Н. Паскаль. Руководство для пользователя и описание языка: Пер. с англ. - М.: Финансы и статистика, 1982. - 151 б.
8. Матчо Дж., Фолкнер Д.Р. Delphi: Пер.с англ.- М.: БИНОМ, 1995. - 464 б.
9. Орлик С.В. Секреты Delphi на примерах: - М.: БИНОМ. - 316 б.
10. Перминов О.Н. Программирование на языке Паскаль. - М.: Радио и связь, 1988. - 224 б.
11. Пильшиков В.Н. Сборник упражнений по языку Паскаль: Учеб. пособие для вузов. - М.: Наука, 1989. - 160 б.
12. Прайс Д. Программирование на языке Паскаль: Практ. руководство. - М.: Мир, 1987. - 232 б.
13. Рубенкинг Н. Турбо Паскаль для Windows: В 2 т.; Ағылшан тілінен аударылған - М.: Мир, 1993. - 536 б.
14. Фаронов В.В. Турбо Паскаль. В 3-х книгах. Книга 1. Основы Турбо Паскаля. - М.: Учеб.-инж.центр МВТУ-ФЕСТО ДИДАКТИК, 1992. - 304 б.
15. Фаронов В.В. Паскаль и Windows. - М.: Учеб.-инж.центр МВТУ-ФЕСТО ДИДАКТИК, 1994. - 539 б.
16. Фаронов В.В. Практика Windows-программирования. М.: Информпечать, 1996. - 247 б.
17. Федоров А., Рогаткин Д. Borland Pascal в среде Windows. - Киев: Диалектика, 1993. - 656 б.
18. Форсайт Р. Паскаль для всех: Ағылшан тілінен аударылған.- М.: Машиностроение, 1986. - 288 б.
        
        Мазмұны
Кіріспе.....................................................................
..............................................4
1 Теориялық негізі және ақпаратпен жабдықталуы
1.1 ... ... ... ... ... ... ... шарттарға байланысты ... ... Екі ... ... Массивтегі ... орын ... ... ... шешу және ... Бір ... ... паскаль тілінде
өңдеу............................................21
2. Екі ... ... ... ... ... ... ... ... бір ... массивтермен
жұмыс жасау.
Курстық жұмыстың мақсаты: Турбо ... ... ... ... және екі өлшемді массивтерді күрделі есептерді шешуде қолдануды
үйрену.
Ақпараттық коммуникациялық ... ... ... күнделікті
тұрмысқа енуіне байланысты соңғы кездері программалауға ... арта ... ... ... уақытта компьютерсіз қандай
да бір ... ... ... ... да бір ... тудыруы мүмкін.
Есептеуіш техниканың қарқынмен дамуы тиімді ... ...... бағдарланған программалау жүйелерінің жасалуына әкелді.
Жылдам құру ... ... ... Application Development
–қосымшаларды жылдам құру ортасы)визуалды жобалау мен оқиғалы ... ... ... ... ... ... мәні
– программа жасаушы құрал жұмыстың көп бөлігін өзі атқарып, программистке
диолог терезелерін құрастыру мен ... ... құру ... RAD ... ... Borland Delphi және Visual Basic ... ... құруға мүмкіндік береді: қарапайым бір терезелік
қосымшалардан бастап, үлестірілген мәліметтер қорын ... ... Borland Delphi ... ... тілі Object Pascal ... іскерлігін үйрену үшін нақты есептер шығарып, программасын
жаза білу ... Ол үшін ... тілі мен оны құру ... ... ... ... ... жүйелерінде программалаудағы
негізгі ерекшелік алдымен ... ... мен ... ... болып табылады.
Бұл ұсынылып отырған оқу ... ... ... ... ... ... Оқу құралын Delphi ортасында
программалауға қажетті теорилық материалдар мен ... ... ... ... ... ... бекітуге арналған бақылау
сұрақтары мен ... ... ... негізі және ақпаратпен жабдықталуы
1.1 Массивтерді сипаттау
Паскаль тілінде жеке-дара мәліметтермен қатар, қандай да бір ... ... ... да ... ... Осындай топтардың
бірі - құрылымдық типті ARRAY (массив) мәліметтері.
Массив дегеніміз - бір ... ... ... ... бір ... ... ... массивтің элементтері дейіді, олардың саны
сипаттама бөлімінде жарияланып анықталады да, ... ... ... ... ... типі ... басқа кез келген
(бүтін, нақты, символдық, жолдық, массивтік т.б.) типті бола ... ... ... ... массивін, символдар массивін, массивтер массивін
т.с.с. қарастыруға мүмкіншілік бар. Массив элементтерінің типін массивтің
негізгі ... типі деп ... ... бір ... аталады, ал элементтерінің реті ... ... ... ... ... соң тік ... ... мысалға: a[1], a[2], a[3],… a[i],… a[n]. Индекстің типі
массив элементтерінің ретінің өзгеру аралығын көрсетеді де, ... ... ... ... аралық, атау) бірімен беріледі. Массивтің
типін анықтау үшін Array … of ... ... ... ... ... ... ала ... сипаттайтын Type тарауында
жарияланады немесе айнымалылар Var тарауында аталады.
Жазылуының ... ... ... ... типі - 1-индекс, 2-индекс, ...
элементтер типі - ... ... ... ... ... ... айнымалылар тарауында анықталуы:
Var
:array[]:of;
Бір өлшемді массивтердің жариялануын көрсететін мысал.
Бірінші түрі.
Var
M1:array[1..10] of integer; - 10 бүтін саннан тұратын ... ... ... ... айнымалылар келтіріледі:
M1[1] M1[2] M1[3] ... ... ... да ... ... тұратын массивтерді жариялауға
болады, мысалға:
M2:array[1..14] of Char; - 14 символдан ... ... of Real; - 100 ... ... ... ... of string; - 5 тестік жолдан тұратын массив.
M5:array[1..7] of Boolean; - 7 логикалық типті элементтерден ... де екі ... ... типі ... ... және ... ... бар болса, онда бұл массивтерді (қатынас = ... ... ... бір ... ... ... ... бұл операциялар
өте сирек пайдаланады, әдетте массивті ... ... ... егер де ... жарияланса, онда массивтің кез келген элементін
шақыру үшін массивтің аты және де тік ... ... ... реттік нөмірі (индексі) жазылуы тиіс.
Екінші түрі.
Жоғарыда көрсетілген мысалдарда массив тікелей айнымалылар ... ... ... ... ... ... ... Type тарауында жарияланады да, кейін айнымалылар Var тарауында осы
жарияланған типті айнымалылар аталады, мысалға,
Type
R1: array [1..10] of integer;
R2: array [1..6] of ... array [1..3] of ... array [1..8] of ... array [1..5] of ... ... ... ... алдын ала типтер тарауында
анықталғандықтан, айнымалылар тарауында массивтер жариялануы келесі ... : ... : ... : ... : ... : ... Type тарауында жариялаудың басымдылығын келесі нақты мысалдан
көруге де болады.
Type
Gruppa=(G1,G2,G3,G4);
Famil=array(byte) of ... of ... of ... of ... of ... ... of integer;
B2 бұл мысалда типтер тарауында жарияланған Famil типімен сипатталған,
мұнда индекстің типі байттық (byte) болғандықтан, B2 ... char ... ... ... ... ... айнымалылар тарауында сипатталған integer типті 60 элементтен
(N2[1],N2[2],…N2[60]) тұрады.
M3 бірден сипатталған G1,G2,G3,G4 мәндерінің бірін қабылдай алатын ... ... ... ... ... real ... 10 ... (Vector[1], Vector[2], …, Vector[10])
тұрады.
M5 массивінің индексінің типі AI аталу типімен ... ... ... ... ... көрсетіледі де, 28, 29, 30, 31
сандарының бірін қабылдайды.
LOG массиві индексінің типі логикалық, яғни екі ... ... ... (LOG(True):=9; LOG(False):=4).
Массивтің индексі мен элементтерінің мәндерін ажырата білу ... ... ... ... ... ... М5 массивінің
элементтерінің орналасуын схема түрінде көрсетейік.
31 |28 |31 |30 |31 |30 |31 |30 |31 |30 |31 |30 | |I |II |III |IV |V ... |VIII |IX |X |XI |XII | ... ... ... ... ... ... мәндері, ал
екінші жолда массив ... ... ... ... ... ... массивтің негізгі (базалық) типі массивтік болса, онда қарастырып
отырған массивтің өлшемі жоғарылайды.
Мысал.
Type
Vector=array[1..3] of integer;
Matrix=array[1..5] of vector;
Var
A: matrix:
Мұндағы А - екі ... ... ... ... ... ... А[1.2] ... ... ... ... ... сипаттауға да болатын еді:
Var
A: Array[1..3, 1..5] of integer;
Осылай кез келген ... ... ... ... ... массивтің өлшеміне шек қойылмайды, ол тек падаланатын компьютер
жадының сыйымдылығымен шектеледі.
Іс жүзінде бір және екі өлшемді ... жиі ... ... ... ... элементтерін вектор, ал екі ... ... ... ... ... саналады.
Массивті сипаттау үшін алдына ала анықталған тұрақтылар да пайдаланады:
Const
T1 = 4; T2 = ... ... 1..T2] of ... ... ... ... ... бірінен соң бірі орналасады.
Мысалы M: ... of integer ... ... жадында
индекстерінің өсуі бойынша келесі түрде орналасады:
M[1,1] M[1,2] M[1,3] M[2,1] M[2,2] M[2,3] M[3,1] M[3,2]M[ ... ... ... өңдеу
Массив жарияланған соң оның әр элементі массив идентификаторы арқылы
шақырылып, ... ... ... береді. Мысалы келесі жазу Fam[3] болсын,
онда Fam ... ... ... ал ... - екі өлшемді Tabl
массивінің ... мен ... ... ... шақыруға мүмкіндік
береді.
Массив элементтерін өңдеу операцияларына мысалдар қарастырудан бұрын
келесі үш ... және төрт ... ... ... келтірейік:
Var
A,D : array [1..4] of real;
B : array ... of ... : ... : real;
Массив элементтеріне бастапқы мәндерін меншіктеу. Бұл ұғым ... ... ... ... ... болатын бір мәнді меншіктеуді білдіреді.
Бұл операцияның For операторы арқылы орындалуы тиімді болады:
For I:= 1 to 4 do ... ... ... ... ... ... меншіктеу үшін
бірінің ішіне бірі орналасқан For операторлары арқылы ұйымдастырған жөн:
For I:= 1 to 10 ... J:= 1 to 15 ... ... ... элементтерінің барлығын тұтасымен экранға
немесе баспаға шығаратын құралдары жоқ болғандықтан ... ... ... ... ... ... меншіктеу
операторы арқылы жүргізуге болады, бірақта іс жүзінде олардың мәндері ... Readln ... ... клавиатурадан енгізіледі:
For I:=1 to 4 do Readln(A[I]);
Ал екі өлшемді массив үшін:
For I:=1 to 15 ... Readln ... ... ... ... ... жаңа ... бастап жазылады.
Массив элементтерін экранға немесе баспаға шығару үшін енгізуге ұқсас
программалар жазылады, бірақ Read, Readln орнына Write ... ... ... I:=1 to 4 ... (A[I]); {А массивінің элементтерін шығару}
Ал екі өлшемді массив ... I:=1 to 10 ... J:=1 to 15 ... ... {B ... ... ... элементтерін көшіру үшін бір массивтің барлық элементтерінің
мәндерін екінші массивтің элементтеріне меншіктеу керек, қойылған ... үшін ... бір ... ... А:=D ... For ... операторлық жол жеткілікті:
For I:=1 to 4 do A[I]:=D[I];
Екі жағдайда да D массивінің элементтері өзгеріссіз ... ал ... ... ... D ... ... мәндеріне тең
болады.
Кейде массив бойынша белгілі бір ... ... ... элементтерін
табу керек болады. Мысалы М массивінің неше элементінің мәні нөлге тең? Бұл
сауалға жауап беру үшін К - ... ... және For мен ... ... К ... М массивінің нөлдік элементтер
санын сақтауға арнайық. Енді программа келесі түрде жазылады:
K:=0;
For I:=1 to 5 ... M[I] = 0 then ... ... ... ... соң К ... нөлдік мәнде
элементтер саны есептелінеді. К-ның ... мәні 0-ге тең ... For - ... ... ... ... орнын ауыстыру да қосымша айнымалыны (К массивтің
базалық типіне сәйкес болуы керек) енгізу арқылы шешілетін мәселе. Мысалы ... ... және ... ... ... ... керек болса:
Kos:=M[4]; {Kos-қосымша айнымалы}
M[4]:= M[2];
M[2]:= Kos;
Іс жүзінде ... ... ... есептерін программалауда
массив элементтерін сұрыптау, белгілі бір шартқа байланысты іріктеу немесе
ретке келтіру ... жиі ... ... типті мәліметтерді өңдеуге арналған тәсілдерін
көрсету мақсатымен төмендегі бірнеше мысалдарды қарастырайық.
1.1. Мысал. Бір ... А(i) ... i = 1, 2, …, N) ... S ... және P көбейтіндісін есептейтін алгоритмін құру
қажет. Есептеуде массив элементтерінің саны 20 болсын.
Осы N ... ... ... А ... деп қарастырсақ, массивтің
элементтері а[1], a[2], …, a[20] нақты сандар болады.
Бұл ... ... ... яғни бір өлшемді массив
элементтерінің көбейтіндісі мен ... ... ... екі өз бетінше
қарастырылатын есептер. Оларды бір алгоритмде қарастырылуы тек олардың
біркелкілігі.
а) ... Бір ... ... ... ... мен ... ... (а); модификация блогын қолданып құоылған алгоритм (б)
Program M61;
Var
i: integer;
A: array[1..20] of ... ... i:=1 to 20 do ... P:=1;
For i:=1 to 20 do
Begin
S:=S+a[i]; P:=P*a[i];
End;
Writeln (‘қосынды=’, S:6:2);
Writeln (‘көбейтінді=’, P:6:2);
End.
Бұл программада 20-ға тең болатын тұрақты мән үш рет ... ... ... ... саны ... болса, программаға да бірнеше
өзгерістерді енгізуге тура келеді, ... ... ... ... ... ... алу ... болып табылады. бұл жағдайда
жоғарыда келтірілген программа төмендегі ... ... ... ... ... of ... real;
Begin
For i:=1 to N do Read(a[i]);
S:=0; P:=1;
For i:=1 to N do
Begin
S:=S+a[i]; ... ... ... ... P:6:2);
End.
Енді программада массив элементтерінің санын өзгертетін болсақ, ... тек бір ғана ... ... ол: N ... ... ... Массив элементтерін сорттау
2.1 Берілген шарттарға байланысты массив элементтерін сорттау.
Алдын ала қойылған талаптарға сәйкес ... ... ... ... ... ... мысалдарды қарастырайық.
1.2-мысал. Белгілі бір U шартын қанағаттандыратын А(i), (мұндағы i =
1,2,3,…N) ... ... ... мен ... ... ... құру қажет болсын.
Берілген мәліметтер: A(N) массиві;
N - массив өлшемі;
i - цикл параметрі;
параметрдің бастапқы мәні - ... ... мәні - ... S - U ... қанағаттандыратын A(i) массивінің
элементтерінің қосындысы;
k - U ... ... ... ... ... ... енгізу (циклде
орындалады)
S пен K-ға бастапқы мәндерін меншіктеу
U шартын тексеру (мысалдың нақты ... ... ... орындалса S пен K мәндерін
өзгерту
ия ... ... ... ... U ... ... бір өлшемді массив элементтерінің санын
және қосындысын табу алгоритмнің үзіндісі
Массив элементтерінің қосындысын немесе ... ... ... ... бір ... ... ... жалпы санын есептегенде қорытындыланатын нәтижені арнайы бір
шамаға ... ... ... ... отырған мысалда белгілі
бір U шартын қанағаттандыратын A(i) массив элементтерінің жалпы саны ... ... Оның ... мәні S ... ... ... нөлге тең болады.
Алгоритм орындалу барысында U шартын қанағаттандыратын тағы да жаңа бір
элемент анықталатын болса, онда S қосындысына осы ... мәні ... k ... ... ... бұл U ... қанағаттандыратын тағы да
бір элементтің анықталуын көрсетеді, яғни k айнымалысы санаушы ... ... ... ... ... integer;
A: array[1..N] of real;
S,P: real;
Begin
For i:=1 to N do Read(a[i]);
S:=0; P:=1;
For i:=1 to N do
If a[i] a[i] then
Max:=a[i];
End;
Writeln ... ... ... максималдық элементтің реттік нөмірін табу керек
болады, онда программаға тағы да бір тұрақтыны, мысалға к-ны енгізу ... ... ... алгоритмнің бірнеше модификациялары бар,
соларды қарастырайық:
• егер шарт блогында ( > ) ... ( < ) -ге ... онда ... кіші ... ... табуға болады;
• егер есепте максималдық элементтің мәнімен қатар оның индексін (реттік
нөмірін) табу ... ... онда тағы бір ... ... ... туындайды.Ол индекстің мәнін сақталу үшін ппайдаланылады,
мысалы оны к деп белгілейік. Бұл жағдайда ... ... ... ... М-ге ... ... ... блокта к-ның бастапқы мәні бірге
тең де,п қосылады (k=I – максималды элементтің индексі, осы кезеңде 1 тең);
... ... (М=ai ) ... ... k=i деп қосу ... ... жаңа ... индексін белгілейді;
– соңында, нәтижені ... ... ... k-нің ... ... шығаруын ұмытпаңыздар. Осы өзгерістерді енгізгеннен кейін жоғарыда
аталған блоктардың түрі:
Бұл алгоритмдер бір өлшемді ... ... ... әр түрлі
есептерде пайдалынады.
2.2 Екі өлшемді массивтерді өңдеу
Массив типін сипаттау келесі ережемен жазыладыі:
TYPE = ARRAY [,< инд2_тип >] OF < тип ... соң ... ... ... ... VAR ... мысалы:
TYPE mas2=ARRAY [1…5, 1…5] OF ENTEGER;
VAR A,B,C: mas2;
Массив типінің айнымалыларын программаның VAR ... де ... ... ... [1..M, 1..N]OF ... M жјне N- ... жол мен ... санын анықтайтын константтар,.
. Егер программада массивтің келесі сипаттамасы қолданса:
VAR A:ARRAY [1…3, 1..2] OF BYTE;
BEGIN
A[1,1]:=1; ... ... ... ... ... ... ... мјні бар байттар бірінің артынан
бірі орналасады:
Осы зертханалық жўмыста екі өлшемді ... ... ... ... екі ... ... енгізу жјне шығару үшін
программа үзіндісі келтірілген:
{ A[N, N], ... ... I:=1 TO N ... J:=1 TO N DO
READ (A[I, J]);
{A[N, N] массивті шығару}
FOR I:=1 TO N ... J:=1 TO N ... (A[I, ... ... циклдік орын ауыстыруды программалау
Циклдік орын ауыстыру алгоритмдері. Осы есептерлің ішінде циклдік
жылжытуды ... ... ) ... ... аса ... деп ... ... елесі есептерді қарастырайық.
Мысал. Циклдік жылжыту арқылы N ... ... А ... оңға ... М ... ... , ал соңы М ... ... ... ... жылжыту керек болсын.
Берілген мәліметтер: A(N) массив элементтері - a(i);
M – массив элементтерін неше ... ... ... ... – А ... ... саны;
Қосалқы шамалар: B - массив элементтерін уақытша сақтау үшін;
Нәтижесі:A(N) – элементтерін орын алмастыру барысында шыққан массив;
Бұл мысалдың ... құру ... цикл ... цикл ... ... j ... цикл массив элементтерін М-позицияға жылжыту
үшін арналған. Бұл цикл ... ... мәні 1-ге тең, ... мәні ... тең, ал ... мөлшері 1-ге тең.

А массивінің элементтерінің мәндері енгізіледі
(цикл арқылы)
j индексіне бастапқы мәні ... ... ... элементі В айнымалысында
сақталады
i - параметріне бастапқы мәні меншіктелінеді
Кезектегі элемент алдағы элементке ауыстырылады
Циклдің параметрінің мәні ... i - ... ... ... аяқталуы
тексеріледі
жоқ
а1-ге В-да сақталынған массивтің соңғы элементі
жазылады
Цикл параметрінің мәні өзгертіледі
ия
j - ... ... ... аяқталуы
тексеріледі
жоқ

5-сурет. Оңға қарай циклдік жылжыту алгоритмі
Ішкі i-параметрлі цикл, кезекті i-ші элементтің орнына алдыңғы i-1-
ші орындағы ... ... жазу ... ... жылжыту ұйымдастыруға
мүмкіншілік береді. Бұл цикл параметрінің бастапқы мәні n-нен басталып ... ... Ал ... ... 1-ге тең.
inline (ішіне орналастыру) процедурасы немесе функциясы;
interrupt (үзу) ... ... ... болмауы керек.
Процедураларды белгілейтін айнымалыларды пайдаланудағы сипаттаманы
келтірейік:
Type
PI = Procedure;
Р2 = Procedure(var x, y: ... = ... A, B : char) : ... : ... : ... Fl;
Жоғарыда айтылғандарды қорытындай отырып, келесі түжырымдама жасауға
болады: Паскаль ... ... мен ... ... ... ... ... күрделі мөселелерді шешуге арналған
программаларда оларды программаның ... ... ... ... ма, деген ой туындайды? Әрине болады, бұл жағдайда
программаны түзу ... ... ... ... орындалады.
Процедуралар мен функцияларды пайдалана отырып, түзілген программа түрлі
қажетсіз қайталауларға жол ... де, ... ... ... ... Сонымен, процедуралар мен ... ... ... ... болып, сапалы программа жазуға мүмкіндік
береді. Жоғарыда ұсынылған программалау стилін жүзеге асыру мүмкіндіктерін
көрсету үшін ... ... ... ... есептерді шешу және талдау
3.1 Бір өлшемді массивті паскаль тілінде өңдеу
Паскаль ... ... ... ... ... ... түзіңіздер.
Program STATISTICA;
Const
Msize=100;
Type
TSPISOK = array[l..Msize] of real:
Var
SptsS : Integer;
Low, Upp: real
Spisok : ... ReadSpis (var Num ... неше ... бар?');
Readln(SpisS);
Writeln(‘Тізім элементтерін енгізіңіз’);
{тізім элементтерін енгізудің циклы}
For Count:= 1 to Spisc ... ... ... ... ... MEAN ... real;
Element: integer;
Begin
Sum:=0;
For Element:= to SpisS do
Sum:= Sum+Num[eiement];
MEAN:=Sum/SpisS
End;{MEAN ... ... Vari ... ... Mean ... Count:= 1 to SpisS do
SUM:= SUM+SQR(Num[count]-Sred/SpisS;
Vari:=Sum
End; {Vari функциясының соңы}
{----------------------------------------------------------------------
--------------------}
Procedure FindInter(Num: TSPISOK; Var Min, Max: real ... ... Count:= 2 to SpisS ... Num [count] < Min then ... ... Num[count] > Max then do
Max:= Num [count]
End
End;{FindInter процедурасының соңы}
{-----------------------негізгі программа---------------------------}
BEGIN
ReadSpis(Spisok);
Writeln('Opташа ... тең ‘, ... ... Vari ... Low, Upp);
Writeln(Low, 'дан', Upp, '-ке ... ... әр есеп ... ... ... ... Сондықтан негізгі программаның денесі тек осы ... ... ... ... Екі ... ... ... тілінде өңдеу
2-есеп. А(5,5), В(5,5), С(5,5) массивтері берілген. ... ... ... ... жўп ... максималды элементтері бар
массивті баспаәа шыәару.
Программа тексті:
PROGRAM LAB_8;
CONST N=5;
TYPE MAS=ARRAY [1..N] OF INTEGER;
VAR A,B,C:MAS; { n ... ... ... ... ... X:MAS); { ... ... процедурасы }
BEGIN
WRITELN (‘Введите массив’);
FOR I:=1 TO N DO
FOR J:=1 TO N DO
READ(X[I,J];
WRITELN;
END;
FUNCTION SUM(X:MAS):INTEGER; {элемент соммасын ... ... I:=1 TO N ... J:=1 TO N ... J MOD 2 0 ... (X[I,J]>0)AND (X[I,J] MOD 2=0) THEN S:=S+X[I,J];
SUM:=S
END;
PROCEDURE OUT_MASS(X:MAS); {}
BEGIN
FOR I:=1 TO N ... J:=1 TO N ... ... ... ... AND ... THEN OUT_MAS(A);
IF (SUM(B)>SUM(A)) AND (SUM(B)>SUM(C)) THEN OUT_MAS(B);
IF (SUM(C)>SUM(A)) AND (SUM(C)>SUM(B)) THEN OUT_MAS(C);
END.
3-есеп. А(5,5) массивінің ... ... ... ... ... ... ... кемуі бойынша реттейтiн программа
қўру керек
Программа тексті:
PROGRAM LAB_5;
CONST N=5;
TYPE MAS=ARRAY[1..N, 1…N]OF ... ... OF ... J, L, S, V, MIN, ... А ... ... }
WRITELN (‘Ввод данных’);
FOR I:=1 TO N DO
FOR J:=1 TO N DO
READ(A[I, J]);
{ А массивінің ... ... ... В ... ... I:=1 TO N DO
BEGIN
MIN :=A[I,1] ;
FOR J:=1 TO N ... A[I,J]

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 21 бет
Бұл жұмыстың бағасы: 700 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Интерпол картотекасы13 бет
2- сыныпта математика сабақтарында халық педагогикасы элементтерін қолдану53 бет
C++ екі өлшемді массивтер20 бет
Delphi бағдарламасындағы массивтер12 бет
Turbo Pascal жүйесінде массивтерді ұйымдастыру технологиясы39 бет
Turbo Pascal тілінде екі өлшемді массивті орындау15 бет
«Турбо паскаль жүйесінде бір өлшемді массивтерді ұйымдастыру технологиясы»25 бет
Алгебра элементтерін оқыту әдістемесі15 бет
Арысқұм мұнай кенінің бұрғылау, қондырғысының жаңартылған қосалқы элементтерін электр энергиясымен қамтамасыз ету38 бет
Бір өлшемді массивтер12 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь