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




Презентация қосу
Массив ұғымына жалпы түсініктеме
Массив дегеніміз – бір типтегі
берілгендер жиынтығы немесе бір
атауға біріктірілген айнымалылардың
реттелген тізбегі.
Айнымалылардың – массив
элементтерінің типтері бірдей болады.
Массив бір ғана атпен белгіленеді.
Мысалы, нақты сандардан құрылған
тізбекті R атаулы массив деуге болады.
Мысалы:
1.6, 14.9, -5.0, 8.5, 0.46 – ны бір өлшемді
массив деп, оған А деп атау беруге
болады. Массивтің әр элементі массивтің
атымен белгіленеді де, оның индексі
қойылады. Массив элементтері
индекстері бойынша реттеліп жазылады.
А1

Мысалы, А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;
Жауабы:
2 - мысал. 13 бүтін саннан тұратын тізбектің
(массивтің) арифметикалық орташасын және әр
элементтің арифметикалық орташадан өзгегісін табуға
құрыңBOL1;
программаProgram ыз.

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
Жауабы:
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;
Жауабы:
Массивтің тип бөлінгіндегі жазылуы.
Массив типі бөлінгенде былай
бейнеленеді:
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 – Есеп. Массивті мына формула бойынша толтырайық: с[i ] a * i 2
Program Dina;

Uses CRT;

var c:array[1..100] of
word;

i,n:integer;

a:integer;

Begin

Write('n=');

Readln(n); Write('a=');
Жауабы
:
Массив элементтерін алмастыру.
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
if c[i,j] For i:=1 to n do
For j:=1 to n do
writeln('c[',i,',',j,']=',c[i,j]);
repeat until keypressed;
Жауабы
:
Массив элементтерін өшіру.

3 – Есеп. Бүтін сандардан құрылған
сызықтық массив берілген. Массивтің
к-сыншы өшіретін программа құру.
Program almastyru;
Uses crt;
var c:array[1..100] of word;
i,n,l:integer;
Begin
write('n='); {massiv olshemin engizu}

readln(n);
{massivti toltyru}
Randomize;
for i:=1 to n do
c[i]:=random(100);
for i:=1 to n do {algaschki massiv elementerin shygaru}

writeln('oshiril etinelement N=');

read(l);
{korsetilgen elementi oshiru}

for i:=1 to n do
c[i]:=c[i+1];
{korsetilgen elementy oshirgennen keingi massivti
shygaru}
for i:=1 to n-1 do
Жауабы:
Массивке элементтер қосу.
4 – Есеп. Массивке элемент қосқанда
қандай да бір мән қойылатын орнынан
бастап, массив элементтері оңға
жылжиды. Бұдан массивтің ұзындығы 1 –
ге артады.
Бұтін сандардан құрылған к-сыншы
элементінің орнына массивтің ең кіші
элементтіне тең мәнді қоятын
программа құру.
Program Dina;
Uses CRT;
var c:array[1..100] of word;

i,n,l:integer; min:integer;
Begin
Write('n='); {massiv tlementintter sany}

Readln(n); {}
write('element koyylatyn oryn=');

read(l);
Randomize;
For i:=1 to n do {massivti toltyru}

c[i]:=random(100);
For i:=1 to n do {massiv elementin shygaru}

