Определить номер последней строки, содержащей наименьшее число знаков «+» и «-» - Pascal ABC
Формулировка задачи:
Выполнить задание для квадратной символьной матрицы порядка n.Определить номер последней строки, содержащей наименьшее число знаков «+» и «-».
Пожалуйста, помогите!
Решение задачи: «Определить номер последней строки, содержащей наименьшее число знаков «+» и «-»»
textual
Листинг программы
program testprg; var i, j, n, iMinVal, iMinTmp, iMinStrNum: integer; var a: array[0..99, 0..99] of char; begin // Инициализация массива Writeln('Введите размерность массива:'); Read(n); Randomize; Writeln('Сформированный массив:'); for i:=1 to n do begin for j:=1 to n do begin if Random(10) < 2 then a[i,j] := '-' else if Random(10) < 4 then a[i,j] := '+' else a[i,j] := 'q'; Write(a[i,j]:5); end; Writeln(''); end; // Анализ массива iMinVal := n; for i:=1 to n do begin iMinTmp := n; for j:=1 to n do begin if (a[i,j] = '-') or (a[i,j] = '+') then iMinTmp := iMinTmp - 1; end; if iMinTmp = (n+1) then iMinVal := 0; if iMinTmp <= iMinVal then begin iMinVal := iMinTmp; iMinStrNum := i end end; // Вывод результата Writeln('Минимальное количество символов "+" и "-" (', iMinVal , ') содержится в строке №', iMinStrNum, ')'); end.
Объяснение кода листинга программы
- В программе объявлены переменные: i, j, n, iMinVal, iMinTmp, iMinStrNum, которые будут использоваться для решения задачи.
- Создается массив a размером n x n, в котором случайным образом заполняются символы '+', '-' и 'q'.
- Задается начальное значение iMinVal равное n, которое будет использоваться для поиска минимального значения среди всех строк массива.
- Запускается цикл анализа массива. В каждой итерации цикла происходит следующее:
- iMinTmp устанавливается равным n.
- Для каждой строки массива выполняется следующий блок кода:
- Если текущий символ строки равен '-' или '+', то iMinTmp уменьшается на 1.
- Если после выполнения всех проверок iMinTmp меньше или равно iMinVal, то iMinVal устанавливается равным iMinTmp.
- Если после выполнения всех проверок iMinTmp меньше или равно iMinVal, то iMinVal устанавливается равным iMinTmp.
- После завершения цикла анализа массива выводится результат: номер строки, содержащей минимальное количество символов '+', '-' и 'q'.
- Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д