С++ программалау тілінде Бір өлшемді массивтер. Сұрыптау



Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 3
1 С++ программалау тіліндегі бірөлшемді массивтер және оларды сұрыптау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
5
1.1 Бірөлшемді массивтер түсінігі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 5
1.2 Бір өлшемді массивтерге орындалатын операциялар ... ... ... ... ... ... ... ... ..
1.3 ... ... ... ... ... ... ... ... .
2 С++ программалау тілінде бір өлшемді массивтерге программа құру ... ... . 10
2.1 С++программалау тілінде бірөлшемді массивтер көмегімен құрылатын программалар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
10
2.2 Группадағы студенттер туралы мәліметтерді сұрыптау программасын құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 13
2.3 С++программалау тілінде бірөлшемді массивтерді жедел сұрыптау ... ... . 17
2.4 Кездейсоқ сандар генераторын пайдаланып массивтерді сұрыптау программасын құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
19
2.5 Матрицаны есептеуде массивтерді қолдану программасы ... ... ... ... ... ... .. 22
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 26
Пайдаланылған әдебиеттер тізімі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 28
Қазіргі кездегі программалау тілдерінің арасындағы қуаттысы әрі кең қолданылатын түрі С++ тілінде программалау болып табылады. Бұл тілдің көмегімен обьектіге бағытталған программалауда мүмкіндіктерді толық көлемде пайдалануға болады және тек қана ағымдағы қосымшалардан тыс қолданыла алатын жаңа обьектілерді құруға арналған программалау тілі.
Қарастырылып отырған курстық жұмыс С++ тілінде программалау тілінде «Бірөлшемді массивтер және оларды сұрыптау» тақырыбын зерттейді. Курстық жұмыста С++ программалау тілінің көптеген мүмкіншіліктері қарастырылып, соңғы бөлімде бірөлшемді массивтерді сұрыптауға арналған есептерге сипаттама беріліп, программалардың орындалу нәтижелері шығарылды.
Курстық жұмыстың мақсаты – С++ программалау ортасында бірөлшемді массивтерді сұрыптау программасын құру болып табылады.
Курстық жұмысты жаза отырып, мақсаттарға сәйкес мынадай міндеттер қойылды:
 С++ программалау тіліндегі массивтер түсінігін, соның ішінде бірөлшемді массивтерді зерттеу;
 Бірөлшемді массивтерді сұрыптау тәсілдерін зерттеу;
 Бірөлшемді массивтерді сұрыптау кезінде қолданылатын қосымша операторлардың мүмкіндіктерін зерттеу;
 С++ программалау тіліндегі бірөлшемді массивтерді сұрыптау программасын құру.
