Показать сообщение отдельно
Старый 12.01.2010, 18:33   #8 (permalink)
DDS
Member
 
Регистрация: 15.02.2009
Сообщений: 695
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 523
По умолчанию

Задача 4
Код:
Const n=5;
Var i,j,k:byte;a:array[1..n,1..n]of integer;s:integer;
Begin
  Randomize;
  s:=0;
  For i:=1 to n do
  For j:=1 to n do
  a[i,j]:=random(100)-50;
   For i:=1 to n do
   begin
  For j:=1 to n do
  write(a[i,j]:5);
  writeln;
  end;
  writeln;
  For i:=1 to n do
  For j:=1 to n do
  s:=s+a[i,j];
  k:=n+1;
  If s<0 then
            for i:=1 to n do
            a[i,i]:=0;
  If s>0 then
            for i:=1 to n do
            for j:=1 to n do
            begin
            k:=k-1;
            a[k,j]:=0;
            end;
  If s=0 then writeln('summa=0');
  For i:=1 to n do
   begin
  For j:=1 to n do
  write(a[i,j]:5);
  writeln;
   end;
End.
Возможно я не лучшим образом реализовал заполнение дополнительной диагонали, но ничего лучше не придумал.
DDS вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070