Нахождение элемента в масcиве - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Условия: 1) Без процедур; 2) Массив с 10 чисел, которые пользователь вводит сам; 3) Элемент, который нужно найти, пользователь вводит сам, после ввода массива; 4) Вывести: ---если элемент есть, то его номер в массиве; ---если элемента нету, вернуться опять к вводу числа, которое нужно найти (не обязательно). ---если элемента нету, вывести, что его нету и завершить программу.

Решение задачи: «Нахождение элемента в масcиве»

textual
Листинг программы
const n=10;yn=['y','Y','н','Н'];
type mas=array[1..n] of integer;
var a:mas;
    i:byte;
    ai:integer;
    f:boolean;
    syn:char;
begin
 writeln('введите исходный массив:');
 for i:=1 to n do begin write('a[',i,'] = ');readln(a[i]) end;
 repeat
  write('введите элемент, который нужно найти: ');readln(ai);
  i:=1;f:=false;
  while (not f)and(i<=n) do
   begin
    if a[i]=ai then f:=true; 
    inc(i)
   end;
  if f then writeln('номер этого элемента: ',i-1)
       else begin write('такого элемента нет, продолжить поиск? y/n: '); readln(syn) end;
 until f or (not (syn in yn));
end.

Объяснение кода листинга программы

  1. Создается константа n, которая определяет максимальное количество элементов в массиве.
  2. Создается переменная yn, которая содержит строковые значения символов y, Y, н, Н.
  3. Создается тип данных mas, который представляет собой массив целых чисел размером от 1 до n.
  4. Создается переменная a, которая инициализируется значением mas.
  5. Создается переменная i, которая представляет собой базовый тип данных byte (8 бит).
  6. Создается переменная ai, которая представляет собой целочисленное значение, которое будет использоваться для сравнения элементов массива.
  7. Создается переменная f, которая представляет собой логическое значение true или false, которое будет использоваться для определения, найден ли искомый элемент в массиве.
  8. Создается переменная syn, которая представляет собой символ, введенный пользователем для указания поиска определенного элемента.
  9. Выводится сообщение с просьбой ввести исходный массив. Для этого используется цикл for, который выполняется n раз, где n - это значение переменной n. В каждой итерации цикла выводится сообщение с просьбой ввести значение элемента массива a[i] и значение переменной i увеличивается на 1.
  10. Запускается цикл while, который выполняется до тех пор, пока значение переменной f не станет true или пока значение переменной i не превысит значение n. Внутри цикла while происходит проверка условия a[i] = ai. Если условие истинно, то значение переменной f устанавливается в true, что означает, что искомый элемент был найден. Если условие ложно, то значение переменной i увеличивается на 1.
  11. После завершения цикла while выводится сообщение с просьбой ввести элемент, который нужно найти.
  12. Проверяется значение переменной syn. Если значение syn равно y или Y, то выводится сообщение с просьбой продолжить поиск. Если значение syn не равно y или Y, то выводится сообщение с просьбой завершить поиск.
  13. Цикл while повторяется до тех пор, пока значение переменной f не станет true или пока значение переменной i не превысит значение n.
  14. Если значение переменной f становится true, то выводится сообщение с номером найденного элемента.
  15. Если значение переменной f остается false, то выводится сообщение о том, что искомого элемента нет в массиве.

Оцени полезность:

12   голосов , оценка 3.75 из 5
Похожие ответы