Паскаль
<<  Двумерные массивы Pascal Перечисления и массивы  >>
Двумерные массивы
Двумерные массивы
Рассматриваемые вопросы:
Рассматриваемые вопросы:
Массив - упорядоченная последовательность данных одного типа,
Массив - упорядоченная последовательность данных одного типа,
Структура данных в языке Паскаль для хранения такой таблицы называется
Структура данных в языке Паскаль для хранения такой таблицы называется
Характеристики массива: Имя Тип элементов Размер (количество
Характеристики массива: Имя Тип элементов Размер (количество
-5
-5
Местоположение элемента в массиве Значение
Местоположение элемента в массиве Значение
A[3, 2] = - 65
A[3, 2] = - 65
Различные способы заполнения двумерного массива:
Различные способы заполнения двумерного массива:
… Const A : Array[1
… Const A : Array[1
A : Array[1
A : Array[1
Пример заполнения массива с клавиатуры
Пример заполнения массива с клавиатуры
6
6
6
6
… Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do A[i, j]:=
… Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do A[i, j]:=
-1
-1
Общий вид формулы для интервала [a, b] Random(b-a+1)+a
Общий вид формулы для интервала [a, b] Random(b-a+1)+a
Для [-5, 15] формула Random(15-(-5)+1)+(-5) Random(21) - 5
Для [-5, 15] формула Random(15-(-5)+1)+(-5) Random(21) - 5
Вывод двумерного массива
Вывод двумерного массива
-5 6 12 8 2 89 4 0 1 6 14 -65 -11 23 -41
-5 6 12 8 2 89 4 0 1 6 14 -65 -11 23 -41
Задача 1
Задача 1
1
1
Задача 2
Задача 2
for n:=1 to 7 do for k:=1 to 7 do B[n, k]:=k–n;
for n:=1 to 7 do for k:=1 to 7 do B[n, k]:=k–n;
Задача 3
Задача 3
k:=1; for i:=1 to 5 do begin c:=A[i,i]; A[i,i]:=A[1,i]; A[1,i]:=c; end
k:=1; for i:=1 to 5 do begin c:=A[i,i]; A[i,i]:=A[1,i]; A[1,i]:=c; end
Задача 4
Задача 4
For i:=1 to 10 do For j:=1 to 10 do B[i,j]:=i*j;
For i:=1 to 10 do For j:=1 to 10 do B[i,j]:=i*j;
Задача 5
Задача 5
j - i+1= 5
j - i+1= 5
Задача 6
Задача 6
for i:=1 to 50 do for j:=1 to 50 do If i < j then B[i, j]:= i else B[i
for i:=1 to 50 do for j:=1 to 50 do If i < j then B[i, j]:= i else B[i
Ввели понятие двумерного массива; Рассмотрели правила заполнения и
Ввели понятие двумерного массива; Рассмотрели правила заполнения и

Презентация: «Двумерные массивы». Автор: . Файл: «Двумерные массивы.ppt». Размер zip-архива: 435 КБ.

Двумерные массивы

содержание презентации «Двумерные массивы.ppt»
СлайдТекст
1 Двумерные массивы

Двумерные массивы

Задачи обработки двумерных массивов

2 Рассматриваемые вопросы:

Рассматриваемые вопросы:

Понятие двумерного массива, его характеристики Различные способы заполнения двумерного массива Примеры решения задач

2

3 Массив - упорядоченная последовательность данных одного типа,

Массив - упорядоченная последовательность данных одного типа,

объединенных под одним именем.

-5

6

12

8

2

31

Одномерный массив - таблица в которой для точного указания на элемент массива достаточно указать только один индекс – номер элемента.

1

2

3

4

5

6

3

4 Структура данных в языке Паскаль для хранения такой таблицы называется

Структура данных в языке Паскаль для хранения такой таблицы называется

двумерным массивом.

8

7

6

5

4

3

2

1

A

B

C

D

E

F

G

H

4

5 Характеристики массива: Имя Тип элементов Размер (количество

Характеристики массива: Имя Тип элементов Размер (количество

элементов) Размер двумерного массива задается количеством строк и столбцов, причем сначала обычно указывается количество строк, а затем количество столбцов.

5

6 -5

-5

6

12

8

2

89

4

0

1

6

14

-65

-11

23

-41

Описание этого массива: Var A : Array [1..3,1..5] Of Integer;

Пример двумерного массива размером 3 х 5

1

2

3

4

5

1

2

3

6

7 Местоположение элемента в массиве Значение

Местоположение элемента в массиве Значение

Элемент массива и его характеристики

7

8 A[3, 2] = - 65

A[3, 2] = - 65

A[2, 3] = 0

-5

6

12

8

2

89

4

0

1

6

14

-65

-11

23

-41

1

2

3

4

5

1

2

3

8

9 Различные способы заполнения двумерного массива:

Различные способы заполнения двумерного массива:

В разделе описания констант; с клавиатуры; с использованием формулы; случайными числами (частный случай использования формулы).

9

10 … Const A : Array[1

… Const A : Array[1

.3, 1..5] Of Integer = ((-5, 6, 12, 8, 2), (89, 4, 0, 1, 6), (14, -65, -11, 23, -41)); …

Пример заполнения массива в разделе описания констант

10

11 A : Array[1

A : Array[1

.3, 1..5] Of Integer = ((-5, 6, 12, 8, 2), (89, 4, 0, 1, 6), (14, -65, -11, 23, -41));

-5

6

12

8

2

89

4

0

1

6

14

-65

-11

23

-41

1

2

3

4

5

1

2

3

11

12 Пример заполнения массива с клавиатуры

Пример заполнения массива с клавиатуры

Var i, j, n, m : word; A : Array[1..100, 1..100] Of Integer; …

… Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do Readln(A[i, j]);

12

13 6

6

8

12

2

-5

1

4

0

6

89

23

-41

-65

14

-11

1

2

3

4

5

1

2

3

For i :=1 To n Do For j :=1 To m Do Readln(A[i, j]);

i :=1, 2, 3 j :=1, 2, 3, 4, 5

13

14 6

6

8

12

2

-5

1

4

0

6

89

23

-41

-65

14

-11

1

2

3

4

5

1

2

3

For j :=1 To m Do For i :=1 To n Do Readln(A[i, j]);

j :=1, 2, 3, 4, 5 i :=1, 2, 3

14

15 … Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do A[i, j]:=

… Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do A[i, j]:=

i - j; …

Пример заполнения массива с помощью формулы

15

16 -1

-1

-3

-2

0

-4

-2

0

1

-1

-3

2

-1

0

1

-2

1

2

3

4

5

1

2

3

1 – 1 = 0

1 – 4 = -3

1 – 2 = -1

1 – 5 = -4

1 – 3 = -2

Пример заполнения массива с помощью формулы

16

17 Общий вид формулы для интервала [a, b] Random(b-a+1)+a

Общий вид формулы для интервала [a, b] Random(b-a+1)+a

Пример заполнения массива случайными числами

17

18 Для [-5, 15] формула Random(15-(-5)+1)+(-5) Random(21) - 5

Для [-5, 15] формула Random(15-(-5)+1)+(-5) Random(21) - 5

Randomize; Readln(n); Readln(m); For i :=1 To n Do For j :=1 To m Do A[I]:= Random(21) - 5;

18

19 Вывод двумерного массива

Вывод двумерного массива

For i :=1 To n Do Begin For j :=1 To m Do Write (A[i, j]:4); Writeln; End; …

19

20 -5 6 12 8 2 89 4 0 1 6 14 -65 -11 23 -41

-5 6 12 8 2 89 4 0 1 6 14 -65 -11 23 -41

-

5

6

1

2

8

2

8

9

4

0

1

6

1

4

-

6

5

-

1

1

2

3

-

4

1

Пример 1:

Пример 2:

20

21 Задача 1

Задача 1

for n:=1 to 4 do for k:=n to 4 do begin A[n, k]:=A[n, k]+1; A[k, n]:=A[k, n]+1; End;

Все элементы двумерного массива A размером 10х10 первоначально были равны 0. Затем значения элементов меняются с помощью вложенных циклов.

Сколько элементов массива в результате будут равны 1?

21

22 1

1

1

0

2

0

0

1

0

0

1

0

1

1

0

0

2

0

1

1

0

0

2

0

1

2

0

1

0

0

0

1

1

1

2

3

4

1

2

3

4

n=2

n=1

k=2, 3, 4

k=1, 2, 3, 4

A[2,2]:=A[2,2]+1=0+1=1 A[2,2]:=A[2,2]+1=1+1=2

A[1,3]:=A[1,3]+1=0+1=1 A[3,1]:=A[3,1]+1=0+1=1

A[2,3]:=A[2,3]+1=0+1=1 A[3,2]:=A[3,2]+1=0+1=1

A[1,2]:=A[1,2]+1=0+1=1 A[2,1]:=A[2,1]+1=0+1=1

A[1,4]:=A[1,4]+1=0+1=1 A[4,1]:=A[4,1]+1=0+1=1

A[1,1]:=A[1,1]+1=0+1=1 A[1,1]:=A[1,1]+1=1+1=2

A[2,4]:=A[2,4]+1=0+1=1 A[4,2]:=A[4,2]+1=0+1=1

for n:=1 to 4 do for k:=n to 4 do begin A[n, k]:=A[n, k]+1; A[k, n]:=A[k, n]+1; End;

22

23 Задача 2

Задача 2

Значения двумерного массива размера 7?7 задаются с помощью вложенного оператора цикла for n:=1 to 7 do for k:=1 to 7 do B[n, k]:=k–n; Сколько элементов массива будут иметь положительные значения?

23

24 for n:=1 to 7 do for k:=1 to 7 do B[n, k]:=k–n;

for n:=1 to 7 do for k:=1 to 7 do B[n, k]:=k–n;

B[n, k]:= k–n k–n > 0 k > n

0

0

0

0

0

0

0

k

k

k

k

k

k

k

k

n

n

n

n

n

n

n

n

1

2

3

4

5

6

7

1

2

3

4

5

6

7

5

6

1

2

4

3

11

7

10

9

8

14

15

13

12

18

17

16

19

20

21

24

25 Задача 3

Задача 3

Дан фрагмент программы, обрабатывающей двухмерный массив A размера n?n. k:=1; for i:=1 to n do begin c:=A[i,i]; A[i,i]:=A[k,i]; A[k,i]:=c; end; Какую задачу решает этот алгоритм?

25

26 k:=1; for i:=1 to 5 do begin c:=A[i,i]; A[i,i]:=A[1,i]; A[1,i]:=c; end

k:=1; for i:=1 to 5 do begin c:=A[i,i]; A[i,i]:=A[1,i]; A[1,i]:=c; end

1

7

3

5

2

4

6

8

7

9

2

3

i := 2

i := 4

i := 5

i := 3

i := 1

4

5

19

13

25

10

14

15

11

13

12

19

20

16

18

17

24

25

21

23

22

1

2

3

4

5

1

2

3

4

5

26

27 Задача 4

Задача 4

Значения элементов двумерного массива В размера 10 х 10 задаются с помощью вложенных операторов цикла в представленном фрагменте программы. Сколько элементов массива будут принимать четные значения? for i:=l to 10 do forj:=l to 10 do B[i,j]:=i*j;

27

28 For i:=1 to 10 do For j:=1 to 10 do B[i,j]:=i*j;

For i:=1 to 10 do For j:=1 to 10 do B[i,j]:=i*j;

Ответ: 100 – 25 = 75

1

2

3

4

5

6

7

8

9

10

1

1

2

3

4

5

2

3

7

6

8

9

4

5

6

7

8

9

10

10

12

13

14

11

15

17

18

19

16

20

22

23

24

21

25

28

29 Задача 5

Задача 5

Значения элементов двумерного массива размера 10 х 10 задаются с помощью вложенного оператора цикла в представленном фрагменте программы. Сколько элементов массива будут равны 0? Сколько элементов массива будут равны 5? for i:=1 to 10 do for j:=1 to 10 do If i<=j then B[i, j]:=j - i+1 else B[i, j]:=0;

29

30 j - i+1= 5

j - i+1= 5

j - i+1= 0

i = j - 4

i = j +1 i <= j

for i:=1 to 10 do for j:=1 to 10 do If i <= j then B[i, j]:=j - i+1 else B[i, j]:=0;

1

2

3

4

5

6

7

8

9

10

1

5

2

0

5

3

0

0

5

5

4

0

0

0

5

0

0

0

0

5

6

0

0

0

0

0

5

7

0

0

0

0

0

0

8

0

0

0

0

0

0

0

9

0

0

0

0

0

0

0

0

10

0

0

0

0

0

0

0

0

0

30

31 Задача 6

Задача 6

Значения элементов двумерного массива размера 50x50 задаются с помощью вложенного оператора цикла в представленном фрагменте программы. Сколько элементов массива будут принимать значения, равные 35? for i:=1 to 50 do for j :=1 to 50 do If i<j then B[i, j]:= i else B[i, j]:= j;

31

32 for i:=1 to 50 do for j:=1 to 50 do If i < j then B[i, j]:= i else B[i

for i:=1 to 50 do for j:=1 to 50 do If i < j then B[i, j]:= i else B[i

j]:= j;

1

2

3

34

35

36

49

50

1

2

3

34

35

36

49

50

32

33 Ввели понятие двумерного массива; Рассмотрели правила заполнения и

Ввели понятие двумерного массива; Рассмотрели правила заполнения и

вывода двумерного массива; Разобрали решение задач, на заполнение и обработку массива.

33

«Двумерные массивы»
http://900igr.net/prezentacija/informatika/dvumernye-massivy-143357.html
cсылка на страницу

Паскаль

38 презентаций о Паскале
Урок

Информатика

130 тем
Слайды