Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2011, 16:16   #11
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ничего дальше писать не надо!
Перечитайте мой пост выше!
это раз.
Ответь на вопрос Вадима - Вам надо вывести транспонированную матрицу на экран или изменить исходную матрицу в памяти компьютера. Это два.

Подумать о том, откуда в исходной матрице возьмутся начальные значения. Три.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.09.2011, 16:18   #12
sidestep
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 93
По умолчанию

самый простой способ решения - воспользоваться дополнительным массивом, куда и переносить данные

можно это в коде отобразить? я не совсем понимаю
sidestep вне форума Ответить с цитированием
Старый 24.09.2011, 16:20   #13
sidestep
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 93
По умолчанию

на экран надо вывести исходную матрицу, но уже в транспонированном виде
sidestep вне форума Ответить с цитированием
Старый 24.09.2011, 16:22   #14
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от sidestep Посмотреть сообщение
на экран надо вывести исходную матрицу, но уже в транспонированном виде
Я вам ответил уже вот здесь
http://www.programmersforum.ru/showp...7&postcount=10
Вадим Мошев вне форума Ответить с цитированием
Старый 24.09.2011, 16:23   #15
sidestep
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 93
По умолчанию

Подумать о том, откуда в исходной матрице возьмутся начальные значения. Три.
Код:
for i:=1 to 10 do
for j:=1 to 10 do
begin
A[i,j]:=k;
A[j,i]:=A[i,j];
A[j,i]:=k;
- я правильно понял?

Последний раз редактировалось sidestep; 24.09.2011 в 16:26.
sidestep вне форума Ответить с цитированием
Старый 24.09.2011, 16:28   #16
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Правильно-то правильно, если не ошибаюсь, но откуда у вас в переменной k что-то появится, вы же туда ничего не записываете? (!!!)
Да и матрица у вас пустая. (!!!)
Вадим Мошев вне форума Ответить с цитированием
Старый 24.09.2011, 16:33   #17
sidestep
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 93
По умолчанию

Код:
program trans;
const n=10;
var i,j,k :integer;
A: array[1..n,1..n] of integer;
B: array[1..n,1..n] of integer;
begin
k:=0;
for i:=1 to 10 do
for j:=1 to 10 do

begin
k:=A[i,j];
A[i,j]:=A[j,i];
A[j,i]:=k;
end;
а как матрицу заполнить?

Код:
A[i]:=i;
A[j]:=j;
как-то так заполнить?

Код:
A[i,j]:=random(100);


_____________________________
Форум - не чат!
Не надо плодить подряд несколько коротких сообщений!
Это нарушение правил...
для того, чтобы через минуту/другую дописать сообщение,
не надо создавать ещё один новый пост.
нажимайте на предыдущем кнопку "Правка"
и дописывайте в своё сообщение, что Вы хотели добавить!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 24.09.2011 в 20:23.
sidestep вне форума Ответить с цитированием
Старый 24.09.2011, 16:43   #18
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от sidestep Посмотреть сообщение
Код:
A[i,j]:=random(100);
Да, можно и так.

И ещё: не постите сразу несколько сообщений подряд. пользуйтесь правкой. Это кнопочка "Edit" в правом нижнем углу ваших сообщений.
Изображения
Тип файла: jpg editpost.jpg (1.6 Кб, 46 просмотров)
Вадим Мошев вне форума Ответить с цитированием
Старый 24.09.2011, 16:46   #19
sidestep
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 93
По умолчанию

Код:
program trans;
const n=10;
var i,j,k :integer;
A: array[1..n,1..n] of integer;
B: array[1..n,1..n] of integer;
begin
k:=0;
for i:=1 to 10 do
for j:=1 to 10 do
A[i,j]:=random(100);
for i:=1 to n do

begin
for j:=1 to n do
k:=A[i,j];
A[i,j]:=A[j,i];
A[j,i]:=k;
end;


for i:=1 to n do
	begin
	for j:=1 to n do
			write(A[j, i], ' ');

	WriteLn;
	end;

end.




Не получается написать все-таки много вопросов. можете исходный код написать, я по нему буду разбираться и вопросы задавать в том, что не понятно. Заранее спасибо.

Последний раз редактировалось sidestep; 24.09.2011 в 16:52.
sidestep вне форума Ответить с цитированием
Старый 24.09.2011, 16:53   #20
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Код:
for i:=1 to n do

begin
for j:=1 to n do
k:=A[i,j];
A[i,j]:=A[j,i];
A[j,i]:=k;
end;
Если вам надо вывести ИСХОДНУЮ МАТРИЦУ, но в транспонированном виде, то зачем вы стараетесь транспонировать её программно, то есть преобразовываете массив?
А матрица A у вас, как написал выше Serge_Bliznykov у вас на выходе не изменится.

Массив B вы зачем-то объявили, но не используете.
Вадим Мошев вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как умножить матрицу(3на4) на матрицу(4на3) в делфи? Ромка678 Помощь студентам 1 28.11.2009 08:01
Задача на матрицу VNS Помощь студентам 2 22.11.2009 13:47
Создать матрицу Chertenok666 Помощь студентам 16 14.11.2009 16:14
Объясните пожалуйста как можно считать значения в этом файле в вектор, 4 -ую матрицу, 6-ую матрицу ciaonataha Помощь студентам 1 30.03.2009 20:57