11-маъруза: Массивлар (жадвал катталиклар).
Режа:
Массивлар ща=ида умумий маълумотлар;
Бир ылчамли массивлар ва улар устида амаллар;
Кып ылчамли массивлар ва улар устида амаллар.
1. Массивлар ща=ида умумий маълумотлар
Биз шу пайтгача =ийматларнинг оддий (скаляр) типларидан фойдаланиб, турли хил программалар яратишни ыргандик. Скаляр типга тегишли щар бир =иймат ягона маълумот щисобланиб, тривиал структурага эгадир.
Амалда эса, турли хил щосилавий типлар билан ишлашга, улардан фойдаланиб мураккаб программалар яратишга ты\ри келади. Бу типларга тегишли =ийматларнинг щар бири тривиал былмаган структурага эга, яъни бу =ийматлар ыз навбатида яна бир нечта =ийматлардан ташкил топади.
Энди шундай типлардан бири былган, программалашда энг кып =ылланиладиган программа объекти – массивлар билан танишиб чи=амиз.
2. Бир ылчамли массивлар ва улар устида амаллар
Массив - бу бир хил типли, чекли =ийматларнинг тартибланган тыпламидир. Массивларга мисол сифатида математика курсидан маълум былган векторлар, матрицалар ва тензорларни кырсатиш мумкин.
Программада ишлатилувчи барча массивларга ызига хос исм бериш керак. Массивнинг щар бир щадига мурожаат эса, унинг номи ва ырта =авс ичига олиб ёзилган тартиб щади ор=али амалга оширилади:
<массив номи> [<индекс>]
бу ерда <индекс> - массив щадининг жойлашган ырнини англатувчи тартиб =иймати.
Умуман олганда, <индекс> ырнида <ифода> =атнашиши щам мумкин. Индексни ифодаловчи ифоданинг типини – индекс типи деб аталади. Индекс типининг =ийматлар тыплами албатта номерланган тыплам былиши, шу билан бир =аторда, массив щадлари сонини ани=лаши ва уларнинг тартибини белгилаши керак.
Массивларни эълон =илишда индекс типи билан бир =аторда массив щадларининг типи щам кырсатилиши керак. Бир ылчамли массивни эълон =илиш =уйидагича амалга оширилади:
array [<индекс типи>] of <массив щадининг типи>;
Кыпинча <индекс типи> сифатида чекланма типлардан фойдаланилади, чунки бу типга тегишли тыплам тартибланган ва =атъий номерлангандир. Мисол учун, 100 та ща=и=ий сонли щадлардан иборат массив =уйидагича эълон =илинади:
array [1..100] of real;
Массивларни эълон =илиш ща=ида тыли=ро= маълумот бериш учун турли типдаги индексларга оид мисолларни эътиборингизга щавола =иламиз:
array [1000..5000] of integer;
array [-754..-1] of byte;
array [0..100] of real;
array [0..10] of boolean;
array [10..25] of char;
type
chegara = 1..100;
vektor = array [chegara] of real;
massiv1 = array [115..130] of integer;
massiv2 = array [-754..-1] of integer;
var
A,B: vektor;
c,d : massiv1;
e: massiv2;
7. var
r, t: array [chegara] of real;
s, q: array [115..130] of integer;
p: array [-754..-1] of integer;
k, m: array [1..50] of (shar, kub, doira);
8. type kv1 = (yanvar, fevral, mart);
var t, r: array [kv1] of real;
9. type
belgi = array [boolean] of integer;
belgi_kodi = array [char] of integer;
var
k : belgi;
p : belgi_kodi;
Энди массивлар устида типик амаллар бажарувчи бир нечта программа билан танишиб чи=айлик.
Бир ылчамли, n та щадли (n=30) массив щадларини йи\иш.
Program L1;
const n=30;
var
i: integer;
Do'stlaringiz bilan baham: |