Қарапайым элементтерді пайдаланған кезде мәліметтерді сақтауға арналған әрбір жады аймағына өзіндік жеке атау беріледі. Егер бір типтегі шамалар жиынымен бірдей әрекеттер орындау керек болса, оларға бір ғана атау беріледі де, олар бір-бірінен реттік нөмірлері бойынша ажыратылады. Осылайша көптеген операцияларды циклдер көмегімен жинақты түрде жазуға мүмкіндік туады. Бір типтегі шамалардың ат беріліп, шектелген тізбегі массив деп аталады.
Массив элементтері нөлден бастап нөмірленеді. Массивті сипаттау кезінде қарапайым айнымалыларды сипаттауда жазылатын модификатор (жады класы, const және инициализатор) қолданылады. Массивтерді инициалдайтын мәндер жүйелі жақшалардың ішіне жазылады. Әрбір элементке берілетін мәндер реті бойынша меншіктеледі. Егер массив элементтерінің саны инициалдауға берілген мәндер санынан артық болса, мәндері көрсетілмеген элементтер нөлге теңестіріледі.
Массив өлшемі және элементтерінің типі массивті орналастыруға қажетті жады көлемін анықтайды, оларға бөлінетін жады программаны компиляциядан өткізу кезеңінде беріледі, сондықтан массив өлшемі тек бұтін он тұрақтымен немесе тұрақтылық өрнекпен берілуі тиіс. Егер массивті сипаттау кезінде оның өлшемі көрсетілмеген болса, онда инициализатор болуы керек, мұндайда компилятор жадыны инициалдаушы мәндер санына байланысты бөлінеді.
Пайдаланылған әдебиеттер тізімі
1. И.Г. Семакин, А.П. Шестаков, Основы программирования, - СПб.: «Мастерство», 2002. - 432 с.
2. Н. Культин, - C++ Builder в задачах и примерах, - СПб.: БХВ – Петербург, 2005. – 288с.
3. Т.А. Павловская, Ю.А Щупак, - С/С++. Структурное программирование, - СПб.: «Питер», 2003. – 240с.
4. В.В. Подбельский Язык, С++; учеб.пособие. – 5-е изд., - СПб.: М, «Финансы и статистика», 2003.- 560с.
5. Т.А. Павловская, Ю.А. Щупак, - С/С++. Структурное программирование: Практикум, - СПб.: «Питер», 2007. – 239с.
6. В.И. Понамарев, Программирование на C++/C# в Visual Studio.NET 2003,- СПб.: БХВ-Петербург, 2004.
7. М. Ә. Мұқашева, Программалау /С++ Builder 6/. Оқулық. Астана, ЕҰУ -2011,- 375 б.
8. Г. С. Иванова, Технология программирования: Учебник для вузов. /- М.: Изд-во МГТУ им. Н. Э. Баумана, 2003- 320 с.
9. С.З. Свердлов, Языки программирования и методы трансляции: Учебное пособие. – СПб.: Питер,2007-638 с.
10. Холингворт, Джаррод, Сворт и др. Borland C++Builder 6. Руководство разработчика.: Пер с англ. – М. : ИД «Вильямс», 2004- 976 с.
11. Г. А. Тяпичев, Быстрое программирование на С++.– .: СОЛОН-Пресс, 2004-384 с.
12. Н.С. Заурбеков, Б.Ж. Жұмажанова, Алгоритмдеу және программалау тілдері Алматы «Экономика» 2008.
13. С.Н. Антонов, С++ для начинающих. Диалектика,- СПб.: Санкт-Петербург, 2007.
14. Е.Кондратюк, С++. Трюки и эффекты,- СПб.: Питер, 2006. - 400с.
15. В.Г. Давыдов, Технологии программирования C++ БХВ-Петербург. 2005.
16. С.Н. Антонов, С++ для начинающих. Диалектика,- СПб.: Санкт-Петербург,
17. Г.А. Тяпичев, Быстрое программирование на С++.– СПб .: СОЛОН-Пресс, 2004-384 с.

ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ

"Есептеу техникасы және
ақпараттық жүйе" кафедрасы

С++ тілінде программалау пәні бойынша

КУРСТЫҚ ЖҰМЫС

Тақырыбы: Бір өлшемді массивтер. Сұрыптау

Орындаған: Ақпараттық жүйелер
мамандығының ___ топ студенті ____________
Тексерген: _______________________

Орал, 2013ж.
Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
3
1 С++ программалау тіліндегі бірөлшемді массивтер және оларды сұрыптау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

5
1.1 Бірөлшемді массивтер түсінігі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
5
1.2 Бір өлшемді массивтерге орындалатын операциялар ... ... ... ... ... ... ... ... ..

1.3 ... ... ... ... ... ... ... ... .

2 С++ программалау тілінде бір өлшемді массивтерге программа құру ... ... .
10
2.1 С++программалау тілінде бірөлшемді массивтер көмегімен құрылатын программалар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

10
2.2 Группадағы студенттер туралы мәліметтерді сұрыптау программасын құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
13
2.3 С++программалау тілінде бірөлшемді массивтерді жедел сұрыптау ... ... .
17
2.4 Кездейсоқ сандар генераторын пайдаланып массивтерді сұрыптау программасын құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..

19
2.5 Матрицаны есептеуде массивтерді қолдану программасы ... ... ... ... ... ... ..
22
Қорытынды ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .
26
Пайдаланылған әдебиеттер тізімі ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ... .
28

Кіріспе

