В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Лаймик0
Лаймик0
12.01.2023 14:03 •  Информатика

Как по весовой матрице определить длину пути в графе? ​

Показать ответ
Ответ:
Dan1yar2255
Dan1yar2255
28.11.2022 22:43
Const
  m=10;
  n=6;
var
  a:array[1..m,1..n] of integer;
  i,j,maxr:integer;
  p,maxp:longint;
begin
  Randomize;
  Writeln('Исходный массив');
  maxp:=0;
  for i:=1 to m do
  begin
    p:=1;
    for j:=1 to n do
    begin
      a[i,j]:=Random(99)+1; { интервал [1..99] }
      Write(a[i,j]:3);
      p:=p*a[i,j]
    end;
    if maxp<p then begin maxp:=p; maxr:=i end;
    Writeln
  end;
  for i:=1 to m do
    for j:=1 to n do a[i,j]:=a[maxr,j];
  Writeln('Сформированный массив');
  for i:=1 to m do
  begin
    for j:=1 to n do Write(a[i,j]:3);
    Writeln
  end
end.

Тестовое решение:
Исходный массив
 86 61 76  1 86 64
 93 87 34 66 35 13
 51 39 57  5 71 49
 86 47 26 30 93 80
 58 24 59 57  3 79
 46 81 17 24 11 37
 12 83 56 75 89 16
 50 93 57  1 51 64
 25 35 69 29 46 73
 68 56 68 95 42 62
Сформированный массив
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
0,0(0 оценок)
Ответ:
shchepelevason
shchepelevason
14.04.2021 14:54
Решение на паскаль.
начало решения задач одинаковое, а дальше см. внизу

program xxx;
var b: array [1..6, 1..6] of integer;
 i, j, s : integer;
begin
for i:= 1 to 6 do
for j:=1 to 6 do
 b[i,j]:= random(131)-65;
writeln ('исходная матрица В:');
for i:=1 to 6 do
  begin
   for j:=1 to 6 do
     write (b[i,j]:4);
   writeln
 end;

задание 1.
s:=0;
for i:= 1 to 6  do
  if b[i,3]>0 then s:=s+b[i,3];
writeln ('сумма положительных элементов 3-го столбца', s)
end.

задание 2.
i:=2;
while i<=6 do begin
  for j:= 1 to 6 do
    if b[i,j]<0 then b[i,j]:=0;
  i:=i+2
end;
writeln ('полученная матрица В:');
for i:=1 to 6 do
  begin
   for j:=1 to 6 do
     write (b[i,j]:4);
   writeln
 end
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота