• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

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

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Паскаль

  • Автор темы Автор темы werg
  • Дата начала Дата начала

werg

Ученик
Регистрация
3 Дек 2012
Сообщения
8
Реакции
0
Баллы
0
Паскаль

Дана целочисленная квадратная матрица. Определить сумму элементов матрицы, находящихся после максимального элемента. Если сумма больше числа К, заданного пользователем, то удалить эту строку матрицы.
 
Дана целочисленная квадратная матрица. Определить сумму элементов матрицы, находящихся после максимального элемента. Если сумма больше числа К, заданного пользователем, то удалить эту строку матрицы.
Не моё, но вот:
Код:
Uses CRT;
Const
 MaxX = 10;  MaxY = 10;
Var
 Mass  : array [1..MaxX, 1..MaxY] of integer;
 K,I,J : integer;  CooX, CooY     : byte;
 Sum   : integer;  Max,Buf,MaxYV  : integer;
Begin
 ClrScr;
 TextColor(LightMagenta);
 Randomize;
 For j := 1 to MaxY do Begin
  For i := 1 to MaxX do Begin
   Mass[i,j]:=Random(100)-50;
  End;
 End;
 For j := 1 to MaxY do Begin
  For i := 1 to MaxX do Begin
   Write(Mass[i,j]:3);
   CooX:=1; CooY:=1; Max:=-5000;
   MaxYV:=MaxY;
  End;
  WriteLn;
 End;
 For j:=1 to MaxY do begin
  For i:=1 to MaxX do begin
   If Mass[i,j]>=Max then begin
    Max:=Mass[i,j]; CooX:=i;CooY:=j;
   end;
  end;
 End;
 For j:=1 to MaxY do begin
  For i:=1 to MaxX do begin
   If (((i>CooX) and (j=CooY)) or (j>CooY)) then begin
    Sum:=Sum+Mass[i,j];
   end;
  end;
 End;
 Write('Vvedi K: '); ReadLn(K);
 If Sum>K then begin
  For j:=CooY to MaxY-1 do begin
   For i:=1 to MaxX do begin
    Mass[i,j]:=Mass[i,j+1];
   end;
  End;
  For i:=1 to MaxX do Mass[i,MaxY]:=0;
  MaxYV:=MaxY-1;
 end;
 WriteLn;
 For j:= 1 to MaxYV do begin
  For i:= 1 to MaxX do begin
   Write(Mass[i,j]:4);
  end;
  WriteLn;
 end;
 ReadKey;
 ClrScr;
End.
 
Назад
Сверху