Қазіргі кездегі программалау тілдерінің арасындағы қуаттысы әрі кең қолданылатын түрі С++ тілінде программалау болып табылады. Бұл тілдің көмегімен обьектіге бағытталған программалауда мүмкіндіктерді толық көлемде пайдалануға болады және тек қана ағымдағы қосымшалардан тыс қолданыла алатын жаңа обьектілерді құруға арналған программалау тілі.
Қарастырылып отырған курстық жұмыс С++ тілінде программалау тілінде Бірөлшемді массивтер және оларды сұрыптау тақырыбын зерттейді. Курстық жұмыста С++ программалау тілінің көптеген мүмкіншіліктері қарастырылып, соңғы бөлімде бірөлшемді массивтерді сұрыптауға арналған есептерге сипаттама беріліп, программалардың орындалу нәтижелері шығарылды.
Курстық жұмыстың мақсаты - С++ программалау ортасында бірөлшемді массивтерді сұрыптау программасын құру болып табылады.
Курстық жұмысты жаза отырып, мақсаттарға сәйкес мынадай міндеттер қойылды:
# С++ программалау тіліндегі массивтер түсінігін, соның ішінде бірөлшемді массивтерді зерттеу;
# Бірөлшемді массивтерді сұрыптау тәсілдерін зерттеу;
# Бірөлшемді массивтерді сұрыптау кезінде қолданылатын қосымша операторлардың мүмкіндіктерін зерттеу;
# С++ программалау тіліндегі бірөлшемді массивтерді сұрыптау программасын құру.
Қарапайым элементтерді пайдаланған кезде мәліметтерді сақтауға арналған әрбір жады аймағына өзіндік жеке атау беріледі. Егер бір типтегі шамалар жиынымен бірдей әрекеттер орындау керек болса, оларға бір ғана атау беріледі де, олар бір-бірінен реттік нөмірлері бойынша ажыратылады. Осылайша көптеген операцияларды циклдер көмегімен жинақты түрде жазуға мүмкіндік туады. Бір типтегі шамалардың ат беріліп, шектелген тізбегі массив деп аталады.
Массив элементтері нөлден бастап нөмірленеді. Массивті сипаттау кезінде қарапайым айнымалыларды сипаттауда жазылатын модификатор (жады класы, const және инициализатор) қолданылады. Массивтерді инициалдайтын мәндер жүйелі жақшалардың ішіне жазылады. Әрбір элементке берілетін мәндер реті бойынша меншіктеледі. Егер массив элементтерінің саны инициалдауға берілген мәндер санынан артық болса, мәндері көрсетілмеген элементтер нөлге теңестіріледі.
Массив өлшемі және элементтерінің типі массивті орналастыруға қажетті жады көлемін анықтайды, оларға бөлінетін жады программаны компиляциядан өткізу кезеңінде беріледі, сондықтан массив өлшемі тек бұтін он тұрақтымен немесе тұрақтылық өрнекпен берілуі тиіс. Егер массивті сипаттау кезінде оның өлшемі көрсетілмеген болса, онда инициализатор болуы керек, мұндайда компилятор жадыны инициалдаушы мәндер санына байланысты бөлінеді. Кейін массив өлшемі формальді параметрлер тізімінде де кездеспеуі мүмкін екені белгілі. Массив элементіне қол жеткізу үшін оның атауынан кейін тік жақшалар ішіне элемент нөмірі (индекс) көрсетіледі.
Массивтерді сұрыптау массивтермен жұмыс істеу кезінде, дәлірек айтқанда оларды өңдеу кезінде маңызды рөлге ие.
Массив атауы бұл бірінші элементіне көрсеткіші бар тұрақты болып саналады. Сондықтан массивті функцияға беру кезінде мәндердің өзгеруіне қатысты ешқандай кедергі болмайды.

1 С++ программалау тіліндегі бірөлшемді массивтер және оларды сұрыптау
1.1 Бірөлшемді массивтер түсінігі

