Из матрицы целых чисел удалить столбец, значения всех элементов которого равно 0 - Turbo Pascal
Формулировка задачи:
Из матрицы целых чисел удалить столбец, значения всех элементов которого равно 0
Исходная:
11 12 0 14
21 22 0 24
31 32 0 34
41 42 0 44
Конечная:
11 12 14
21 22 24
31 32 34
41 42 44
Решение задачи: «Из матрицы целых чисел удалить столбец, значения всех элементов которого равно 0»
textual
Листинг программы
Uses Crt; Const nmax=20; Var A:array[1..nmax,1..nmax] of integer; i,j,n,m,jk,k:byte; t:integer; Begin ClrScr; write('n,m<=',nmax,': ');readln(n,m); For i:=1 to n do For j:=1 to m do Begin write('A[',i,',',j,'] = '); readln(A[i,j]); End; ClrScr; writeln('Исходная'); For i:=1 to n do Begin For j:=1 to m do write(A[i,j]:4); writeln; End; j:=1; While (j<=m)and(jk=0) do Begin k:=0; For i:=1 to n do if A[i,j]=0 then inc(k); if k=n then jk:=j; inc(j); End; if jk=0 then writeln('Нету столбца из нулей') else Begin dec(m); For j:=jk to m do For i:=1 to n do A[i,j]:=A[i,j+1]; writeln('Конечная'); For i:=1 to n do Begin For j:=1 to m do write(A[i,j]:4); writeln; End; End; readln; End.
Объяснение кода листинга программы
- В начале кода объявляются необходимые переменные и используется библиотека Crt.
- Затем происходит чтение входных данных: n и m.
- Далее происходит итерация по элементам матрицы A.
- Внутри первого цикла выводится значение каждого элемента матрицы A.
- После этого происходит итерация по элементам массива A.
- Во втором цикле проверяется значение каждого элемента матрицы A.
- Если значение элемента равно 0, то увеличивается счетчик k.
- Если k равно n, то jk устанавливается равным j.
- Затем увеличивается значение j.
- В конце проверяется, равен ли jk 0.
- Если jk равно 0, выводится сообщение
Нету столбца из нулей
. - Если jk не равно 0, происходит следующее:
- Уменьшается значение m.
- Для каждого i от 1 до n происходит итерация по элементам матрицы A.
- Для каждого j от 1 до m происходит итерация по элементам матрицы A.
- Значение элемента A[i,j] присваивается значению элемента A[i,j+1].
- Выводится сообщение
Конечная
. - Для каждого i от 1 до n происходит итерация по элементам матрицы A.
- Для каждого j от 1 до m выводится значение элемента A[i,j] в формате 4-х знаков после запятой.
- Выводится символ новой строки.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д