Көп өлшемді жиымдармен (массивтермен) жұмыс

  • Жүктеулер: 872
  • Көрсетілім: 1671
  • Информатикадан ашық сабақтар
  • 03/Мар/2015
І. Сабақтың тақырыбы: Көп өлшемді жиымдармен (массивтермен) жұмыс
ІІ. Сабақтың мақсаты:
а) Білімділігі: білімділікке, сауаттылыққа, ойлау ұшқырлығын дамыту
ә) Тәрбиелігі: икемділік қасиетімен шабытты болуға қалыптастыру
б) Дамытушылығы: оқушылардың ойлау қабілетімен қызығушылығын арттыру
ІІІ. Сабақтың түрі: Практикалық сабақ
IV. Сабақтың көрнекілігі: компьютерлер, топтамалар, т.б.
V. Оқыту әдістері: сөздік, көрнекі, практикалық
VІ. Оқыту формалары: жеке, топтық және ұжымдық
Екі өлшемді жиымдар

1. 5 матрица берілген. Бас және қосалқы диагональ элементте-
рінің қосындысын табыңыз.
Есепті шешу программасы:
program e9_1;
const n=5;
var i,j,s1,s2:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
s1:=0; s2:=0;
for i:=1 to n do
begin
s1:=s1+a[i,j];
s2:=s2+a[n-i+1,i];
end;
writeln(‘енгізілген жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]);
writeln
end;
writeln(‘Бас диагональ элементтерінің қосындысы =’,s1);
writeln(‘Қосалқы диагональ элементтерінің қосындысы =’,s2);
end.

2. 5 матрица берілген. Қосалқы диагональ және онымен көрші
екі сызық бойындағы элементтер мәндерінің ең үлкенін табыңыз.
program e9_2;
const n=5;
var i,j,max:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
max:=a[n,1];
for i:=1 to n do
begin
if a[n-i+1,i]>max then max:= a[n-i+1,i];
if (i<5) and (a[n-i,i]>max) then max:= a[n-i,i];
if (i>1) and (a[n-i+2,i]>max) then max:= a[n-i+2,i];
end;
writeln(‘енгізілген жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
writeln(‘Қосалқы диагональ және онымен көрші екі сызық бойындағы элементтердің ең үлкені =’,max);
end.

3. 5 матрица берілген. Берілген натурал М үшін индекстерінің
қосындысы М-ге тең болатын матрица элементтерінің қосын-
дысын табыңыз.
program e9_3;
const n=5;
var i,j,m,sum:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
write(‘М-ге мән енгізіңіз:’); read(m);
sum:=0;
for i:=1 to 5 do
for j:=1 to 5 do
if i+j=m then sum:=sum+a[i,j];
writeln(‘енгізілген жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
write(‘Индекстерінің қосындысы М-ге тең элементтердің қосындысы =’,sum);
end.

4. 5 матрица берілген. Бас диагональ элементтерінің ең үлкен
мәні қосалқы диагональ элементтерінің ең кіші мәнінен көп пе,
соны анықтаңыз.
program e9_4;
const n=5;
var i,j,max,min:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
max:=a[1,1]; min:=a[n,1];
for i:=1 to n do
begin
if a[i,j>max then max:=a[i,j];
if a[n-i+1,j]<min then min:=a[n-i+1,j];
end;
writeln(‘енгізілген жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
if max>min then write(‘үлкен’) else write(‘кіші’);
end.


5. 5 матрица берілген. Қатар элементтерінің ең кіші мәндерінен
тұратын бір өлшемді В(5) жиымын құрыңыз.
program e9_7;
const n=5;
var i,j,min:integer; a:array[1..n,1..n] of integer; b:array[1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
for i:=1 to 5 do
begin
min:=a[i,1];
for j:=1 to 5 do
if a[i,j]<min then min:=a[i,j];
b[i]:=min;
end;
writeln(‘құрылған бір өлшемді жиым түрі:’);
for i:=1 to n do
write(b[i]:3); writeln;
writeln(‘енгізілген екі өлшемді жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
end.

6. 5 матрица берілген. Қатар элементтерінің арифметикалық
орта шамасынан тұратын бір өлшемді В(5) жиымын құрыңыз.
program e9_8;
const n=5;
var i,j,s:integer; a:array[1..n,1..n] of integer; b:array[1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
for i:=1 to n do
begin
s:=0;
for j:=1 to 5 do
s:=s+a[i,j];
b[i]:=s/5
end;
writeln(‘құрылған бір өлшемді жиым түрі:’);
for i:=1 to n do
write(b[i]:3); writeln;
writeln(‘енгізілген екі өлшемді жиым түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
end.

Үй тапсырмасы:
№ 1 тапсырма
Берілген бүтін санды 4 4 матрицасы латын шаршысы бола
ма, яғни оның қатары мен бағанында 1-ден 4-ке дейінгі
сандар бір ғана рет кездесе ме, соны анықтаңыз.
1 2 3 4
2 1 4 3
3 4 1 2
4 3 2 1
Мыс:


program e9_15;
label 1,2;
const n=4;
var i,j,s,s1:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
writeln(‘енгізілген шаршы түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
s1:=0;
for i:=1 to n do s1=s1+i;
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
s:=s+a[i,j];
if s<>s1 then goto 1
end;
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
s:=s+a[j,i];
if s<>s1 then goto 1
end;
s:=0; s1:=0;
for i:=1 to n do begin
s:=s+a[i,i];
s1:=s1+a[i,n-i+1];
end;
write(‘латын шаршысы болады‘)
goto 2;
1: write(’латын шаршысы болмайды’);
2: end.
№ 2 тапсырма

2 9 4
7 5 3
6 1 8
Берілген 3 3 бүтін санды матрицасы сиқырлы шаршы екен-
дігін, яғни ондағы әр қатардың, бағанның және диагональдар
дағы сандардың қосындысы тең болатындығын анықтаңыз.
Мыс:


program e9_14;
const n=3;
var i,j,x1,k,s,s1:integer; a:array[1..n,1..n] of integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
write(i,j‘ -нөмірлі a-ны енгізіңіз:’); readln(a[i,j]);
end;
writeln(‘енгізілген шаршы түрі:’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:3);
writeln
end;
x1:=0;
for i:=1 to n do x1=x1+a[1,i];
k:=0;
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
s:=s+a[i,j];
if s=x1 then k:=k+1;
end;
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
s:=s+a[j,i];
if s=x1 then k:=k+1;
end;
s:=0; s1:=0;
for i:=1 to n do begin
s:=s+a[i,i];
s1:=s1+a[i,n-i+1];
end;
if s=x1 then k=k+1; if s1=x1 then k=k+1;
if k=2*n+2 then write(‘сиқырлы шаршы болады‘)
else write(’ сиқырлы шаршы болмайды’);
end.

Автор: Изтлеуова Гульмира Танатовна

Қызылорда қаласы, № 253 орта мектеп

загрузка...
Loading...

Пікірлер: 0

Тек тіркелген қолданушылар ғана пікір қалдыра алады.