Write('c[',i,']=',c[i],'');
Min:=c[l];
For i:=2 to n do {en cishi elementti anyktau

if min>c[i] then min:=c[i];
writeln('min=',min); {corsetilgen orynga element koiu}

For i:=n+1 downto 1 do

c[i]:=c[i-1]; c[l]:=min;
writeln('turlengen massiv');
Массив элементтін сұрыптау.

5 – Есеп. Массив элементтерін
сұрыптау немесе іріктеу массив
элементтерін өсу немесе кему реті
бойынша орналастыру қажет болған
жағдайда жүргізіледі. Сұрыптау
тәсілдерін мысалмен келтірейік.
Бүтін сандардан құрылған С(n)
массивінің элементтерін кему
ретіментсұрыптайтын программа
құрайық.
“Көпіршіктің әдіс” бойынша сұрыптау.
Program Dina;
Uses CRT;
var c:array[1..100] of word;

i,j,n,r:integer;
Begin
Write('n='); {massiv olshemin engizu}

Readln(n);
Randomize;
For i:=1 to n do {massivti toltyru}

c[i]:=random(100);
For i:=1 to n do {algashky massiv elementin shygaru}

Write('c[',i,']=',c[i],'');
{massiv elementin curyptau}

For i:=2 to n-1 do
For j:=2 to n-1 do
if c[j]>c[i] then {c[i] men c[j] oryndarmen almasady}

begin
r:=c[i];
c[i]:=c[j];
c[j]:=r;
end;
{suryptagan massiv elementerin shygaru}
Жауабы:
Массивтерді түрлендіру.

6 – Есеп. Бүтін оң және теріс сандардан
құрылған бір өлшемді массив берілген. Екі
жаңа массив құру қажет: біреуінде тек
оң сандар мен 0-дер, ал екіншісінде теріс
сандар ғана орналасқан болуы қажет.
Program Dina;

Uses CRT;

var mas1,mas2,c:array[1..100] of integer;

i,n,l,k:integer;

Begin
Write('n='); {massiv olshemin engizu}

Readln(n);

For i:=1 to n do {massivti toltyru}

begin
Write('c[',i,']=');

readln(c[i]) end;

{shagarylgan massivterdi toltyru}

k:=1; l:=1;
For i:=1 to n do
Жауабы:
7-Есеп. Нақты сандардан құрылған екі бір
өлшемді массив берілген. Осы екі бір
өлшемді массивтен бір сызықтық массив
алынсын: алдымен теріс элементтер,
одан кейін нөлдік элементер, соңында оң
элементер орналасуы қажет.
Program massivshygaru; begin
c[m]:=b[i];
Uses crt; m:=m+1 end;
var a,b,c:array[1..100] of for i:=2 to n1+n2 do
real; for k:=n1+n2 downto i do
i,n1,n2,n,m,k:integer; if c[k-1]>c[k] then
r:real; begin
Begin
r:=c[k-1];
write('a massivi elementer
c[k]:=r;
sany n1='); readln(n1);
end;
write('b massivi elementer writeln('a massivi:');
sani n2='); readln(n2); for i:= 1 to n1 do
write(a[i]:5:2,’’);
for i:=1 to n1 do {} writeln;
begin writeln('b massivi:');
write('a[',i,']='); for i:=1 to n2 do
readln(a[i]) end; write(b[i]:5:2,'');
for i:=1 to n2 do writeln;
begin
witeln('b[',i,']='); writeln('kurugan massiv:');
readln(b[i]) end;
m:=1; for i:=1 to n1+n2 do
for i:=1 to n1 do
begin writeln(c[i]:6:2);
c[m]:=a[i]; m:=m+1 end;
Жауабы:
8-Есеп.Бүтін сандардан құрылған к – сыншы
элементінің орнына массивтің ең кіші элементіне тең
мәнді қоятын программа құрыңыз?
Program vstavka; writeln('c[',i,']=',c[i],'');

Uses crt; min:=c[l];

var c:array[1..100] of word; for i:=2 to n do {tn kishi elementy
aniktau}
i,n,l:integer; min:integer; if min>c[i] then min:=c[i];

Begin writeln('min=',min); {korsetilgen
oringa element koiu}
write('n='); {massivtegi for i:=n+1 downto 1 do {}
elementter sany}
c[i]:=c[i-1]; c[l]:=min;
readln(n); {}
writeln('turlengen massiv');
write('element koyylatyn
oryn='); {alingan massivti shygaru}
Жауабы:

Ұқсас жұмыстар
Массивтер. Бірөлшемді массивтермен жұмыс
Бір өлшемді массивтер
Сандық массивтерді сұрыптау тақырыбы бойынша сабақтарға арналған әдістемеліктер
Орта мектептегі информатика оқулықтарына талдау
Бірөлшемді массив элементтерінің қосындысын табу программасы
Бір өлшемді массив тақырыбына арналған компьютерлік тәжірибелік жұмыс
Екі өлшемді жиымдар
Бір өлшемді массивтерді сұрыптау
Ауыстыру арқылы сұрыптау
Мәліметтерді шейкер әдісімен сұрыптау
Пәндер