Поиск в базе сайта:
Урок 1 Двумерный массив массив, каждый элемент которого имеет два номера icon

Урок 1 Двумерный массив массив, каждый элемент которого имеет два номера




Скачать 74.38 Kb.
НазваниеУрок 1 Двумерный массив массив, каждый элемент которого имеет два номера
Дата конвертации20.02.2014
Вес74.38 Kb.
КатегорияУрок

ДВУМЕРНЫЕ МАССИВЫ

ДМ-11-Урок 1


Двумерный массив – массив, каждый элемент которого имеет два номера.


Структура решения задачи:

  1. Описание массива

  2. Загрузка массива (с клавиатуры или по формуле)

  3. Вывод массива на экран

  4. Решение поставленной задачи

  5. Вывод ответа к задаче на экран




  1. Описание массива

Const m=…; n=…;

Var a:array [1..m,1..n] of integer;

i,j:integer;


  1. Загрузка массива по формуле (с клавиатуры)

Writeln(‘Введите элем. массива’);

For i:=1 to M do For i:=1 to M do

For j:=1 to N do For j:=1 to N do

a[i,j]:=….. ; readln(a[i,j]);



  1. Вывод массива на экран

Writeln(‘Вывод элем. массива’);

For i:=1 to M do

begin For j:=1 to N do

write(a[i,j]:5);

writeln

end;


Задачи по теме «Двумерные массивы»


  1. Вывести на экран массив чисел:

а) 2 4 6 8 б) 2 2 2 2

2 4 6 8 4 4 4 4

2 4 6 8 6 6 6 6


Const m=…; n=…;

Var a:array [1..m,1..n] of integer;

i,j:integer;

Begin for i:=1 to M do

for j:=1 to N do

a[i,j]:=2*j; … a[i,j]:=2*i;

for i:=1 to M do

begin for j:=1 to N do

write(a[i,j]:5);

writeln

end;

End.



  1. Вывести на экран массив чисел:



а) 3 6 9 12

3 6 9 12

3 6 9 12


б) 0 0 0 0

2 2 2 2

4 4 4 4

в) 2 3 4 5

3 4 5 6

4 5 6 7


г) 6 4 2 0

6 4 2 0

6 4 2 0


ДМ-11-Урок 2


  1. Двумерный массив a[m,n] загрузить с клавиатуры. Найти:

а) сумму всех элементов массива;

б) среднее арифметическое элементов массива;

в) сумму положительных элементов массива;

г) сумму отрицательных элементов массива.


a) Const m=…; n=…;

Var a:array [1..m,1..n] of integer;

i,j:integer;

Begin for i:=1 to M do

for j:=1 to N do

… ;

for i:=1 to M do

begin for j:=1 to N do

write(a[i,j]:5);

writeln

end;

s:=0;

for …

for …



End.



  1. Двумерный массив загрузить с клавиатуры. Подсчитать количество:

а) положительных элементов;

б) отрицательных элементов;

в) элементов больших (меньших) числа t

(число t вводится с клавиатуры).


ДМ-11-Урок 3


  1. Двумерный массив загрузить с клавиатуры. Найти:

а) наименьший элемент массива;

б) наибольший элемент массива;

в) сумму наименьшего и наибольшего элементов;

г) среднее арифметическое наибольшего и наименьшего элементов массива.


а) …

min:=a[1,1]

for i:=1 to M do

for j:=1 to N do

if a[i,j]



  1. а) Дан массив b[m,n]. Требуется умножить элементы этого массива на 2, если b[i,j]>0, или на -2, если b[i,j]<=0. Вывести новый массив на экран.




for i:=1 to M do

for j:=1 to N do

if b[i,j]>… then b[i,j]=… else b[i,j]=… ;




б) Дан двумерный массив a[m,n]. Требуется найти максимальный элемент массива max и получить новый массив с[m,n], в котором все элементы равны разности максимального и соответствующего элемента массива a[m,n].


ДМ-11-Урок 4


  1. В двумерном массиве найти:

а) сумму элементов в каждой строке (столбце);

б) минимальный (максимальный) элемент в каждой строке (столбце).

Работа по строкам


Описание массива

Загрузка массива с клавиатуры

for i:=1 to M do

begin s[i]:=0;

for j:=1 to N do

s[i]:=… ;

end;

for …

begin for …



writeln (‘s=’,s[i]:5)

end;


Работа по столбцам


Описание массива

Загрузка массива с клавиатуры

Вывод массива на экран

for j:=1 to N do

begin s[j]:=0;

for i:=1 to M do

s[j]:=… ;

end;

for j:=1 to N do writeln (‘s=’,s[j]:5)

end;


8. В двумерном массиве найти первый отрицательный элемент.

9. В двумерном массиве найти первый положительный элемент.


8. Const …;

Var …;

Label 1;





for i:=1 to M do

for j:=1 to N do

if a[i,j]<0 then goto 1

1: otr:=a[i,j]

nomstr:=i;

nomstb:=j;

writeln (‘Первый отрицательный элемент a[’ ,nomstr, ’,’ ,nomstb, ‘]=’ , …);




10. В двумерном массиве найти наибольший отрицательный элемент.

11. В двумерном массиве найти наименьший положительный элемент.


10. …

for i:=1 to M do

for j:=1 to N do

if a[i,j]<0 then goto 1

1: max:=a[i,j]

nomstr:=i;

nomstb:=j;


for i:=1 to M do

for j:=1 to N do

if (a[i,j]>max) and … begin …;

nomstr:=i;

nomstb:=j;

end;

writeln (‘Наибольший отрицательный элемент a[’ … …);




ДМ-11-Урок 5

Квадратный массив


















































Количество строк = Количество столбцов = n



1







0



1

0







0

1




0







1

Побочная диагональ (условие i+j = n+1)


Главная диагональ (условие i=j)


Загрузка квадратного массива по формуле


1

1

1

1

0

1

1

1

0

0

1

1

0

0

0

1

Условия: главная диагональ и элемент выше главной диагонали.

a[2,4]=1 – лежит выше гл.диагонали.

Номер его строки(2) меньше номера столбца(4).

Объединяя эти два условия получаем: i<=j.


Загрузка этого массива по формуле:

for i:=1 to n do

for j:=1 to n do

if i<=j then a[i,j]:=1 else a[i,j]:=0 ;


Решение задач

  1. Вывести на экран массив чисел:

    1. 1 1 1 1

1 1 1 3

1 1 3 3

1 3 3 3


    1. 5 5 5 8

5 5 8 8

5 8 8 8

8 8 8 8

    1. 9 9 9 9 2

9 9 9 2 9

9 9 2 9 9

9 2 9 9 9

2 9 9 9 9

    1. 6 0 0 0

6 6 0 0

6 6 6 0

6 6 6 6




  1. В квадратном массиве (загрузка с клавиатуры) найти:

    1. сумму элементов на главной диагонали;

    2. сумму положительных элементов на побочной диагонали.

  2. В квадратном массиве (загрузка с клавиатуры) найти:

    1. min (max) элемент на главной (побочной) диагонали;

    2. количество элементов, равных min элементу побочной диагонали.


a) Const n=…;

Var a:array [1..n,1..n] of integer;

i,j:integer;



Begin for i:=1 to n do

for j:=1 to n do

… ;

for i:=1 to n do

begin for j:=1 to n do write(a[i,j]:5);

writeln

end;

min:=a[1,1];

for …

for …



End.


Похожие:




©fs.nashaucheba.ru НашаУчеба.РУ
При копировании материала укажите ссылку.
свазаться с администрацией