Реализовать последовательный поиск в динамическом массиве целых чисел - Pascal ABC

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

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

2)Реализовать последовательный поиск в динамическом массиве целых чисел.

Решение задачи: «Реализовать последовательный поиск в динамическом массиве целых чисел»

textual
Листинг программы
  1. var a:^array[1..100] of integer;
  2.     n,i,k,x:integer;
  3. begin
  4. new(a);
  5. repeat
  6. write('Введите размер массива от 1 до 100 n=');
  7. readln(n);
  8. until n in [1..100];
  9. for i:=1 to n do
  10.  begin
  11.   a^[i]:=1+random(100);
  12.   write(a^[i]:4);
  13.  end;
  14. writeln;
  15. write('Введите число для поиска x=');
  16. readln(x);
  17. i:=1;
  18. k:=0;
  19. while(i<=n)and(k=0) do
  20. if a^[i]=x then k:=1
  21. else inc(i);
  22. if k=1 then write('Число ',x,' в массиве есть')
  23. else write('Числа ',x,' в массиве нет')
  24. end.

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

  1. Создается переменная a типа ^array[1..100] of integer;, которая представляет собой динамический массив целых чисел размером от 1 до 100.
  2. Затем объявляются четыре переменные: n, i, k и x. Переменная n используется для хранения введенного пользователем размера массива, а переменные i, k и x используются для выполнения поиска в массиве.
  3. Выполняется цикл repeat, который продолжается до тех пор, пока введенный пользователем размер массива n находится в диапазоне от 1 до 100. В каждой итерации цикла выводится запрос на ввод размера массива, и значение размера сохраняется в переменной n.
  4. После завершения цикла repeat начинается цикл for, который выполняется от 1 до n. В каждой итерации цикла вычисляется значение индекса элемента массива, который будет заполнен следующим числом. Затем вычисляется значение числа, которое будет добавлено в массив. Это число равно 1 + random(100), где функция random(100) генерирует случайное число от 0 до 99.
  5. После завершения цикла for выводится значение a^[i] (то есть значение элемента массива с индексом i), чтобы убедиться, что добавление чисел в массив происходит корректно.
  6. Затем выводится запрос на ввод числа для поиска (x). Значение этого числа сохраняется в переменной x.
  7. Инициализируются две переменные: i и k. Переменная i устанавливается равной 1, а переменная k устанавливается равной 0.
  8. Запускается цикл while, который выполняется, пока i меньше или равно n и k равно 0.
  9. Внутри цикла while выполняется проверка условия if a^[i] = x then k := 1, что означает, что если текущий элемент массива равен искомому числу, то переменная k устанавливается равной 1.
  10. Если условие истинно, то выводится сообщение Число x в массиве есть, что означает, что искомое число найдено в массиве.
  11. Если условие ложно, то выводится сообщение Числа x в массиве нет, что означает, что искомое число не найдено в массиве.
  12. После завершения цикла while значение переменной k выводится на экран. Если значение k равно 1, то сообщение о том, что искомое число найдено, будет выведено, иначе будет выведено сообщение о том, что искомое число не найдено.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

5   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы