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




Скачать 76.78 Kb.
НазваниеОбработка двумерных массивов
Дата публикации02.09.2013
Размер76.78 Kb.
ТипЛабораторная работа
skachate.ru > Информатика > Лабораторная работа
Лабораторная работа №7

ОБРАБОТКА ДВУМЕРНЫХ МАССИВОВ
Цель работы:

Изучить принципы работы с двумерными массивами.
Общие сведения:

Массивы, рассмотренные ранее, имеют элементы, упорядоченные по одному индексу и называются одномерными массивами или векторами. Массив может быть двумерным, трехмерным и т. д.



Рассмотрим двумерный массив Паскаля размерностью 3*3, то есть в ней будет три строки, а в каждой строке по три элемента:



Каждый элемент имеет свой номер, как у одномерных массивов, но сейчас номер уже состоит из двух чисел – номера строки, в которой находится элемент, и номера столбца. Таким образом, номер элемента определяется пересечением строки и столбца. Например, a21 – это элемент, стоящий во второй строке и в первом столбце.

На языке программирования Pascal двумерные массивы описываются так:

array [1..m, 1..n] of базовый_тип

При этом описание может быть в разделе type и тогда создается новый тип, который можно использовать при объявлении переменных. Или массив может быть описан непосредственно в разделе переменных. m и n – это константы, их можно опустить и вставить конкретные значения, но лучше так не делать. Обычно подразумевают, что в интервале от 1 до m определяется количество строк, а в интервале от 1 до n – количество столбцов массива.

описание массива через раздел type:

описание массива в разделе переменных:

const

M = 10;

N = 5;

type

matrix = array [1..M, 1..N] of integer;

var a: matrix;

const

M = 10;

N = 5;

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


Пример №1

Заполнить вручную двумерный массив.

Var matrix: array[1..3,1..5] of integer;

i, j: integer;

begin

{заполнение массива}

writeln ('Введите 15 чисел: ');

for i := 1 to 3 do

for j := 1 to 5 do

read (matrix[i,j]);

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

for i := 1 to 3 do

begin

for j := 1 to 5 do

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

writeln

end;

readln

end.
Когда пользователь вводит очередное число, то процедура read считывает его и помещает в ячейку с текущими индексами i и j. Когда i равна единице, значение j меняется пять раз, и, значит, заполняется первая строка таблицы. Когда i равна двум, значение j снова меняется пять раз и заполняется вторая строка таблицы. Аналогично заполняется третья строка таблицы. Внутренний цикл for в общей сложности совершает 15 итераций, внешний только 3.

Как пользователь вводит значения – не важно. Он может их разделять либо пробелом, либо переходом на новую строку. Вывод значений двумерного массива организован в виде таблицы. Выводятся 3 строки по 5 чисел в каждой. Внутри строк числа разделяются пробелом.
На самом деле, это не совсем корректно написанная программа. Если мы захотим поменять размерность массива, то придется просмотреть всю программу (представьте, что она очень большая) и исправить значения. Это неэффективно. Поэтому в программе следует использовать константы. В случае чего их значения можно поменять всего лишь в одном месте.
Const M = 3;

N = 5;

var matrix: array[1..M,1..N] of integer;

i, j: integer;

begin

writeln ('Введите 15 чисел: ');

for i := 1 to M do

for j := 1 to N do

read (matrix[i,j]);

for i := 1 to M do begin

for j := 1 to N do

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

writeln

end;

readln

end.

Порядок выполнения работы:

  1. Изучить описание лабораторной работы.

  2. Разобрать примеры программ

  3. Решить задачу по индивидуальному варианту. Обязателен вывод исходного массива и результата.

  4. Продемонстрировать результаты выполнения работы преподавателю.

Варианты заданий:



Алешин

Заполнить двумерный массив на 20 элементов с помощью генератора случайных чисел в диапазоне от -10 до 10 включительно. Определить среднее арифметическое элементов второго столбца массива;



Аргентов

Заполнить с клавиатуры двумерный массив на 18 элементов. Определить сумму всех элементов третьей строки массива;



Ахмадиев

Заполнить двумерный массив на 20 элементов с помощью генератора случайных чисел в диапазоне от -10 до 10 включительно. Определить среднее арифметическое элементов второго столбца массива;



Бабкин

Заполнить с клавиатуры двумерный массив на 18 элементов. Определить сумму всех элементов третьей строки массива;



Болотнов

Заполнить двумерный массив на 15 элементов с помощью генератора случайных чисел в диапазоне от -10 до 10 включительно. Найти максимальный элемент и заменить его на 0. Вывести новый массив;



Борисов

Заполнить с клавиатуры двумерный массив на 12 элементов. Определить произведение элементов третьей строки;



Гостев

Заполнить с клавиатуры двумерный массив на 15 элементов. Определить сумму всех элементов второго столбца массива;



Гусарков

Заполнить с клавиатуры двумерный массив на 20 элементов. Определить сумму квадратов элементов второй строки массива;



Дрюпина

Заполнить с клавиатуры двумерный массив размерностью m×n. Найти сумму всех элементов массива;



Елистратова

Заполнить с клавиатуры двумерный массив размера 4х7. Найти массив, получающийся из первого путем перестановки столбцов - первого и последнего, второго с предпоследним и т.д;



Казаков

Заполнить с клавиатуры двумерный массив на 16 элементов. Найти среднее арифметическое элементов, расположенных в четырех углах;



