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

Запишите дополнительный кот числа - 83​

Показать ответ
Ответ:
CoolGirl78
CoolGirl78
15.06.2022 22:23
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк в матрице:');
  var m:=ReadInteger('Количество столбцов в матрице:');
  Writeln('*** Исходная матрица [',n,',',m,'] ***');
  var a:=MatrRandom(n,m,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var s:=a.Row(0).Sum+a.Row(n-1).Sum;
  s+=a.Col(0).Skip(1).Take(n-2).Sum+a.Col(m-1).Skip(1).Take(n-2).Sum;
  Writeln('Сумма по периметру ',s)
end.

Пример
Количество строк в матрице: 4
Количество столбцов в матрице: 5
*** Исходная матрица [4,5] ***
  87 -67  11  59  46
 -13  86 -74  20 -98
 -74  24   6  51  74
  26 -93  36  40  66

Сумма по периметру 100
0,0(0 оценок)
Ответ:
Polyak56
Polyak56
06.08.2022 02:20
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!

type
  Point=(real,real);

function ReadPoint(n:integer):Point;
begin
  var a,b:real;
  Write('Координаты точки ',n,': '); Read(a,b);
  Result:=(a,b)
end;

function GetPoints(n:integer):array of Point;
begin
  Result:=new Point[n];
  for var i:=0 to n-1 do Result[i]:=ReadPoint(i+1)
end;

function Lsqr(a,b:Point):=sqr(b[0]-a[0])+sqr(b[1]-a[1]);

function Diags(a:array of Point; n:integer):array of real;
begin
  Result:=new real[n*(n-3) div 2];
  var k:=0;
  for var i:=0 to n-3 do
    for var j:=i+2 to min(n+i-2,n-1) do begin
      Result[k]:=Lsqr(a[i],a[j]);
      k+=1
      end;
end;

begin
  var n:=ReadInteger('Количество вершин:');
  if n>3 then begin
    var a:=GetPoints(n);
    Writeln('Длина наибольшей диагонали равна ',sqrt(Diags(a,n).Max):0:5)
    end
  else Writeln('Диагонали отсутствуют')
end.

Пример
Количество вершин: 5
Координаты точки 1: -3 2.5
Координаты точки 2: 3 5.2
Координаты точки 3: 6.1 1
Координаты точки 4: 2 -7.3
Координаты точки 5: -5 -7
Длина наибольшей диагонали равна 14.58904
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота