Найти, сколько положительных элементов массива удовлетворяют условию - Free Pascal

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

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

Дано условие : Задав одномерный массив целочисленных данных А в одном из заданных форматов (BYTE, WORD, SHORTINT, INTEGER или LONGINT), реализовать обработку массива, как указано в варианте. Длина массива N<=20. Исходные данные задать самостоятельно, учитывая формат элементов массива A - LONGINT;

Найти, сколько положительных элементов массива A={a[i]} удовлетворяют условию: с <= a[i] <= d.

Находил ,подходящую под это описание, программу , но там было всё так мудрёно , что я даже растерялся , аж томик Павловской выпал из рук. Спасайте , братцы!

Решение задачи: «Найти, сколько положительных элементов массива удовлетворяют условию»

textual
Листинг программы
const
  n = 20; {указываю максимально возможное по условию, можно изменить
  или вообще по другому массив сформировать}
var
  a : array [1..n] of longint;
  c, d : longint;
  k, i : byte;
begin
  k := 0;
  {формируем массив}
  randomize;  
  for i := 1 to n do a[i] := random(1000) * random(1000);
  {выводим}
  writeln('значения массива:');
  for i := 1 to n do write(a[i]:10);
  writeln;
  {ввод условия}
  repeat
    write('введите c и d (c < d): ');
    readln(c, d);
    if c >= d then writeln('ошибка ввода, повторите ввод')
  until c < d;
  {провеляем и считаем кол-во}
  for i := 1 to n do
    if (a[i] >= c) and (a[i] <= d) then k := k + 1;
  {результат}
  writeln('количество: ', k);
  readln
end.

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

  1. Объявляются переменные:
    • n - максимально возможное количество элементов массива
    • a - массив, в котором будут храниться числа
    • c, d - числа, между которыми будет производиться подсчет удовлетворяющих условию элементов
    • k - счетчик, инициализируется нулем
    • i - переменная-счетчик для циклов
  2. Заполняется массив случайными числами от 1 до 1000 с помощью функции random и оператора умножения.
  3. Выводится на экран содержимое массива с помощью цикла и функции write.
  4. В цикле repeat запрашивается ввод чисел c и d, и проверяется корректность ввода (c должно быть меньше d).
  5. Если ввод корректен, то в цикле for производится проверка каждого элемента массива на удовлетворение условию c < a[i] < d, и если условие выполняется, то к переменной k прибавляется единица.
  6. Выводится на экран количество элементов, удовлетворяющих условию.

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


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

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

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