Массив - жадының үздіксіз облысын алатын бір типті элементтердің жиынтығы. Массивпен оның келесі қасеттері байланысты: атауы, типі, көлемі, өлшемі.
Массивтің сипатталу форматы мынадай:
Элемент типі атауы [тұрақты өрнек]
Тұрақты өрнек массивтің өлшемін анықтайды, яғни массивтегі элементтер санын анықтайды. Мысалы i n t A[10]; сипаттамасына сәйкес А атаулы бүтін типті 10 элементтен тұратын массив шақырылады. Массив элементтері индекстелген атаулармен белгіленеді. Төмендегі өрнекте индекстің мәні 0 тең:
А[0], А [1], А[2], А[3], А[4], А[5], А[6], А[7], А[8], А[9]
Сипаттамада көрсетілген массивтің өлшемі әрқашан индекстің максимальді мәнінен бір бірлікке артық. Массивті шақыру кезінде элемент мәндерінің инициалдануы жүретін болса, оның өлшемі нақты берілмеуі мүмкін. Мысалы: int p[ ] = {2, 4, 6, 10, 1}; Бұл жағдайда бес элементтен тұратын мәндері төмендегідей массив құрылады:
р[0] = 2, р[1] = 4, р[2] = 6, р[3] = 10, р[4] =1
Массивті мынадай жолмен шақыру нәтижесінде: int М[6]={5, 3, 2}; алты элементтен тұратын массив құрылады. Алғашқы үш элементі инициалданған мәндерді қабылдайды. Егер массив сыртқы немесе статикалық болса, қалғандарының мәндері белгісіз болады немесе нөлге тең болады.
Бірөлшемді массивтерді өңдеуге арналған программаға бірнеше мысал келтіруге болады.
Бір өлшемді массивті пернетақтадан енгізіп, экранға шығару программасы:
Массивті енгізу және шығару
#include iostream.h
#include conio.h
void main()
{ int i, A [ 5 ] ;
clrscr ( ) ;
for ( i = 0 ; i5; i++)
{ cout " A [ " i " ] = " ; c i n A [ i ] ;}
for ( i = 0 ; i5; i++)
cout " A [ " i " ] = " A [ i ] " " ;
}
Нақты массивті енгізіп, оның орташа мәнін есептеу:
Массивтің орташа мәні
#include iostream.h
#include conio.h
void main()
{ const n=10;
int i; double A[n], SA;
clrscr () ;
for(i=0; in; i++) {cout"A["i" ]=" ;
cinA[i] ; }
SA=0;
for(i=0; in;i++) SA=SA+A[i];
SA=SAn;
cout"переднее значение="SА;
}
Мұнда константа арқылы массивтің өлшемін анықтауға баса назар аудару керек.
Көпіршіктер әдісі бойынша массивтерді сұрыптау:
Сортировка массива
#include iostream.h
#include conio.h
void main()
{ int X[]={6,4,9,3,2,1,5,7,8,10};
int i,j,n,A;
clrscr();
n=sizeof(X)sizeof(X[0] ) ;
for(i=0; in-l; i++)
for ( j = 0 ; j n - l - i ; j++)
if ( X [ j ] X [ j + l ] ) {A=X[j]; X [ j ] = X [ j + l ] ; X[j+1]=A;}
for ( i = 0 ; in; i++) c o u t X [ i ] " " ;
}
Берілген программада массив инициалданған. Оның өлшемі берілген мәннің санына тең. Программаны массивтің өлшеміне қатысты әмбебап ету үшін, өлшемнің мәндері автоматты түрде есептеледі және n айнымалысына жазылады. Ол үшін sizeof () - өлшемді байтпен анықтау операциясы қолданылады. sizeof (X) нәтижесі барлық х массивінің жадысындағы өлшемі - 2 байтқа тең. Бұл шамалардың қатынасы массив элементтерінің ондық санына тең. Программаны орындау нәтижесінде экранға тәртіппен орналасқан сандар тізімі шығарылады: 1 2 3 4 5 6 7 8 9 10

1.2 Бір өлшемді массивтерге орындалатын операциялар

