1 билет Алгоритм ұғымы. Алгоритмнің анықталу жолдары. Алгоритмнің графигі



жүктеу 55,45 Kb.
бет9/15
Дата03.02.2022
өлшемі55,45 Kb.
#35492
1   ...   5   6   7   8   9   10   11   12   ...   15
698 algoritm

10 сурак

Массив дегеніміз не? Массив қызметтері және сипатталуы

Массив дегеніміз - бір атпен аталған, әртүрлі индекстелген бір типті

элементтер жиынтығы.

Қасиеттері:

Массивтің қасиеттерін анықтайтын 4 негізгі принципі бар:

-массивте элементтер деп аталатын мәндер сақталады;

-массивтің барлық элементтері бір типті болуы керек;

-жадыда массивтің барлық элементі тізбектеліп орналасады және бірінші

элемент адрестің нөлдік индексін білдіреді;

-массив атауы тұрақты болып табылады және массивтің бірінші элементінің

адресінен тұрады.

Mассивтің сипатталуы:

<элементтің типі><массив аты> [<элементтер саны>];

Мысалы, int a[12]; {12 элементтен тұратын массив}

char s[20]; {20 элементтен тұратын массив}

#define KOL 10 {}

int [KOL];

6.2. Массивтің инициялизациялануы

Массивті инициялизациялау 3 тәсілмен анықталады:

- массивті құру барысында;

- массивті құру барысында бастапқы тұрақтыларды көрсету;

- программаның орындалу барысында;

- құру барысында массивтің бастапқы мәндері берілмесе, онда автоматты түрде

массив 0-мен толтырылады(NULL). 59

Мысалдар:

int a[3]={-1,0,1};

char buk [ ]={‘A’,’.’,’*’,’-‘,’!’,’i’,’u’};

float x[4]={0,1.5,7.55,-3.3E1,0,1.1457890,-1.1};

Массив элементінің саны мәндер санына сәйкес келмесе (3-ші мысал) көпшілік

компиляторда қате хабарланады, ал кейбірі автоматты түрде өлшемін үлкейтеді

немесе жетпесе (мән) 0-мен толықтырылады.

2-ші мысалда массивтің элементтер саны мәндері санына қарай анықталады.

6.3. Массив элементтерімен жұмыс жасау

Массив элементтерін қолдану үшін квадрат жақшада бүтін мәнді индекс

көрсетіледі. Мұндағы индекс массивтің базалық адресіне қарағанда элементтің

орнынының ығысу адресін анықтайды. С/С++ машиналық-бағытталған тіл

болғандықтан массивтің бірінші элементті 0-ші индекстен басталып нөмірленеді,

себебі массивтің бірінші элементті оның базалық адресінің басынада орналасады да

бірінші элементтің адресін алу үшін ешқандай ығысу жасалудың қажеті жоқ.

Мысалы, 5-ші элементтің адресін алу үшін базалық адрестен бастап, 4 элементке

ығысу орындалуы тиіс.

Массивпен жұмыс жасауда алдымен массив сипатталады. Мұнда квадрат

жақшада оның элементтерінің саны көрсетіледі, ол өз кезегінде жадыдан бөлінетін

ұяшықтар санын анықтайды.

Мысалы:

Int imas[6];

Сипатталуына сәйкес анықталған массивтің элементтерінің саны -6 және элементтері 0-ден 5-ке дейін индекстелгендіктен мынадай қолданылу жолы дұрыс болмайды:

Imas[6]=3667;

Массив элементін қолданғанда индекс ретінде үш түрлі мән беруге болады:

1. Сандық тұрақты.

2. Айнымалы.

3. Өрнек.

Мұндағы мәндердің нәтижесі массивтің сипаттамасындағы мәліметтерге

сәйкес логикалық корректі сан болуы тиіс.

Қолданылу мысалдары:

#define K 8

int imas[k]; /*8 элементтерен тұратын массив сипаты */

int w=6; /* w бүтін типті айнымалысының сипаты*/

imas[3]; /*массивтің 4-ші элементті */

imas[w]; /* массивтің 7-ші элементі */ 60

imas[k-6]; /*массивтің 3-ші элементі */

