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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 28.10.2010, 00:33   #1
ДваДваВо7
Подтвердите свой е-майл
 
Регистрация: 15.10.2010
Сообщений: 29
Сообщение Delphi Задача

Народ помогите или подскажите как решить....

Пусть дана матрица A(n x m).Разработать программу,позволяющую упорядочить столбцы матрицы по возрастанию сумм элементов этого столбца.
ДваДваВо7 вне форума
Старый 28.10.2010, 00:45   #2
Don Karleone
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 410
По умолчанию

1) найти сумму элементов для каждого столбца и записать ее в другой массив
2) этсортировать этот массив и при перестановке его элементов обменивать местами соответствующие столбцы
ICQ: 593-013-807
Don Karleone вне форума
Старый 28.10.2010, 00:47   #3
ДваДваВо7
Подтвердите свой е-майл
 
Регистрация: 15.10.2010
Сообщений: 29
По умолчанию

Цитата:
Сообщение от Don Karleone Посмотреть сообщение
1) найти сумму элементов для каждого столбца и записать ее в другой массив
2) этсортировать этот массив и при перестановке его элементов обменивать местами соответствующие столбцы
не понял((((А как в программе выглядеть это будет не можете написать?
ДваДваВо7 вне форума
Старый 28.10.2010, 00:52   #4
Don Karleone
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 410
По умолчанию

Код:
var
  A: array [1..n,1..m] of integer;
  B: array [1..m] of integer;
for j:=1 to m do
  begin
    sum:=0;
    for i:=1 to n do
      sum:=sum + A[i,j];
    B[j]:=sum;
  end;
подсчет суммы для каждого столбца и запись этих значений в массив B.
Теперь отсортировывайте массив B и если при этом будут меняться местами его элементы меняйте местами столбцы матрицы А с соответствующими индексами. Это вы сделаете сами.

ладно я сегодня добрый.
Код:
for i:=1 to m-1 do
  for j:=1 to m-i do
    if B[j] > B[j+1] 
      then
            begin
               C:=B[j];
               B[j]:=B[j+1];
               B[j+1]:=C;
               for k:=1 to n do
                 begin
                    C:=A[k,j];
                    A[k,j]:=A[k,j+1];
                    A[k,j+1]:=C; 
                 end;
            end;
Отсортирует по возрастанию. Если я конечно не ошибся
ICQ: 593-013-807

Последний раз редактировалось Don Karleone; 28.10.2010 в 01:07.
Don Karleone вне форума
Старый 28.10.2010, 03:17   #5
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

В поиск. Тем про матрицы - навалом.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача в Delphi Darkwallker Помощь студентам 3 22.12.2009 14:21
Задача на Delphi 7 Broadway Помощь студентам 6 04.04.2009 19:40
Задача на Delphi Gorinicher Помощь студентам 17 22.10.2007 21:49