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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2009, 19:45   #1
Razorishe
Пользователь
 
Аватар для Razorishe
 
Регистрация: 16.03.2009
Сообщений: 34
По умолчанию Задача на квадратную матрицу..

Доброе время суток уважаемые программисты, возникла проблема с решение данной задачи в ПАСКЕЛЕ:

Размерность матрицы задать именованными константами, значения элементов массива - в списке инициализации. В целочисленной квадратной матрице. Определить:
1) произведение элементов в тех строках, которые не содержат отрицательных элементов;
2) максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.

С первым заданием справился, второе не получается.. Буду очень благодарен за помощь
Добавляйте отзывы, буду благодарен

Последний раз редактировалось Razorishe; 16.03.2009 в 19:51.
Razorishe вне форума Ответить с цитированием
Старый 16.03.2009, 20:56   #2
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

2)
Код:
program pascall;
const
 n = 5;
var
 a : array [1..n,1..n] of integer;
 sum,maxsum : integer;
 i,k,j : byte;
begin
 randomize;
 for i:=1 to n do
  for k:=1 to n do a[i,k]:=random(10);
 for i:=1 to n do
 begin
   for k:=1 to n do write (a[i,k],'|');
   writeln
 end;
 maxsum:=a[n,1];
 for i:=2 to n do
 begin
   sum:=0;
   for k:=1 to n-i+1 do inc(sum,a[i+k-1,k]);
   if sum>maxsum then maxsum:=sum
 end;
 for k:=2 to n do
 begin
   sum:=0;
   for i:=1 to n-k+1 do inc(sum,a[i,i+k-1]);
   if sum>maxsum then maxsum:=sum
 end;
 writeln ('Maxsum is ',maxsum);
 readln
end.
capta1n вне форума Ответить с цитированием
Старый 16.03.2009, 21:28   #3
Kolyan876
Новичок
Джуниор
 
Регистрация: 16.03.2009
Сообщений: 1
По умолчанию

Цитата:
maxsum:=a[n,1];
Если в матрице есть отрицательные элементы, то суммы во всех диагоналях могут быть меньше случайного элемента матрицы. Может лучше
maxsum:=-maxint-1?
Kolyan876 вне форума Ответить с цитированием
Старый 17.03.2009, 05:54   #4
Razorishe
Пользователь
 
Аватар для Razorishe
 
Регистрация: 16.03.2009
Сообщений: 34
По умолчанию

Огромное спасибо! Пошел на практику проверю..
Добавляйте отзывы, буду благодарен
Razorishe вне форума Ответить с цитированием
Старый 17.03.2009, 08:52   #5
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

это не случайный элемент матрицы, а левый нижний угол, что так же считаю параллелью к основной диагонали: если все остальные суммы меньше, то этот элемент будет являть максимально суммой
capta1n вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача на матрицу Pascal владимир/к. Помощь студентам 2 09.02.2009 19:09
фортран, ввести квадратную матрицу 4-го порядка ,элементы которой заданы для ввода построчно slepen346 Помощь студентам 0 09.12.2008 18:58
VBA построить квадратную матрицу Марат707 Microsoft Office Word 11 09.12.2008 07:31
Задача на матрицу. Fest Помощь студентам 2 16.12.2007 05:54