Бір шаманы сақтау үшін әрбір айнымалыға жады бөлінеді және атауы беріледі. Ал бір типті көптеген шамалардың тобын құру үшін, компьютер жадында оларды тізім бойынша орналастырып, оларға жалпы атау беруге болады, кейін оларды реттік нөмірі бойынша ажыратуға болатын еді. Осындай бір типті элементтердің тізбегін массив деп атаймыз.
Массив - бұл қатар орналасқан және ортақ атауға ие бір типті жадының ұяшықтар тобы. Әрбір ұяшықтың топтағы уникалды нөмірі бар.
Массивтермен жұмыс жасау кезінде үш негізгі мақсатты орындау керек:
# Массивке қажетті өлшемдегі жадыны қалай дұрыс бөлу керек?
# Қажетті ұяшыққа деректерді қалай дұрыс жазу керек?
# Массив ұяшығынан деректерді қалай дұрыстап оқу керек?
Массивті шақыру. Массивті қолдану үшін алдымен оны шақыру керек. Массивті шақыру - ол үшін жадыдан орын босату. Сонымен қатар массивке деректер типін меншіктеу керек. Массивке меншіктелетін деректер типі массивтің барлық элементтеріне беріледі. Массив кез келген айнымалы секілді әр түрлі деректер типінде болуы мүмкін: int, float, char және тағы басқалары. Айнымалылар секілді С++тіліндегі бірөлшемді массивтерге атау беріледі, ал тік жақшаға массивтің өлшемі жазылады: int a[5]; Бұл жазба а атаулы массивтің бүтін типті элементі бар екендігін көрсетеді. Массивтегі элементтер санын массивтің өлшемі деп те атайды.
Массив элементтерін инициалдауға, яғни оларға бастапқы мәнді беруге болады. Массивтің инициалдануы мысалы былай жазылады: int [5]={3,6,2,9,7};
Егер инициалданған мәндер массив элементтерінен кем (немесе артық) болса: int [5]={3,6,2,9}; немесе int [5]={3,6,2,9,8,1}; Бірінші жағдайда қалып қойған массив нөлге айналады, яғни массивтің 5-ші элементіне автоматты түрде 0 меншіктеледі.
Екінші жағдайда, берілген артық мән қолданылмайды. Программаның әмбебаптығын сақтау үшін массивтің өлшемін тұрақтымен көрсеткен тиімді. Төмендегі кестеде массивті шақырудың дұрыс және қате түрлері көрсетілген
Кесте 1.
Массивті шақыру

