Инфоурок Другое ПрезентацииДвумерные массивы

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

Скачать материал
Скачать материал "Двумерные массивы"

Получите профессию

Методист-разработчик онлайн-курсов

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Карьерный консультант

Описание презентации по отдельным слайдам:

  • Двумерные 
массивыАвтор: учитель информатики МКОУ Плесской средней общеобразо...

    1 слайд

    Двумерные
    массивы
    Автор: учитель информатики МКОУ Плесской средней общеобразовательной школы
    Юдин Андрей Борисович
    Часть 1

  • В математике таблицы чисел, состоящие из строк и столбцов называются матрицам...

    2 слайд

    В математике таблицы чисел, состоящие из строк и столбцов называются матрицами и записываются в круглых скобках.
    Двумерный массив. Матрицы 1

  • Двумерный массив. Применение....

    3 слайд

    Двумерный массив. Применение. 2
    Использование двумерных массивов для построения поверхностей.

  • Двумерный массив. Определение....

    4 слайд

    Двумерный массив. Определение. 3
    Массив — это пронумерованная последовательность величин одинакового типа, обозначаемая одним именем. Элементы массива располагаются в последовательных ячейках памяти, обозначаются именем массива и индексом. Каждое из значений, составляющих массив, называется его компонентой  (или элементом массива).
    Способ организации данных, при котором каждый элемент определяется номером строки и номером столбца, на пересечении которых он расположен, называется двумерным массивом

  • Двумерный массив. Определение...

    5 слайд

    Двумерный массив. Определение 4
    1 2 3 4 5 6
    1

    2

    3
    В математике:
    В Pascal:
    Ai;j
    A[i,j]
    A[2,4]

    A[1,2]

    A[3,5]

  • Двумерный массив. Описание...

    6 слайд

    Двумерный массив. Описание 5
    Самый простой способ описания массива
    a : array [1..10, 1..20] of real;
    Имя массива
    Количество строк
    Количество столбцов
    Тип данных в массиве
    a: array [1..10] of array [1.. 20] of real;
    Описание как массив массивов:
    Одномерный массив
    Каждый элемент которого в свою очередь является одномерным массивом

  • Двумерный массив. Описание...

    7 слайд

    Двумерный массив. Описание 6
    Const
      m=10; n =20;
    Var
      a : array [1.. m, 1.. n] of integer;
    Количество строк и столбцов через константу.
    В разделе констант указываем число строк и столбцов
    type t=array[1..m,1..n] of integer;
    var a : t;
    Определением нового типа данных.
    Определяем пользовательский тип , двумерный массив

  • Двумерный массив. Описание...

    8 слайд

    Двумерный массив. Описание 7
    const
    a: array[1..3,1..5] of  integer =
    ((3,-2,1,4,3),
    (-5,-9,0,3,7),
    (-1,2,1,-4,0));
    Массив констант.
    Непосредственно в программе указываем значения элементов массива.

  • For i := 1 to 3 do begin
       For j := 1 to 4 do 
             begin...

    9 слайд

    For i := 1 to 3 do begin
    For j := 1 to 4 do
    begin
    write('A[ ', i, ', ',j, ']= ');
    readln(a[i, j])
    end;
    Двумерный массив. Заполнение 8
    Заполнение массива с клавиатуры:
    Цикл отвечающий за перебор строк. Берем первую, вторую и так далее строки
    Цикл отвечающий за перебор ячеек в каждой строке.
    end;

  • Двумерный массив. Заполнение...

    10 слайд

    Двумерный массив. Заполнение 9
    j , 1, N
    Ввод a i , j
    i , 1, N
    Блок-схема заполнения с клавиатуры:
    Цикл отвечающий за перебор строк. (Внешний цикл)
    Цикл отвечающий за перебор ячеек в каждой строке. (Внутренний цикл)

  • Двумерный массив. Заполнение...

    11 слайд

    Двумерный массив. Заполнение 10
    Заполнение массива случайными числами:
    For i := 1 to 3 do begin
    For j := 1 to 4 do begin
    a[i, j] := random(21) - 10;
    write(a[i, j]:6);
    end;
    writeln;
    end;
    Write без LN выводит элементы массива в строку
    Когда i-я строка закончилась, пишем пустой WriteLN для перехода на новую строку

  • Двумерный массив. Заполнение...

    12 слайд

    Двумерный массив. Заполнение 11
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Цикл отвечающий за перебор строк. (Внешний цикл)
    Цикл отвечающий за перебор ячеек в каждой строке. (Внутренний цикл)

  • Двумерный массив. Заполнение...

    13 слайд

    Двумерный массив. Заполнение 12
    Заполнение массива по правилу:
    For i := 1 to 3 do begin
    For j := 1 to 4 do begin
    a[i, j] :=ФОРМУЛА;
    write(a[i, j]:6);
    end;
    writeln;
    end;
    Заполнить произвольный массив размером N x N (N<10) по следующему правилу:
    11111
    22222
    33333
    44444
    55555
    ClrScr;
    Write('ВВеди N = ');Readln(n);
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=i;
    write(a[i,j]:4);
    end;
    writeln;
    end;
    Значение элемента в каждой ячейке строки равно номеру строки.

  • Двумерный массив. Заполнение...

    14 слайд

    Двумерный массив. Заполнение 13
    a11

    a22
    a23
    a32
    a33
    a14
    a41
    a44
    1 2 3 4
    1

    2

    3
    4
    Главная диагональ:
    I=J
    Побочная диагональ:
    I+J=N+1
    Заполнить произвольный массив размером
    N x N (N<10) по следующему правилу:
    00001
    00010
    00100
    01000
    10000
    ClrScr;
    Write('ВВеди N = ');Readln(n);
    For i:=1 to n do begin
    For j:=1 to n do begin
    if (i+j = n+1) then a[i,j]:=1
    else a[i,j]:=0;
    write(a[i,j]);
    end;
    writeln;
    end;
    Если побочная диагональ то заполнить ячейку 1 во всех остальных случаях 0

  • Двумерный массив. Заполнение...

    15 слайд

    Двумерный массив. Заполнение 14
    Фрагмент блок-схемы задачи заполнения побочной диагонали единицами
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j= 0
    Ввод N
    i+j=N+1
    a i , j= 1
    Да
    Нет

  • Двумерный массив. Заполнение...

    16 слайд

    Двумерный массив. Заполнение 15
    a11
    a22
    a33

    a44
    a55
    Удовлетворяет неравенству
    i < j

    Удовлетворяет неравенству
    i > j

    1
    2
    3
    4
    5
    1 2 3 4 5

  • Двумерный массив. Заполнение...

    17 слайд

    Двумерный массив. Заполнение 16
    a15
    a24
    a33

    a42
    a51
    Удовлетворяет неравенству
    i+j<n+1

    Удовлетворяет неравенству
    i+j>n+1

    1 2 3 4 5
    1
    2
    3
    4
    5

  • Двумерный массив. Заполнение...

    18 слайд

    Двумерный массив. Заполнение 17
    a11
    a22
    a33

    a44
    a55
    1
    2
    3
    4
    5
    1 2 3 4 5
    a42
    a51
    a24
    a15
    (i+j<n+1) And (i<j)
    (i+j>n+1) And (i<j)


    (i+j>n+1) And (i>j)

    (i+j<n+1) And (i>j)
    Системы неравенств

  • Двумерный массив. Заполнение...

    19 слайд

    Двумерный массив. Заполнение 18
    Заполнить произвольный массив размером N x N (N<10) по следующему правилу:
    00001
    00011
    00111
    00011
    00001
    Это пересечение двух множеств. Элементы лежащие на и ниже побочной диагонали и элементы лежащие на и выше главной диагонали

    Write('ВВеди N = '); Readln(n);
    For i:=1 to n do begin
    For j:=1 to n do begin
    if (i+j>=n+1) and (i<=j) then a[i,j]:=1
    else a[i,j]:=0;
    write(a[i,j]:2);
    end;
    writeln;
    end;


    Проверяем условие принадлежности данному множеству

  • Двумерный массив. Сумма элементов...

    20 слайд

    Двумерный массив. Сумма элементов 19
    Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти сумму элементов массива лежащих на главной диагонали.
    Один или два прохода по массиву?
    Первый способ. Один проход по массиву
    ClrScr;
    Write('ВВеди N = ');Readln(n);
    s:=0;
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=random(20)-10;
    write(a[i,j]:4);
    if (i=j) then s:=s+ a[i,j];
    end;
    writeln;
    end;
    writeln('Сумма элементов =',s:5);
    Заполняем случайными числами и выводим на экран
    И сразу же находим сумму элементов лежащих на главной диагонали
    Второй способ. Два прохода по массиву
    Write(' ВВеди N = ');Readln(n);
    s:=0;
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=random(20)-10;
    write(a[i,j]:4);
    end;
    writeln;
    end;
    For i:=1 to n do
    For j:=1 to n do
    if (i=j) then s:=s+ a[i,j];
    writeln('Сумма элементов =',s:5);
    Первый проход. Заполняем массив и выводим его на экран
    Второй проход. Находим сумму.
    Замечание.
    Если нужно что то сделать только
    с главной диагональю,
    то можно обойтись без вложенных циклов
    For i:=1 to n do s:=s+ a[i,i];

  • Двумерный массив. Сумма элементов...

    21 слайд

    Двумерный массив. Сумма элементов 20
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Ввод N
    S = 0
    i = j
    S =S + a i , j
    Вывод S
    Да
    Нет
    Нахождение суммы элементов на главной диагонали за один проход по массиву

  • Двумерный массив. Сумма элементов...

    22 слайд

    Двумерный массив. Сумма элементов 21
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Ввод N
    S = 0
    1
    1
    j , 1, N
    i , 1, N
    i = j
    S =S + a i , j
    Вывод S
    Да
    Нет
    Нахождение суммы элементов на главной диагонали за два прохода

  • Двумерный массив. Сумма элементов...

    23 слайд

    Двумерный массив. Сумма элементов 22
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Ввод N
    S = 0
    1
    i , 1, N
    S =S + a i , i
    Вывод S
    Нахождение суммы элементов на главной диагонали за два прохода (в случае когда речь идет только о главной диагонали и остальной массив не нужен)

  • Двумерный массив. Минимальный элемент...

    24 слайд

    Двумерный массив. Минимальный элемент 23
    Один или два прохода по массиву? Рассуждение второе.
    Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти минимальный элемент лежащий на главной диагонали.

  • Двумерный массив. Минимальный  элемент...

    25 слайд

    Двумерный массив. Минимальный элемент 24
    Стандартный способ без анализа задачи
    Write('ВВеди N = ');Readln(n);
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=random(21)-10;
    write(a[i,j]:4);
    end;
    Writeln;
    end;
    m:=a[1,1];
    For i:=1 to n do
    For j:=1 to n do
    if (a[i,j]<m) and (i=j) then m:=a[i,j];
    writeln(' Минимальный элемент =',m:5);
    Заполняем массив случайными числами
    Предполагаем, что минимальный элемент стоит в левом верхнем углу
    Если встречается элемент меньше m, и он лежит на главной диагонали, то он становится минимальным
    Замечание.
    В данном случае можно не бегать по всему
    массиву а пройти только по главной диагонали, обойдясь без вложенных циклов.

    m:=a[1,1];
    For i:=2 to n do
    if (a[i,i]<m) then m:=a[i,i];

  • Двумерный массив. Минимальный элемент...

    26 слайд

    Двумерный массив. Минимальный элемент 25
    Если немного по рассуждать, можно увидеть, что самое «маленькое» число, которое может выдать генератор случайных чисел это 10. Все остальные числа будут меньше его. Т.к. в условии задачи нам точно задан интервал
    [-10 ; 10].
    С анализом исходных данных задачи
    Write('ВВеди N = ');Readln(n);
    m:=10;
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=random(21)-10;
    write(a[i,j]:4);
    if (a[i,j]<m) and (i=j) then m:=a[i,j];
    end;
    Writeln;
    end;
    writeln(' Минимальный элемент лежащий на главной диагонали =',m:5);
    Предполагаем, что самое маленькое число 10, правая граница исходного интервала.
    Заполняем, выводим на экран и сразу проверяем на минимальность в главной диагонали.

  • Двумерный массив . Максимальный элемент в строке...

    27 слайд

    Двумерный массив . Максимальный элемент в строке 26
    Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10] и найти максимальный элемент в каждой строке.

  • Двумерный массив. Максимальный элемент в строке...

    28 слайд

    Двумерный массив. Максимальный элемент в строке 27
    Write('ВВеди N = ');Readln(n);
    For i:=1 to n do begin
    max:=-10;
    For j:=1 to n do begin
    a[i,j]:=random(21)-10;
    write(a[i,j]:4);
    if (a[i,j]>max) then max:= a[i,j];
    end;
    write(' MAx = ',max:5);
    writeln;
    end;
    Решение в один проход,
    с анализом задачи
    Предполагаем, что самое большое число - 10, левая граница исходного интервала.
    Перебираем строки
    Заполняем элемент массива и выводим его на экран
    Если в строке встречается элемент больше максимального, то он становится максимальным
    Выводим наибольший элемент в строке

  • Двумерный массив. Максимальный элемент в строке...

    29 слайд

    Двумерный массив. Максимальный элемент в строке 28
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Ввод N
    Мах = - 10
    a i , j > Max
    Max = a i , j
    Вывод Max
    Да
    Нет
    Нахождение максимального элемента в каждой строке в один проход
    Конец

  • Двумерный массив. Максимальный элемент в строке...

    30 слайд

    Двумерный массив. Максимальный элемент в строке 29
    ClrScr;
    Write(‘Введи N = ');Readln(n);
    For i:=1 to n do begin
    For j:=1 to n do begin
    a[i,j]:=random(21)-10;
    write(a[i,j]:4);
    end;
    writeln;
    end;
    Заполняем массив и выводим его на экран
    For i:=1 to n do begin
    max:=a[i,1];
    For j:=2 to n do if (a[i,j]>max) then
    max:= a[i,j];
    writeln('В ',i,' строке max = ',max:5);
    end;




    Перебираем строки
    Предполагаем, что наибольший элемент в каждой строке стоит на первом месте
    Идем по строке и если находим элемент больший чем максимальный, то он становится максимальным
    Вывод наибольшего элемента в строке
    Стандартным способом,
    первый проход – заполнение,
    второй проход – поиск
    максимального в строках

  • Двумерный массив. Максимальный элемент в строке...

    31 слайд

    Двумерный массив. Максимальный элемент в строке 30
    j , 1, N
    Вывод a i , j
    i , 1, N
    a i , j=
    случайное[-10;10]
    Ввод N
    1
    j , 2, N
    i , 1, N
    Мах = a i , 1
    a i , j > Max
    Max = a i , j
    Вывод Max
    Да
    Нет
    1
    Начало
    Конец
    Нахождение максимального элемента в каждой строке в два прохода

Получите профессию

Копирайтер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 090 материалов в базе

Скачать материал

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 24.02.2020 216
    • PPTX 742.5 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Мартынова Светлана Владимировна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    • На сайте: 3 года и 4 месяца
    • Подписчики: 0
    • Всего просмотров: 72600
    • Всего материалов: 223

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Бухгалтер

Бухгалтер

500/1000 ч.

Подать заявку О курсе
  • Сейчас обучается 24 человека из 17 регионов

Курс повышения квалификации

Специалист в области охраны труда

72/180 ч.

от 1750 руб. от 1050 руб.
Подать заявку О курсе
  • Сейчас обучается 34 человека из 21 региона
  • Этот курс уже прошли 154 человека

Курс профессиональной переподготовки

Руководство электронной службой архивов, библиотек и информационно-библиотечных центров

Начальник отдела (заведующий отделом) архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Этот курс уже прошли 25 человек

Курс профессиональной переподготовки

Организация деятельности библиотекаря в профессиональном образовании

Библиотекарь

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 284 человека из 66 регионов
  • Этот курс уже прошли 849 человек

Мини-курс

Культурное наследие России: язык и фольклор

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Этот курс уже прошли 17 человек

Мини-курс

Современные тенденции в архитектуре

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Мозг и психотерапия: влияние, методы и направления

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 64 человека из 29 регионов
  • Этот курс уже прошли 27 человек