Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы - Паскаль.doc
Скачиваний:
8
Добавлен:
04.11.2018
Размер:
4.84 Mб
Скачать

Задание 2.

  1. Заполнить квадратный массив massivnn целыми случайными числами в диапазоне от v_min до v_max. Поменять местами главную и побочную диагонали массива. Размер массива n задать константой. Границы диапазона v_min и v_max задать с консоли. Вывести на экран исходный и полученный массивы.

Элементы главной диагонали квадратного массива имеют одинаковые индексы: massivii (i=1…n). Соответствующие им построчно элементы побочной диагонали имеют индексы massivi,n-i+1 . Меняем их местами алгоритмом циклического обмена через третью переменную.

  1. Схема алгоритма решения задачи:

  1. Код программы:

Program Variant_0;

Uses WinCrt;

Const n = 5; {задание размера массива именованной константой}

Var i, j : Word;

k, v_min, v_max: Integer;

massiv : Array [1..n, 1..n] Of Integer;

Begin

Randomize; {запуск генератора случайных чисел}

WriteLn('Лабораторная работа №6_2');

WriteLn('Вариант №0');

WriteLn('ИС-11-1');

WriteLn('Пупкин Василий');

WriteLn;

WriteLn('Задайте диапазон случайных чисел');

Write(‘v_min=’);

ReadLn(v_min);

Write(‘v_max=’);

ReadLn(v_max);

For i:=1 To n Do {заполнение массива случайными числами}

For j:=1 To n Do

massiv[i,j]:=Random(v_max-v_min + 1) + v_min;

WriteLn;

WriteLn('Исходный массив:');

For i:=1 To n Do {вывод на экран исходного массива}

Begin

For j:=1 To n Do

Write(massiv[i,j]:5);

WriteLn;

End;

WriteLn;

For i:=1 To n Do {меняем местами соответствующие элементы}

Begin {главной и побочной диагоналей}

k:=massiv[i,i];

massiv[i,i]:=massiv[i,n-i+1];

massiv[i,n-i+1]:=k;

End;

WriteLn;

WriteLn('Полученный массив:');

For i:=1 To n Do {вывод на экран полученного массива}

Begin

For j:=1 To n Do

Write(massiv[i,j]:5);

WriteLn;

End;

WriteLn;

End.

  1. Компиляция, отладка, тестирование и получение результата:

Задания на лабораторную работу №6

Размеры исходных векторов и массивов задавать именованными константами. Для задания элементов исходных векторов и массивов использовать генератор случайных чисел с заданным с консоли диапазоном. Вывести на экран исходные и выходные векторы и массивы. Никакие другие массивы (рабочие) кроме исходных и выходных, не использовать.

Вариант 1

Задание 1

В целочисленном векторе vectorn найти минимальный и максимальный элементы. Элементы вектора, расположенные между ними, отсортировать по возрастанию.

Входные данные:

n=10

v_min=-5

v_max=10

Исходный вектор:

7 -2 1 3 -5 5 2 0 10 1

Выходные данные:

min=-5 n_min=5

max=10 n_max=9

Выходной вектор:

7 -2 2 3 -5 0 2 5 10 1

Задание 2

Вывести на экран построчно элементы всех слоев целочисленного прямоугольного массива matrixnm , начиная с внешнего слоя. Вывод начинать с левого верхнего элемента слоя.

Входные данные для n=3, m=5:

v_min=-20

v_max=10

Исходный массив:

7 -2 -11 3 -5

5 2 0 10 1

-15 9 -12 8 -18

Выходные данные:

7 -2 -11 3 -5 1 -18 8 -12 9 -15 5

2 0 10