Дұрыс
Қате
int a[5];
массив өлшемі анық берілген
int a[]
массив өлшемі белгісіз
const int N=5;
int a[N];
массив өлшемі - тұрақты шама
int N=5;
int a[N];
массив өлшемі айнымалы бола алмайды
Массив элементтерін шақыру. Массивтің әрбір элементінің өзіндік тәртіптік нөмірі болады. Массив элементтерін нөмірлеу нөлден басталады, сондықтан максималды индекс (элемент нөмірі) массив өлшемінен 1-ге кем болады. Жоғарыдағы а элементі 0 мен 4 аралығындағы нөмірлерге ие:
a[0], a[1], a[2], a[3], a[4]
Массивке деректерді енгізудің көптеген тәсілдері бар, ол есепке байланысты болады.
1. Массив элементтерін қолмен пернетақтадан енгізуге болады;
2. Массивті кездейсоқ сандармен толтыруға болады;
3. Массивті есептеу кезінде толтыруға болады:
4. Массив элементтерін файлдан оқуға болады;
5. Массив элементтері сыртқы құрылғылар арқылы порт арқылы енулері мүмкін;
Негізгілері болып бастапқы үш тәсілі қолданылады. Массив элементтерін пернетақтадан енгізу қарапайым программаларды орындау кезінде қолданылады. Әдетте массивтерді енгізу үшін for циклі қолданылады. Массивті қайтадан шақыру үшін жадыдан оның элементтері үшін орын бөлінеді. Жадыда қанша ұяшық саны бөлінсе, сонша элемент енгізуге рұқсат етілген. Егер массив 5 элементтен тұратын болса, 4 элементтің 5 нөмірі. Егер артық элемент жазылса, массивтің шегінен шығу болады. Программа бұл жағдайда дұрыс жұмыс жасамауы мүмкін. Массивті енгізу кезінде экранға барлық массивтерді шығару үшін және әрбір элемент үшін түсініктеме жазып отыру керек.
Бірөлшемді массивтің элементтерін енгізу үлгісі:
int a[n]; массивтің өлшемі константа арқылы берілген
cout"Бүтін санды массивтің элементтерін енгізіңіз: \n";
for (int i=0; iN; i++)
cina[i];
Бірөлшемді массивтің элементтерін шығару үлгісі:
cout" Келесі элементтерден тұратын бүтін санды массивалынды: \n";
for (int i=0; iN; i++)
cout"a["i"]="a[i] ` `;
Осылайша массивке пернетақтадан енгізілетін элементтер меншіктеледі.
Массивті кездейсоқ сандармен толтыру үшін, әр түрлі жолдарды қарастыруға болады: өзіндік функцияны жазуға болады, библеотекадағы стандартты функцияларды да қолдануға болады. Соның ішінде соңғысы бірнеше тәсілдермен жүзеге асуы мүмкін. Ол үшін уақыты бар тақырыптық файлды іске қосу керек:
#includectime
Мысалы массивті [-30;100] аралығындағы сандармен толтыру керек. srand функциясы кездейсоқ сандар генераторын инициалдауды жүзеге асырады. time функциясы жүйенің ағымдағы күнтізбелік уақытын қайтарады. Бұл функция нөлдік көрсеткішпен шақырылады. clock функциясы программамен жұмыс жасауға кеткен процессордың жуық уақытын қайтарады.
for циклі жазылған жолы массивті толтыруға көмектеседі.
[-30;100] аралығындағы a кездейсоқ сандар массивін меншіктеу синтаксисін жазу кезінде алдымен бастапқы мән жазылады, соңғы мәнінің жазылуы мынадай: бастапқы +соңғы+1 (30 санының алдындағы минусты ескермегенде).
Массивті берілген шарт бойынша құру. Массивті басқа массивтен құруға болады. Мысалы, А массиві берілсін, ал А массивінен барлық оң элементтерді таңдап, одан жаңа массив құруға болады.
10 элементтен тұратын массив құрылады:
const int N = 10; константа
А массиві кездейсоқ сандармен толтырылады:
srand(time(NULL) clock());
for (int i=0; iN; i++)
A[i]=-30+rand()%131;
А массивінің барлық оң элементтерінен В массиві құрылады:
for (int i=0; iN; i++)
if (A[i]0)
{
B[count]=A[i];
count++;
}
В массивін экранға шығару:
for (int i=0; icount; i++)
cout"B["i"]="B[i]' `;

2 С++ программалау тілінде бір өлшемді массивтерге программа құру
2.1 С++программалау тілінде бірөлшемді массивтер көмегімен құрылатын программалар

