Одна из важных невычислительных задач — поиск данного значения среди элементов массива, Такой поиск называется также поиском по ключу. На практике поиск осуществляется в упорядоченном массиве, причем имеются различные алгоритмы поиска. В данном примере осуществим поиск путем сплошного перебора. Если элемент найден, то напечатаем его номер, если нет, то выдадим соответствующее сообщение. Существенным является то, какой из одинаковых элементов массива, равных данному, нас интересует: первый встретившийся при поиске или последний. В этом примере будем искать первый. Поиск осуществляется в цикле, и как только элемент найден, надо выйти из цикла. Для досрочного выхода из циклаfor используем операторgoto. Если досрочный выход не произойдет, то значит, элемент, равный данному, в массиве отсутствует. В таком случае выдача сообщения об отсутствии элемента происходит сразу после цикла поиска. Следовательно, чтобы обойти печать номера элемента, надо использовать еще один операторgoto и еще одну метку в программе.
Программа поиска данного элемента в массиве:
programР15;
label1,2;
constn = 7;
vara :array[1 .. n ]of real;x :real;i :integer;
Begin
writeln(‘введите элементы массивов’);
fori: = 1tondo
read(a [ i ]);
writeln;
write(‘введите число для поиска в массиве, х = ‘);