Индекс массивтің жадыдан қанша байт орын алатынынан тәуелсіз тікелей реттік нөмініне сілтейді.

6.4. Символдық массивтер

Егер программада жолдық мәліметтерді өңдеу қажет болса, онда оны символдар массив ретінде қарастыру қажет. Мұндай массивте жолдың әрФ элементі үшін жеке ұяшықтар бөлінеді және ең соңғы элементі ретінде жолдың соңы таңбасы (\о) қойылуы тиіс.

Символдық массивті енгізу және инициализациялау мысалдарына

программа келтірейік:

#include

main ()

{

char pan[12], razm[5];



static char opr[11]=”информация”;

razm[0]=’б’;

razm[1]=’а’;

razm[2]=’й’;

razm[3]=’т’;

razm[4]=\o’;

printf(“\n информатика сөзін енгізіңіз:“);

scanf(“%s”, pan);

printf(“\n %s \n”, pan);

printf(“\n %s \n”, razm);

printf(“\n %s \n”, opr);

}


Көріп отырғанымыздай символық массивке енгізілетін жолдық мәннің ұзындықтары бірге арттырылып алынып отыр. Ол орын жолдың соңы таңбасына

арналады. Инициализациялау барысында ол таңб арнайы қойылады.

6.5. Көп өлшемді массивтер

Бір типті элементтер жиынтығын өңдеуде олардың жадыда санына қарай және элементтерін қолдану моделіне қарай анықтап сипаттау мүмкіндігі бар. Соған байланысты массивтің өлшемі анықталады деп есептеледі. Демек, индекстерінің 61

көрсетілуіне қарай бір өлшемді, екі өлшемді т.с.с. массивтерді анықтауға болады. Екі немесе одан да көп өлшемді массивтеркөп өлшемді массивтер деп аталады. Сәйкес өдшемде сипаттау үшін квадрат жақшаларда олардың өлшемдері көрсетіледі. Мысалы, екі өлшемді массив екі квадрат жақшамен анықталып төмендегідей сипатталады: float massiv[3][4]; Мұндағы massiv массив атауы, ал массивтің 12 элементі бар, массив 0-ден 2-ге дейін индекстелетін 3 жолдан және 0-ден 3-ке дейін индекстелетін 4 бағаннан тұрады.

Пратикада массив өлшемі көбінесе үш өлшемдіден аспайды.

Масиивті екі өлшемді түрде сипаттағанмен ол ЭЕМ жадысында тізбектелген бірдей типті мәндер тізбегі ретінде орналатырылады да, массивтің алғашқы элементінің орынының адресі-базалық адресі массив атуына беріледі. Жалпы массив атауы - өз бетінше көрсеткіш болып табылады. С/С++ тілдерінде праткиада математикалық моделі матрица түрінде анықталатын есептерді қарастырғанда көп өлшемді массив құру міндетті емес. Оны

бір өлшемді массив түрінде ұйымдастыруға болады. Ал, элементтерін ретімен қолдану үшін оның реттік нөмірін сәйкес анықтау формуласын дәл анықтаса жеткілікті. Себебі компьютерде көп өлшемді массив түрінде сипатталғанымен бірдей элементтер тізбегі басқарылады. Мысалы, a[3,4] массивінің a[і,j] –ші элементін қолдану ретін қарастырайық. Ол үшін 12 элементтен тұратын бір өлшемді массивті төмендегідей сипаттайық: Float a[12];

Ал, a[і,j] –ші элементін мына түрде өрнектеледі - a[i*4+j].

Мысалы, 2 жолы мен 3 бағанының қиылысуындағы элементті қолдану үшін оның a[1][2] индекстерімен анықталатыны белгілі. Ал жоғарыдағы a[i*3+j] өрнегіне қоятын болсақ a[1*4+2]=a[6] болады. Бұдан екінші жолдың 3-ші элементті тізбекте 7-ші екендігін, ал оны қолдану үшін массивтің базалық адресіне қарағанда 6 элементке жылжу қажеттігін аңғару қиын емес.





жүктеу 55,45 Kb.

Достарыңызбен бөлісу:
1   ...   5   6   7   8   9   10   11   12   ...   15




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау