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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2011, 22:25   #1
Sheport
Новичок
Джуниор
 
Регистрация: 20.06.2011
Сообщений: 1
По умолчанию Массив 7х7 целого типа в каждом столбце поменять max элемент и элемент побочной диагонали

Массив 7х7 целого типа в каждом столбце поменять max элемент и элемент побочной диаголнали. Ошибка там где выделено красным. Помогите исправить.

Код:
uses crt;
var a: array[1..7, 1..7] of integer;
  i, j, t, max, imax: integer;
begin
  randomize;
  for i := 1 to 7 do begin
    for j := 1 to 7 do begin
      a[i, j] := random(20);
      write(a[i, j]: 4); end;
    writeln;
  end;
  writeln;
  for i := 1 to 7 do begin
    max := a[i, 1]; imax := 1;
    for j := 2 to 7 do begin
      if a[i, j] > max then begin
        max := a[i, j]; imax := j;
      end; end;
    a[i, 8 - j] := a[i, j];
    a[i, 8 - j] := max; 
  end;
  for i := 1 to 7 do begin
    for j := 1 to 7 do begin
      write(a[i, j]: 4);
    end;
    writeln;
  end;
end.




________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 20.06.2011 в 23:14.
Sheport вне форума Ответить с цитированием
Старый 20.06.2011, 23:30   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

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

примерно так:
Код:
  writeln;
  for j := 1 to 7 do begin
    max := a[1, j]; imax := 1;
    for i := 2 to 7 do begin
      if a[i, j] > max then begin
        max := a[i, j]; imax := i;
      end; end;
    Writeln('в столбце ',j,' max = ',max,' найден в строке ',imax);
    a[imax,j] := a[8 - j, j];
    a[8 - j, j] := max;
  end;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в матрице найти максимальный элемент для каждой её диагонали паралллельной побочной 92Edik Помощь студентам 1 26.05.2011 18:21
элемент, лежащий на побочной диагонали Violleta Помощь студентам 2 15.11.2010 22:29
Дан двумерный массив.Найти наибольший отрицательный элемент выше побочной диагонали и наименьший положите red-white Помощь студентам 1 05.11.2010 09:51
Максимальный элемент побочной диагонали матрицы Mariya0202 Помощь студентам 8 16.10.2009 09:05
Как поменять местами в массиве max и min элемент. Stager Общие вопросы C/C++ 2 13.01.2009 02:03