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

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

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

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

Помогите пожалуйста с квадратной матрицей в Паскале!

sunbrigt

Новые
Регистрация
20 Апр 2010
Сообщения
13
Реакции
0
Баллы
0
Помогите пожалуйста с квадратной матрицей в Паскале!

Помогите пожалуйста.
Даны натуральное число n, целочисленная квадратная матрица порядка n. Получить b1, ... , bn, где bi – это сумма элементов, предшествующих последнему отрицательному элементу i-й строки (если все элементы строки не отрицательны, то принять bi=1)
 
Помогите пожалуйста.
Даны натуральное число n, целочисленная квадратная матрица порядка n. Получить b1, ... , bn, где bi – это сумма элементов, предшествующих последнему отрицательному элементу i-й строки (если все элементы строки не отрицательны, то принять bi=1)
Пожалуйста:
Код:
CONST
 N=10; 
 VAR
 A:Array[1..N,1..N] of INTEGER;
 B:Array[1..N] of INTEGER;
 C:Array[1..N] of BOOLEAN;
 i,j:Integer;
BEGIN
 For i:=1 to N do
  begin
   B[i]:=1;
   C[i]:=false;
  end;
 Randomize;
 For i:=1 to N do
  begin
   For j:=1 to N do
    begin
     A[i,j]:=Random(60)-10;
     Write(A[i,j]:4);
     If A[i,j]<0 then C[i]:=true;
    end;
   WriteLn;
  end;
 WriteLn;
 For i:=1 to N do
  begin
   If C[i] then
    begin
     B[i]:=0;
     j:=1;
     While (A[i,j]>=0) and (j<=N) do
      begin
       B[i]:=B[i]+A[i,j];
       Inc(j);
      end;
    end;
   Write(B[i]:4);
  end;
 WriteLn;
 ReadLn;
END.
 
Назад
Сверху