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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2011, 21:49   #1
Ars/\an
Новичок
Джуниор
 
Регистрация: 04.05.2011
Сообщений: 2
Вопрос Pascal.Работа с массивами.

В общем задача выглядит так: "В заданной матрице вычислите суммы элементов строки и столбца , на пересечении которых находится максимальный элемент матрицы .Этот элемент замените полученной суммой . " Матрицу я создал а как дальше не пойму , помогите пожалуйста
Код:
program massiv;
uses crt;
const n=4;
type
m=array [1..n,1..n] of integer;
var
a:m;
 var
i1,i2:integer;
begin
clrscr;

for i1:=1 to n do
 for i2:=1 to n do
  a[i1,i2]:=random(50);
   for i1:=1 to n do begin
    for i2:=1 to n do
      write(a[i1,i2]:4);
writeln;
end;


readln;
end.

Последний раз редактировалось Ars/\an; 05.05.2011 в 22:04.
Ars/\an вне форума Ответить с цитированием
Старый 05.05.2011, 22:09   #2
freemanoid
 
Аватар для freemanoid
 
Регистрация: 05.05.2011
Сообщений: 7
Радость

Вот две процедуры, которые тебе необходимы:
Код:
procedure FindMaxElement (SomeArray: array[1..n,1..n] of integer; var max_i, max_j: integer);
var
  i, j, temp_Max: integer;
begin
  max_i:= 1;
  max_j:= 1;
  for i:= 1 to n do
    for j:= 1 to n do
      if SomeArray[i, j] > SomeArray[max_i, max_j] then
      begin
        max_i:= i;
        max_j:= j;
      end;
end;

procedure ModifyMaxElement (var SomeArray: array [1..n,1..n] of integer; max_i, max_j: integer);
var
  i, j: integer;
begin
  for i:= 1 to max_i - 1 do
    Inc (SomeArray[max_i, max_j], SomeArray[i, max_j]);
  for i:= max_i + 1 to n do
    Inc (SomeArray[max_i, max_j], SomeArray[i, max_j]);
  for j:= 1 to max_j - 1 do
    Inc (SomeArray[max_i, max_j], SomeArray[max_i, j]);
  for i:= max_j + 1 to n do
    Inc (SomeArray[max_i, max_j], SomeArray[max_i, j]);
end;
freemanoid вне форума Ответить с цитированием
Старый 05.05.2011, 22:09   #3
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

ну смотри напишу тебе сначало алгоритм попробуеш сам если не получитса помогу.
сначало цыклом пробегаешса по масиву и ищеш максимальный елемент, записываеш его индексы. потом пробегаешса по строке и столбце

опоздал

Последний раз редактировалось Pein95; 05.05.2011 в 22:17.
Pein95 вне форума Ответить с цитированием
Старый 06.05.2011, 00:35   #4
Ars/\an
Новичок
Джуниор
 
Регистрация: 04.05.2011
Сообщений: 2
По умолчанию

Спасибо , что отозвались на просьбу, щас попробую )) посмотрим что получится =)
Ars/\an вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с массивами. Pascal DarkBeowulf Помощь студентам 2 24.12.2010 21:18
Работа с массивами (pascal) МасловЕвгений Помощь студентам 2 23.02.2010 17:26
работа с массивами (Pascal) kead Помощь студентам 1 15.11.2009 17:03
Работа с массивами (pascal) Bykvaeshka Помощь студентам 3 17.03.2009 18:24
Работа с массивами (pascal) dashenka Помощь студентам 21 14.03.2009 13:19