Массив ұғымына жалпы түсініктеме



Массивтер

Массив ұғымына жалпы түсініктеме
Массив дегеніміз - бір типтегі берілгендер жиынтығы немесе бір атауға біріктірілген айнымалылардың реттелген тізбегі.
Айнымалылардың - массив элементтерінің типтері бірдей болады. Массив бір ғана атпен белгіленеді. Мысалы, нақты сандардан құрылған тізбекті R атаулы массив деуге болады.

Мысалы:
1. 6, 14. 9, -5. 0, 8. 5, 0. 46 - ны бір өлшемді массив деп, оған А деп атау беруге болады. Массивтің әр элементі массивтің атымен белгіленеді де, оның индексі қойылады. Массив элементтері индекстері бойынша реттеліп жазылады. Мысалы, А1, А2, А3, . . . . . . Аn немесе жалпы түрде Ai, i=1, 2, …, n. Паскаль тілінде массив элементтерінің индексі алгоритмдік тілдегі тәрізді тік жақша алынып жазылады, мысалы, A[i] .

Мысалы бір өлшемді бүтін сандардан тұратын массивтің типінің былай көсетуге болады:
Type
Mas= array [1…10] of integer;
Var
M1: Mas;
Осы типті сәйкес айнымалыларды анықтау барысында былай беруге болады:
Var
M:= array [1. . . 10] of integer;

Массив элементтерін енгізу немесе шығару бөліктерін программа үзінділерді арқылы көрсетейік:
Енгізу:
For i:=1 to n do
Read (A[i] ) ;
Шығару:
For i:=1 to n do
Write (A[i], ‘ ‘) ;

Массив элементтерін кездесоқ сандармен де енгізуге болады. Мысалы, массив өлшемі алдын ала енгізіледі де, 100-ге дейінгі сандардан кездейсоқ түрде массив элементтері енгізіледі:
Randomize;
For i:=1 to n do
C[i] :=random(100)

1-мысал. 15 бүтін саннан тұратын тізбектің арифметикалық орташасын және әр элементтің арифметикалық орташадан өзгерісін табуға программа құрайық.
Program Dina;
var X:array[1. . 15] of integer;
I:integer;
S:real;
Begin
S:=0;
Writeln('sandardy bos oryn caldyryp engiz:') ;
For i:=1 to 15 do
Begin
Read(X[i] ) ;
S:=S+X[i] ;
End;
writeln;
S:=S/13;
writeln('S=', S:8:4) ;
For i:=1 to 15 do
Writeln(S-X[i] ) ;
End.

Жауабы:

2 - мысал. 13 бүтін саннан тұратын тізбектің (массивтің) арифметикалық орташасын және әр элементтің арифметикалық орташадан өзгегісін табуға программа құрыңыз.
Program BOL1;
var x:array[1. . 13] of integer;
i:integer;
s:real;
Begin
s:=0;
write('Sandardi bos oryn kaldyryp engiz: ') ;
for i:=1 to 13 do
begin
read(x[i] ) ;
s:=s+x[i] ;
end;
writeln;
s:=s/13;
writeln('s=', s:8:4) ;
for i:=1 to 13 do writeln(s-x[i] ) ;
end.

Жауабы:

3-мысал. мына заңдылыққа ; =1; i=1, 2, …, 20 бағынатын
а1, а2, . . ., а20 тізбегін құруға программа жазыңыз?
program BOL;
Type p=array[1. . 20] of integer;
var
a:p;
i:integer;
begin;
a[1] :=1;
writeln(a[1] ) ;
for i:=2 to 20 do
begin
a[i] :=a[i div 2] +a[i-1] ;
writeln(a[i] ) ;
end; end.

Жауабы:

Массивтің тип бөлінгіндегі жазылуы. Массив типі бөлінгенде былай бейнеленеді:
TYRE тип атты=array [t1] of t2
Var массив аты: тип аты;
Мұнда тип TYRE бөлігінде массивтің типі көрсетіледі де, одан соң айнымалы Var бөлігінде осы типке жататын массивтер көрсетіледі. Массивті TYRE бөлігінде бейнелеу, бейнелеулер бөлігінің көлемін үлкейтеді, бірақ прорамманы тез жөндеуге, прораммада көп қате жібермеуге көмектеседі.

Мысалы, прораммада нақты 40 элементтен тұратын А массиві пайдаланатын болса, онда оны тип бөлігінде былай өрнектейді:
TYRE m=array [1. . 40] of real;
Var a: m;
Мұндай бейнелеудің тиімділігі сонда, егер программада типі М болатын бірнеше массив А, В, С, D пайдаланатын болса, онда олар үшін:
Var A, D, C, D : m;
түрінде жазса жеткілікті.

Массивті толтыру.
1 - Есеп. Массивті мына формула бойынша толтырайық:
Program Dina;
Uses CRT;
var c:array[1. . 100] of word;
i, n:integer;
a:integer;
Begin
Write('n=') ;
Readln(n) ; Write('a=') ;
Readln(a) ;
For i:=1 to n do
c[i] :=a*sqr(i) ;
For i:=1 to n do
writeln('c[', i, '] =', c[i], '') ;
repeat until keypressed;
End.

Жауабы:

Массив элементтерін алмастыру.
2 - Есеп. Бүтін сандардан құрылған екі өлшемді массив берілген. Массив элементтерінің арифметикалық ортасынан кіші болатын барлық элементтерін бүтін мәніне дейін дөңгелектелген арифметикалық орта мәнімен алмастыратын прорамма құру. Массив 0-ден 100-ге дейінгі сандармен кездесоқ түрде толтырылады.
Program Dina;
Uses CRT;
var c:array[1. . 100, 1. . 100] of word;
i, j, n:integer; a:real;
Begin
Write('n=') ;
Readln(n) ; a:=0;
Randomize;
For i:=1 to n do
For j:=1 to n do begin
c[i, j] :=random(100) ; a:=a+c[i, j] end;
For i:=1 to n do
For j:=1 to n do
Write('c[', i, ', ', j, '] =', c[i, j], '') ;
a:=a/n; writeln('arif. orta=', a:5:2) ;
For i:=1 to n do
For j:=1 to n do
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz