В векторе (одномерном массиве) найти: разность первого положительного и последнего отрицательного элемента - Pascal

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

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

В заданном векторе (одномерном массиве) найти: разность первого положительного и последнего отрицательного элемента

Решение задачи: «В векторе (одномерном массиве) найти: разность первого положительного и последнего отрицательного элемента»

textual
Листинг программы
const
  n = 10;
 
var
  kn, kp, i: integer;
  a: array[1..n] of integer;
 
begin
  randomize;
  kp := 0;
  kn := 0;  
  for i := 1 to n do
  begin
    a[i] := -n div 2 + random(n);
    write(a[i]:5);
  end;
  for i := 1 to n do
  begin
    if a[i] > 0 then 
    begin
      kp := i;
      break;
    end;
  end;  
  writeln;
  
  for i := n downto 1 do
    if a[i] < 0 then 
    begin
      kn := i;
      break;
    end;
  if (kp <> 0) and (kn <> 0)  then
    writeln(a[kp] - a[kn])
  else
    writeln('Вообще нет или положительных или отрицательных');
  
end.

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

  1. Объявляется константа n со значением 10.
  2. Объявляются переменные: kn, kp, i типа integer и массив a размером n элементов.
  3. Генерируется случайное начальное значение для генератора случайных чисел.
  4. Происходит заполнение массива a случайными значениями от -n div 2 до n.
  5. Значения массива a выводятся в консоль.
  6. Находится индекс первого положительного элемента массива a и сохраняется в переменной kp.
  7. Выводится массив a в консоль.
  8. Находится индекс последнего отрицательного элемента массива a и сохраняется в переменной kn.
  9. В случае, если найдены и положительное, и отрицательное число, выводится их разность. Иначе выводится сообщение Вообще нет или положительных или отрицательных.

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


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

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

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