nikitakucherenk
15.07.2020 01:08

с информатикой. даю. Информатичка дала жесткую домашку))


с информатикой. даю. Информатичка дала жесткую домашку))

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
klymukmaks
16.03.2022 06:31
Const
  nn = 50;
var
  a,b,nb:array[1..nn] of integer;
  i,n,j: integer;
begin
  Write('Введите количество элементов в массиве (n<51): ');
  Read(n);
  Writeln('Вводите элементы массива');
  j:=0;
  for i:=1 to n do
  begin
    Read(a[i]);
    if a[i]<0 then begin Inc(j); b[j]:=a[i]; nb[j]:=i end
  end;
  if j>0 then begin
    Write('Отрицательные элементы: ');
    for i:=1 to j do Write(b[i],' ');
    Writeln;
    Write('Индексы отрицательных элементов в массиве:');
    for i:=1 to j do Write(nb[i]:3);
    Writeln
  end
end.

Результаты тестирования:
Введите количество элементов в массиве (n<51): 9
Вводите элементы массива
3 5 -2 3 -2 0 -6 -8 1
Отрицательные элементы: -2 -2 -6 -8
Индексы отрицательных элементов в массиве:  3  5  7  8

Введите количество элементов в массиве (n<51): 8
Вводите элементы массива
-1 -2 -3 -4 0 -1 2 3
Отрицательные элементы: -1 -2 -3 -4 -1
Индексы отрицательных элементов в массиве: 1  2  3  4  6
0,0(0 оценок)
Ответ:
sir228qwerty
02.12.2022 16:52
Function Otr(Ax, Ay, Bx, By: real): real;
begin
  Otr := sqrt(sqr(Ax - Bx) + sqr(Ay - By))
end;

function Perim(Ax, Ay, Bx, By, Cx, Cy: real): real;
begin
  Perim := Otr(Ax, Ay, Bx, By) + Otr(Bx, By, Cx, Cy) + Otr(aX, aY, Cx, Cy);
end;

function Area(Ax, Ay, Bx, By, Cx, Cy: real): real;
var
  pp: real;
begin
  pp := Perim(Ax, Ay, Bx, By, Cx, Cy) / 2;
  Area := sqrt(pp * (pp - Otr(Ax, Ay, Bx, By)) * (pp - Otr(Bx, By, Cx, Cy)) *
    (pp - Otr(Ax, Ay, Cx, Cy)))
end;

procedure Dist(Px, Py, Ax, Ay, Bx, By: real; var D: real);
begin
  D := 2 * Area(Px, Py, Ax, Ay, Bx, By) / Otr(Ax, Ay, Bx, By)
end;

var
  Px, Py, Ax, Ay, Bx, By, Cx, Cy: real;
  d: real;

begin
  writeln('Вводите координаты точкек парами чисел: ');
  write('P-> ');
  readln(Px, Py);
  write('A-> ');
  readln(Ax, Ay);
  write('B-> ');
  readln(Bx, By);
  write('C-> ');
  readln(Cx, Cy);
  writeln;
  Dist(Px, Py, Ax, Ay, Bx, By, d);
  writeln('Расстояние от Р до АВ равно ', d);
  Dist(Px, Py, Cx, Cy, Bx, By, d);
  writeln('Расстояние от Р до ВC равно ', d);
  Dist(Px, Py, Ax, Ay, Cx, Cy, d);
  writeln('Расстояние от Р до АC равно ', d)
end.

Тестовое решение:
Вводите координаты точкек парами чисел:
P-> -3 6
A-> 5 8
B-> 9 -4
C-> 8 -2.5

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