Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Решите мою задачу))Дана целочисленная матрица размера 6x9 Найти матрицу получающихся из данной перестановке столбцов!!!
1
  1  Прищенко Богдан Олегович, 08 мая 2009 г. 14:22:47
      Моя решает - написал на локалке варианты на Паскале и С++. Но сюда не хочу выкладывать - если человеку нужна суть, то он и так поймет с моего предидущего поста, если же это студент, не вьезжающий в программирование - пусть учит сам, или же ищет других помощников:)
// я просто не вижу необходимости менять строки. Лишний код,утрудняет понимание для новичков. При таких ограничениях просто проверка вывода без обмена не убьет програму:)
  2  Ладик Артём на C++, 07 мая 2009 г. 21:55:10
      в этой теме все пытаются почемуто написать перестановку только 1вого и последнего столбца, но в условии, то ясно сказано получить новую таблице из старой по заданой перестановки столбцов. те
есть какойе-то
q-количество перестановок
а дальше идут
k11 k21
k21 k22
k31 k32
----------
kq1 k12
те сами перестановки, моя программа и решает эту задачу, только надо цикл добавить, а ваши все нет, они меняют только первый и последний!!!!! не понимаю почему вы вообще предлагаете текие решения!!!!
  3  Баширов Аслан Афкиф-Оглы, 07 мая 2009 г. 18:14:21
      А вот мое решение:
const n=3; m=4;
type mas=array[1..m,1..n]of integer;
var i,j,t,temp:integer; a:mas;
f,f1:text;
begin
assign(f,'input.txt'); assign(f1,'output.txt');
reset(f); rewrite(f1);
for i:=1 to n do
for j:=1 to n do
read(f,a[i,j]);
{_____________________obrabotka______________}


{___________________edn_____________________}
for i:=1 to m do
begin
temp:=a[i,1];
a[i,1]:=a[i,n];
temp:=a[i,n];
end;
for i:=1 to m do
begin
for j:=1 to n do write(f1,a[i,j]:6);
writeln;
end;
close(f); close(f1);
end.

  4  Ладик Артём на C++, 05 мая 2009 г. 22:42:43
      короче
InPutData(); ввод данных из фаила input.txt
Swap(k1,k2); меняет столбец k1 со столбцом k2
OutPutData(); вввод данных из фаила output.txt
  5  Ладик Артём на C++, 05 мая 2009 г. 22:39:49
      пологаю это то что хотел автор темы
#include <stdio.h>


long n=6,m=9,a[7][10];



void InPutData()
{

long i,j;

freopen("input.txt","r",stdin);

for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%ld",&a[i][j]);

}




void Swap(long j1,long j2)
{
long i,tmp;

for(i=1;i<=n;i++)
{
tmp=a[i][j1];
a[i][j1]=a[i][j2];
a[i][j2]=tmp;
}
}




void OutPutData()
{

long i,j;

freopen("output.txt","w",stdout);

for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
printf("%ld ",a[i][j]);
printf("\n");
}

}





int main()
{

InPutData();

Swap(1,9);
Swap(2,8);


OutPutData();

return 0;
}
  6  Мехрдод ТРГИ [9"А" team], 05 мая 2009 г. 22:00:57
      мне кажется тут просто нада делать так: начинать цикл вывода с 2 и потом в конце выводить 1 столбец это получается мы переставили. for(i=1;i<=n;i=i+1) for (j=2;j<=n;j++) вывод a[i][j]; for (i=1;i<=n;i++) вывод a[i][1]!(в пред сообщении вышла описка) если я верно понял условие то как то так
  7  Мехрдод ТРГИ [9"А" team], 05 мая 2009 г. 21:55:55
      мне кажется тут просто нада делать так: начинать цикл вывода с 2 и потом в конце выводить 1 столбец это получается мы переставили. for(i=1;i<=n;i=i+1) for (j=2;j<=n;j++) вывод a[i][j]; for (i=1;i<=n;i++) вывод a[i][2]! если я верно понял условие то как то так
  8  Прищенко Богдан Олегович, 05 мая 2009 г. 20:48:53
      Если так, то просто сделать вывод с подусловием:) выводим исходную матрицу с условием, что если столбец даного елемента равен столбцу для изменения, то выводить елемент, который на позиции "с которой надо поменять". Ну и, соответственно, наоборот:)
  9  Беляев Сергей Николаевич, 05 мая 2009 г. 20:37:09
      Полагаю, что в задаче нужно было поменять 2 столбца местами. Если так, то это очень простая задача.
  10  Прищенко Богдан Олегович, 05 мая 2009 г. 20:12:15
      ?? Матрицу, получающуюся после перестановки столбцов? матрицу перестановок? Криво условие написал:) :) (подозреваю, что человеку задали это сделать, и он решил нас напрячь, но условие все же хотелось бы увидеть)
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru