Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с решением пожалуйста

Дмитрий Макуха Ученик (117), открыт 4 недели назад
Дана прямоугольная матрица размерности MxN. Переписать элементы каждого столбца матрицы в обратном порядке на том же месте (перевернуть каждый столбец матрицы "A" без использования дополнительного массива).
3 ответа
Камиль Велловский Знаток (338) 4 недели назад
На паскале

uses crt;
type matr=array[1..100,1..100] of integer;
var i,j,n,c,m:integer;
a:matr;
BEGIN
randomize;
clrscr;
writeln('Zadacha na massiv ');
writeln('---------------------------');
writeln;
write('Vvesti N : ');
readln(n);
writeln('Massiv A: ');
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=random(101);
write(a[i,j]:3);
end;
writeln; end;
writeln;
m:=trunc(n/2);
for i:=1 to n do
for j:=1 to m do begin
c:= a[j,i]; a[j,i]:=a[n-j+1,i]; a[n-j+1,i]:=c end;
for i:=1 to n do begin
for j:=1 to n do
write(a[i,j]:3);

writeln; end;
end.
Sergio 2.1 Оракул (63839) 4 недели назад
 def reverse_columns(matrix): 
M = len(matrix) # количество строк
N = len(matrix[0]) # количество столбцов

for col in range(N):
for row in range(M // 2):
# Меняем местами элементы с начала и конца столбца
matrix[row][col], matrix[M - row - 1][col] = matrix[M - row - 1][col], matrix[row][col]

# Пример использования
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]

reverse_columns(matrix)

for row in matrix:
print(row)
Юрий Семыкин Искусственный Интеллект (200641) 4 недели назад
Достаточно обратить итератор. "Строки" и "столбцы", это очень вульгарно: есть первый индекс, второй и т.д.
 matrix = [  
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
#
matrix.reverse() # столбцы
for row in matrix:
print(row)
##
for i in range(len(matrix)): # строки
matrix[i].reverse()
#---
for row in matrix:
print(*row)
Дмитрий МакухаУченик (117) 3 недели назад
Код работает для строк, нужно перевернуть столбцы. И первоначально матрица выводится в строку.
Юрий Семыкин Искусственный Интеллект (200641) Дмитрий Макуха, здесь два "кода". Внимательнее посмотрите. А как выводить матрицу-дело форматирования.
Похожие вопросы