С++ программалау тілінде бір өлшемді массивтерге программа құру кезінде мынадай қағидаларды есте сақтау керек:
# Массив - бұл бір типті элементтердің жиынтығын көрсететін деректер құрылымы;
# Массивтерді шақыру құрылымында массив элементтерінің саны көрсетіледі;
# Массив элементтері нөлден бастап нөмірленеді;
# Массив элементтеріне қол жетімділік элементтің индексін (нөмірін) көрсету арқылы жүзеге асырылады. Индекс ретінде бүтін типтің шамасын - тұрақтыны немесе айнымалыны қолдануға болады. Индекс 0-ден n-1 шейін өзгеруі мүмкін, мұндағы n - массив элементтерінің саны;
# Массив элементтеріне қол жетімділікті көрсеткіштердің көмегімен жүзеге асыруға болады;
# Массивтерді шақыру құрылымында #define дерективасында шақырылған атауы бар тұрақтыны қолданған ыңғайлы;
# Массивтерді енгізу, шығару және өңдеу үшін циклдар құрылымын қолданған тиімді (for, while);
# Массивтерді қолдану кезінде типтік қателікке жоқ элементке шақыруды ұйымдастыру жатады, яғни индекстің қол жетімді мәнге шығуы.
Тікелей таңдау тәсілі бойынша пернетақтадан енгізілген бірөлшемді массивті кему ретімен сұрыптайтын программа құру керек.
Программаның коды:
Тікелей таңдау тәсілі арқылы массивті сұрыптау
#include stdio.h
#include conio.h
#define SZ 5 массивтің өлшемі
void main ()
{
int a[SZ]; of integer массиві;
int i; минималды элементке іздеу жүргізілетін
элементтің нөмірі
int min; i массивтен массивтің жоғарғы шегіне дейін
бөліктегі минимальды элементтің нөмірі
int j; минимальдымен салыстырылатын элементтің нөмірі
int buf; массив элементтерін ауыстыру кезінде қолданылады
int k; енгізіп, шығару үшін индекс
printf("\ï Massivti suruptau\ï");
printf("(%i bir zholina butin sandi)", SZ);
printf(" massivti engiziniz zhane Enter basiniz\n");
printf("-");
for (k = 0; k SZ; k++)
scanf("%i", &a[k]);
printf("Suruptau...\n");
for (i = 0; i SZ-1; i++)
{
массивтің a[i] элементінен бастап соңғы элементіне дейінгі
минимальды элементті іздеу
min = i;
for (j == i+1; j SZ; j++)
if (a[j] a[min]) min = j;
[min] мен a[i] орындары ауыстырылады
buf = a[i];
a[i] = a[min];
a[min] = buf;
сұрыптау циклі аяқталды
массивтің аралық жағдайы шығарылады
for (k = 0 ; k SZ; k++)
printf("%i", a[k]);
printf("\n");
}
сұрыпталған массив шығарылады
printf("Massiz suruptaldi\ï");
for (k = 0; k SZ; k++)
printf("%i ", a[k]);
printf("\n");
printf("\ï Zhumusti ayaktau uwin Enter basiniz");
getch();
}

Пернетақтадан енгізілген массив элементтері өсу ретімен тізбектеліп жазылғандығын тексеретін программа құру керек.

Массивтің өсу ретімен сұрыпталғандығын тексереді
#include stdio.h
#include conio.h
#define HB 5
void main()
{
int a[HB]; массив
int k; индекс
int ok; 1 - кемімейтін тізім
printf("Tekseru, massiv tartippen ornalaskan ba\n");
printf("osu retimen \n");
printf("(%i bir zholina butin sandi)", HB);
printf("massivti engiziniz zhane Enter basiniz\n");
for (k = 0; k HB; k++)
scanf("%i", &a[k]);
k = 0;
ok = 1;
do {
if (a[k] a[k+1])
ok = 0;
k++;
} while ( k HB-1 && ok);
printf("Massiv elementteri " );
if ( !ok )
printf("osi retindegi " );
printf("tartippen ornalaspagan\n");
printf("\nZhumusti ayaktau uwin Enter basiniz\n");
getch();
}
Алмасу (көпіршік) тәсілі бойынша пернетақтадан енгізілген бірөлшемді массивті кему ретімен сұрыптайтын программаны құру керек.
Көпіршік тәсілі бойынша массивті сұрыптау
#include stdio.h
#include conio.h
#define SZ 5
void main()
{
int a[SZ];
int i; циклдер санағышы
int k; массив элементінің ағымдағы индексі
int buf;
printf("\ïMassivti\"kopirwikter\ tasilimen suruptau\n");
printf("(%i bir zholina butin sandi) ", SZ);
printf("massivti engiziniz zhane Enter basiniz\n");
for (k = 0; k ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Бір өлшемді массивтерді сұрыптау алгоритмдері
Массив
Турбо Паскаль тіліндегі мәліметтер типі
Спортлото ойыны
Екі өлшемді массивтер
С++ тіліндегі массивтер
Turbo Рascal программалау жүйесі
Delphi және PASCAL тілдерінде массив ұғымын түсіндіру және массивтерді өңдеу
Бір өлшемді массивтер
Программа жұмысын басқару операторлары
Пәндер