Каштанов

Даны две квадратные матрицы порядка n (заполняется с клавиатуры или генератора случайных чисел). Получить новую матрицу умножением элементов каждой строки 1-й матрицы на наибольшее из значений элементов столбца соответствующей второй матрицы. Вывести все 3 массива на экран;



Кичигин

Заполнить с клавиатуры двумерный массив из n строк и m столбцов. Найти минимум из наибольших элементов столбцов;



Крайнова

Заполнить с клавиатуры двумерный массив на 15 элементов. Составить программу, которая меняет местами два любых элемента двумерного массива (индексы элементов обмена вводит пользователь, если такого элемента нет, на экран должно вывестись сообщение об ошибке);



Култышев

Заполнить с клавиатуры двумерный массив на 21 элемент. Вывести на экран тот элемент, который укажет пользователь, введя 2 числа – номер строки и столбца. Если такого элемента нет, на экран должно вывестись сообщение об ошибке;



Курочкин

Заполнить с клавиатуры двумерный массив на 10 элементов. Определить сумму элементов третьей строки;



Лисовцев

Заполнить 2 массива (с клавиатуры или используя генератор случайных чисел). Получить новый массив прибавляя к элементам 1-го массива среднего арифметического элементов, расположенных в четырех углах 2-го массива. Вывести все 3 массива на экран;



Малов

Заполнить с клавиатуры квадратную матрицу порядка n (n>=6). Заменить побочную диагональ нулями;



Немов

Заполнить двумерный массив m×n (n>=5, m>=5) с клавиатуры, поменять столбцы с номерами 4 и n-2;



Попов

Заполнить с клавиатуры квадратную матрицу порядка n (n>=6). Заменить главную диагональ нулям;



Сайгушева

Заполнить двумерный массив 4×4 числами, которые вводит пользователь, и вычислить сумму всех элементов. Если пользователь вводит ноль или превышен размер массива, то запросы на ввод должны прекратиться;



Салдушкин

Дан двумерный массив размерностью 6×9. Найти массив, получающийся из данного, путем перестановкой строк - первой и последней, второй с предпоследней и т.д.;



Сафиуллин

Заполнить с клавиатуры двумерный массив из n строк и m столбцов. Исключить из него одинаковые элементы. Вывести новый массив на экран;



Семагина

Заполнить с клавиатуры двумерный массив размерностью m×n (n>=3, m>=3). Поменять местами строки с номерами 2 и n-1. Вывести новый массив на экран;



Сергеева

Заполнить с клавиатуры двумерный массив размерностью m×n (n>=3, m>=3). Поменять столбцы с номерами 3 и n-2. Вывести новый массив на экран;



Тантай

Заполнить двумерный массив на 20 элементов с помощью генератора случайных чисел в диапазоне от -50 до 50 включительно. Скопировать из первого массива во второй одномерный все значения в диапазоне от -15 до 15 включительно;



Столяров

Заполнить с клавиатуры двумерный массив на 30 элементов. Скопировать из первого массива во второй двумерный все значения в диапазоне от 0 до 5 включительно;



Тарасова

Заполнить двумерный массив на 20 элементов с помощью генератора случайных чисел в диапазоне от -30 до 30 включительно. Найти максимальный элемент и вывести его на экран;



Хусаинова

Заполнить с клавиатуры двумерный массив на 20 элементов. Скопировать из него в один одномерный массив все положительные элементы, а в другой – все отрицательные;

Похожие:

Обработка двумерных массивов iconЛабораторная работа №8 сортировка одномерных и двумерных массивов цель работы
Сортировка – это процесс расположения элементов массива в порядке убывания (возрастания) значений. Алгоритм выполнения сортировки...
Обработка двумерных массивов iconКонтрольная работа №2 Задание «Обработка одномерных массивов»
Цель работы. Получение практических навыков при работе со сложными типами данных – векторами
Обработка двумерных массивов iconВвод и обработка изображений двумерных сигналов
Над матрицей осуществляются все доступные для матриц преобразования. Например – получение негативного изображения ( на Рис в центре)....
Обработка двумерных массивов iconЗадание «Обработка одномерных массивов»
Цель работы – овладение практическими навыками работы с массивами, особенностями их ввода и вывода, приобретение дальнейших навыков...
Обработка двумерных массивов iconЗадание «Обработка одномерных массивов»
Цель работы – овладение практическими навыками работы с массивами, особенностями их ввода и вывода, приобретение дальнейших навыков...
Обработка двумерных массивов iconОбработки данных
Основные структуры данных. 2 Задача сортировки массивов. 3 Трудоемкость методов сортировки массивов. 4 Задача сортировки последовательностей....
Обработка двумерных массивов iconОбработка баз данных с персонифицированной информацией для задач...
Системный анализ, управление и обработка информации (промышленность, информатика)
Обработка двумерных массивов iconИсследование методов мобильного мошенничества реализуемого с помощью двумерных qr-кодов
Степанюк Александра Олеговна, 1Рябова Антонина Борисовна, 2Нестерик Надежда Дмитриевна
Обработка двумерных массивов iconПараллельная обработка данных на ЭВМ
Параллельная обработка данных, воплощая идею одновременного выполнения нескольких действий, имеет две разновидности: конвейерность...
Обработка двумерных массивов iconРазработать алгоритм и программу с циклом для обработки одномерных массивов


Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2014
контакты
skachate.ru
Главная страница