Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatika.docx
Скачиваний:
5
Добавлен:
15.08.2019
Размер:
281.69 Кб
Скачать
  1. Поиск элемента в массиве

Такой поиск называется также поиском по ключу. Осуществим поиск путем сплошного переббра.

Program АВС10;

Label 1,2;

Const n = 7;

Vara:array[1..n]of real;

X: real; I: integer;

Begin

Write (‘ введите элементы массива ’);

For i: = 1 to n do

Read (a [ I ]); ,

Writeln;

Write (1 введите число для поиска в массиве, х = ‘);

Readln (х);

For I: = 1 to n do IF a [ I ] = x then goto 1;

Writeln (‘ такого числа в массиве нет ’);

Goto 2;

1: Write (‘ номер элемента массива, равного данному ’, I); 2: End.

Откомпилируйте, запустите программу на выполнение. Введите данные через пробел: 2 12 22 32 42 52 102. Задайте числа 32 и 55. Просмотрите результат. Сохраните программу на носителе, создайте .ехе - файл.

Практическое задание n2 9 Таблицы

Двумерный массив (или прямоугольная таблица) В из п строк и m столбцов в общ^м виде выглядит следующим образом:

М1 М2 ... Ыт

Ь21 Ь22 ... Ь2т

Ьп1 Ьп2 ... Ьпт

На Паскале имена элементов массива записываются так же, с двумя номерами (индексами): Ь(1,1), Ь(1,2), ..., b(1,m), b(2,1), Ь(2,2), ..., b(2,m), ..., b(n,m). В памяти компьютера элементы двумерного массива расположены один за другим: после элементов первой строки следуют элементы второй строки и тд. Если число строк таблицы равно числу столбцов, то такая таблица называется квадратной. Главная диагональ квадратной таблицы проходит из левого верхнего угла в правый нижний.

Рассмотрим задачи обработки таблиц и алгоритмы их решения.

  1. Вычисление суммы элементов главной диагонали квадратной таблицы.

В [ i, i ], т. е можно рассматривать диагональ, как одноименный массив, и использовать один цикл для вычислений.

Program АВС11; const n = 3;

var b: array [ 1.. n, 1.. n ] of real; I, j: integer; S: real; begin

Writeln (1 введите значения элементов таблицы по строкам');

Writeln (‘ в конце каждой строки нажимайте < Enter> ‘);

For I: = 1 to n do begin

For j: = 1 to n do Read (b [ i, j ]);

Writeln;

End;

S: = 0;

For I: = 1 to n do

S: = S + b[ i,j]; _J_

Writeln (1 сумма элементов диагонали таблицы S = S); Readln;

End.

Откомпилируйте программу, запустите ее на выполнение. Введите данные, используя таблицу №1 в конце задания. Просмотрите результат. Сохраните программу на носителе, создайте .ехе - файл.

  1. Нахождение сумм элементов столбцов таблицы,

При обработке таблиц можно осуществлять операции как над строками, так и над столбцами. Введем переменную S для вычисления суммы, а затем для каждого столбца запишем полученный результат в массив А,т. е присвоим его переменной А [ j ], где j- текущий номер столбцов таблицы.

Program ABC 12; const n = 3;

varB:array[1 ..n,1.. n ] of integer ;S,j, I: integer;

A: array [ 1.. n ] of integer; begin

Writeln (‘ вводите значения элементов таблицы по строкам ‘); Writeln (‘ в конце каждой строки нажимайте < Enter >’);

For I: = 1 to n do begin

For j: = 1 to n do Read (В[I, j ]);

Writeln;

End;

{построение массива сумм элементов столбцов таблицы}

For j: = 1 to n do begin S: = 0;

For I: = 1 to n do S: = S + B[l,j];

A [ j ]: = S End;

Writeln (‘ суммы элементов столбцов таблицы : ‘);

For I: = 1 to n do Writeln (A [i]);

Readln;

End.

Откомпилируйте программу, запустите ее на выполнение. Введите данные из таблицы. Просмотрите результат. Сохраните программу на носителе, создайте .ехе - файл.

Таблица №1

5

6

1

4

12

15

2

-3

0

Массив результатов

А [ 1 ]

А [2]

А [3]

11

15

16

Практическое задание №10 Подпрограммы - процедуры Подпрограмма - это специальным образом оформленный алгоритм, который может многократно использоваться при решении общей задачи.

В Паскале подпрограмма является частью основной программы, ее описание располагается между разделом var главной программы и ее программным блоком - первым оператором begin. В Паскале различают два вида подпрограмм: процедуры и функции. Основное различия между ними заключается в том, что процедура получает в результате своей работы любое количество данных, а функция - только одно значение. Процедура-это подпрограмма, имеющая любое количество входных и выходных данных Процедура может быть описана без параметров и с параметрами. Параметры - это данные из заголовка процедуры, как передаваемые ей на обработку, так и получаемые в виде результатов. Описание процедуры без параметров имеет вид:

Procedure имя;

{описание локальных переменных } begin

{операторы}

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]