Найти номер первого из столбцов матрицы, не содержащих элементов, меньших s - Turbo Pascal

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

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

Найти номер первого из столбцов, не содержащих элементов, меньших s. (матрица)

Решение задачи: «Найти номер первого из столбцов матрицы, не содержащих элементов, меньших s»

textual
Листинг программы
var
    ar: Array[Byte, Byte] Of ShortInt;
    i, j: Byte;
    n, m, s: Integer;
    flag: Boolean;
begin
    repeat
        Write('Введите количество строк (1..256): ');
        ReadLn(n);
    until ((n > 0) And (n <= 256));
    repeat
        Write('Введите количество столбцов (1..256): ');
        ReadLn(m);
    until ((m > 0) And (m <= 256));
    Randomize;
    for i := 0 to n - 1 do
    begin
        for j := 0 to m - 1 do
        begin
            ar[i, j] := Random(199) - 99;
            Write(ar[i, j]:4);
        end;
        WriteLn;
    end;
    Write('Введите число s: '); ReadLn(s);
    j := 0;
    repeat
        i := 0;
        repeat
            flag := (ar[i, j] >= s);
            Inc(i);
        until ((i >= n) Or (Not flag));
        Inc(j);
    until ((j >= m) Or flag);
    if (flag)
    then
        WriteLn('Ответ: столбец №', j)
    else
        WriteLn('Все столбцы содержать элементы, меньшие ', s);
end.

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

  1. Создается переменная ar типа Array[Byte, Byte] Of ShortInt, которая представляет собой матрицу размером n x m.
  2. Задаются переменные i и j типа Byte, которые будут использоваться для прохода по матрице.
  3. Задается переменная n типа Integer, которая представляет количество строк в матрице.
  4. Задается переменная m типа Integer, которая представляет количество столбцов в матрице.
  5. Задается переменная s типа Integer, которую пользователь должен ввести и которая будет использоваться для проверки элементов матрицы.
  6. Инициализируется переменная flag типа Boolean, которая будет использоваться для отслеживания того, есть ли в матрице столбцы, содержащие элементы, меньшие s.
  7. В цикле while происходит следующее:
    • Пользователю предлагается ввести количество строк и столбцов матрицы.
    • Введенные значения проверяются на соответствие допустимому диапазону.
    • Если введенные значения некорректны, цикл повторяется.
    • Если введенные значения корректны, переходят к следующему шагу.
  8. В цикле while повторяется следующий код:
    • Переменная i и j инициализируются.
    • В цикле повторяется следующий код:
      • Переменная flag устанавливается в значение (ar[i, j] >= s).
      • Переменная i инкрементируется.
      • Пока условие (i >= n) или (Not flag) истинно, переменная j инкрементируется.
    • Если флаг равен true, выводится ответ на вопрос о номере столбца.
    • Если флаг равно false, выводится сообщение о том, что все столбцы содержат элементы, меньшие s.

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


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

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

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