artemkatopchik
04.06.2020 06:44

№ 3. таблица стоимости перевозок устроена следующим образом: числа, стоящие на пересечениях строк и столбцов таблиц, обозначают стоимость проезда между соответствующими соседними станциями. если пересечение строки и столбца пусто, то станции не являются соседними. найдите путь, при котором стоимость проезда из а в е будет минимальной. какова эта минимальная стоимость? запишите её в ответ. стоимость проезда по маршруту складывается из стоимостей проезда между соответствующими соседними станциями. (постройте графическую модель, иллюстрирующую стоимость перевозок)

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
kadnikovaliza
25.09.2022 13:19

напутано было со скобками(Begin - end) и убрал два цикла

program z_2;

var

 x:array[1..100] of integer;

 y:array[1..100] of integer;

 z:real;

 i,n:integer;

 s1,s2:integer;

 procedure sums(var s1,s2:integer);

 begin

   s1:=0;

   write ('n=');

   readln(n);

   for i:=1 to n do begin

     write('x[',i,']=');

     readln(x[i]);

     if x[i]>0 then s1:=s1+x[i];

   end;

   s2:=0;

   for i:=1 to n do begin

     write('y[',i,']=');

     readln(y[i]);

    if y[i]<0 then s2:=s2+y[i];

   end;

 end;

begin

 sums(s1,s2);

 z:=(s1+s2)/2;

 writeln('z=',z:4:4);

end.

(*2 вариант немного модифицированный*)

program z_2;

const

 n=15;

 m=20;

var

 x:array[0..n-1] of integer;

 y:array[0..m-1] of integer;

 z:real;

 i, s1, s2, a,b :integer;

 function sums(s : array of integer; k, p :integer): integer;

 begin

   sums := 0;

   for i:=0 to k-1 do

     if p*s[i]>0 then sums:=sums + s[i];

 end;

begin

 for i:=0 to n-1 do begin

   write('x[',i+1,']=');

   readln(x[i]);

 end;

 for i:=0 to m-1 do begin

   write('y[',i+1,']=');

   readln(y[i]);

 end;

 z:=(sums(x, n, 1) + sums(y, m, -1))/2;

 writeln('z=',z:4:4);

end.

0,0(0 оценок)
Ответ:
retrovaweforyou
22.07.2021 03:52

Объяснение:

# подключаем модуль, чтобы в ручную не вводить матрицу  

from random import randint

# вводим размерность матрицы

n=int(input('Введите n: '))

# заполняем матрицу случайными числами в диапазоне (-20,20)

a=[[randint(-20,20) for j in range(n)] for i in range(n)]  

# печатаем матрицу построчно, чтобы было понятно и красиво

for i in a: print(i)

# обнуляем счётчик, который будет считать количество элементов

s=0

# запускаем цикл  

for i in range (n):

# проверяем элемент главной диагонали матрицы.

   if a[i][i]>0:

# если он положительный увеличиваем счётчик на количество элементов в строке матрицы

       s+=n

# выводим количество подсчитанных элементов

print(s)

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота