Помогите написать задачу)

Ответить
Sulfur26
Сообщения: 2
Зарегистрирован: 14 мар 2014, 17:51

14 мар 2014, 17:52

Дана матрица MxM. Посчитать сумму отрицательных элементов, находящихся на диагоналях квадратной матрицы. Заранее спасибо
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

19 мар 2014, 11:29

На диагонали находятся элементы А[i,i] и A[i, M-i] для всех i от 0 до М-1. Отрицательные - это которые меньше нуля.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Аватара пользователя
Oleg_Rus
Сообщения: 330
Зарегистрирован: 16 окт 2006, 09:56
Откуда: г.Улан-Удэ, респ.Бурятия, Российская Федерация
Контактная информация:

20 мар 2014, 13:36

Код: Выделить всё

const k = 100;
type mas = array [1..k,1..k] of integer;
var a: mas;
    m: integer;

procedure inputArray;
var i, j: integer;
begin
  readln(m);
  for i:=1 to m do
  for j:=1 to m do
  read(a[i,j]);
end;

procedure sumMainDiag;
var i, j, sum: integer;
begin
  sum:= 0;
  for i:=1 to m do sum:= sum + a[i, i];
  writeln(sum);
end;

begin
  inputArray;
  sumMainDiag;
  readln;
end.
 
над оптимизацией не парился, думаю, вам и так сойдет =)
e-mail: garmayev@yandex.ru
---------------------------------------------------------------------------
<a href="http://nick-name.ru/sertificates/711965/"><img src="http://nick-name.ru/img.php?nick=Garmay ... =2&text=t5" alt="Никнейм Garmayev зарегистрирован!" /></a>
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

20 мар 2014, 16:09

Oleg_Rus, вы веселый - заставить человека вводить от руки 10 тысяч значений :)
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить