М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
hamster321123
hamster321123
02.03.2020 21:57 •  Информатика

Составить программу для вычисления площади треугольника с координатами вершин (x1,,,y3), используя формулу для вычисления расстояния между двумя точками на плоскости. площадь вычисляется по формуле герона

👇
Ответ:
RakoT1511
RakoT1511
02.03.2020
// PascalABC.NET 3.0, сборка 1144 от 16.01.2016
type
  Point=record
  x,y:real
  end;

function GetPoint(c:char):Point;
begin
  Writeln('Введите координаты точки ',c,':');
  Read(Result.x,Result.y)
end;

function Line(A,B:Point):real;
begin
  Result:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y))
end;

function SqTriangle(pA,pB,pC:Point):real;
begin
  var a:=Line(pB,pC);
  var b:=Line(pA,pC);
  var c:=Line(pA,pB);
  if (a+b>c) and (a+c>b) and (b+c>a) then begin
    var p:=(a+b+c)/2;
    Result:=sqrt(p*(p-a)*(p-b)*(p-c))
    end
  else Result:=0
end;

begin
  var A:=GetPoint('A');
  var B:=GetPoint('B');
  var C:=GetPoint('C');
  Writeln('Площадь треугольника равна ',SqTriangle(A,B,C))
end.

Тестовое решение:
Введите координаты точки A:
-5 3.18
Введите координаты точки B:
1.45 6.2
Введите координаты точки C:
6 -5.93
Площадь треугольника равна 45.98975
4,4(42 оценок)
Открыть все ответы
Ответ:
gay2002
gay2002
02.03.2020

program n_2;

var i: integer;

   a: array[1..10] of integer;

begin

 randomize;

 for i:=1 to 10 do

   a[i]:=random(100);

 for i:=1 to 10 do

   write(a[i],' ');

end.

Вычисление суммы элементов массива

program  n_3;

 var s, i: integer;

     a: array[1..10] of integer;

begin  

 s:=0;

 randomize;

 for i:=1 to 10 do a[i]:=random(100);

 for i:=1 to 10 do write (a[i],' ');

 for i:=1 to 10 do s:=s+a[i];

 writeln('s=', s)

end.

Вычисление суммы элементов массива

[Используем операторные скобки и всё (ввод, вывод, обработку) делаем в одном цикле]

program  n_3_1;

 var s, i: integer;

     a: array[1..10] of integer;

begin  

 s:=0;

 randomize;

 for i:=1 to 10 do

    begin  

       a[i]:=random(100);

       write(a[i],' ');

       s:=s+a[i]

    end;

 writeln('s=', s)

end.

Программа поиска наибольшего элемента в массиве

program  n_4;

 var i, imax: integer;  

     a: array[1..10] of integer;

begin  

 randomize;

 for i:=1 to 10 do a[i]:=random(100);

 for i:=1 to 10 do write(a[i],' ');

 imax:=1;

 for i:=2 to 10 do

   if a[i]>a[imax] then

      imax:=i;

 write('Наибольший элемент   a[', imax, ']=', a[imax])

end.

Поиск элемента, равного 50

program  n_5;

var   n, i: integer;  

     a: array[1..10] of integer;

begin  

 randomize;

 for i:=1 to 10 do a[i]:=random(100);

 for i:=1 to 10 do write(a[i],' ');

 n:=0;

 for i:=1 to 10 do

   if a[i]=50 then

      n:=i;

 if n=0 then

    write('Нет')

 else

    write(n)

end.

Поиск элемента, равного 50

program  n_5_1;

 var n, i: integer;  

     a: array[1..10] of integer;

begin  

 randomize;

 for i:=1 to 10 do a[i]:=random(100);

 for i:=1 to 10 do write(a[i],' ');

 i:=0;

 repeat

   i:=i+1;

 until (a[i]=50) or (i=10);

 if a[i]=50 then

   write(i)  

 else  

   write('Нет')

end.

Для подсчета вводится переменная, значение которой увеличивается на единицу каждый раз, когда найден нужный элемент.

program  kolich;

var   k, i: integer;  

     a: array[1..10] of integer;

begin  

 randomize;

 for i:=1 to 10 do a[i]:=random(100);

 for i:=1 to 10 do write (a[i],` `);

 k:=0;

 for i:=1 to 10 do

   if a[i]>50 then

      k:=k+1;

 write('k=', k)

end.

Сумма значений элементов, удовлетворяющих условию

program  sum ;

var   s, i: integer;  

     a: array[1..10] of integer;

begin  

 randomize;

 for i:=1 to 10 do

   a[i]:=random(100);

 for i:=1 to 10 do

   write (a[i],` `);

 s:=0;

 for i:=1 to 10 do

   if (a[i]>10) and (a[i]<30) then

     s:=s+a[i];

 write('s=', s)

end.

Сортировка массива

program sort;

var   n, i, j, x, imax: integer;

     a: array [1..10] of integer;

begin

 for i:=1 to 10 do read (a[i]);

 for i:=1 to 10 do write (a[i], ' ');

 for i:=1 to 9 do

 begin

   imax:=i;

   for j:=i+1 to 10 do

     if a[j]>a[imax] then

       imax:=j;

   x:=a[i];

   a[i]:=a[imax];

   a[imax]:=x

 end;

 for i:=1 to 10 do

   write(a[i], ' ')

end.

Возведение числа в любую степень.

program calc_stepen;

var

 a, b, h, i: integer;

 c: real;

begin

 b := 1;

 readln( a, h);

 for i := 1 to abs(h) do

   b := b * a;

 if h < 0 then

   c := 1 / b

 else

   c := b;

 writeln( c:3:5 );

end.

Определение гласных и согласных букв:

program alfabet;

var

 s: char;

begin

 read(s);

 case s of  

   'а','е','ё','и','о','у','ы','э','ю','я': writeln('гласные');

   'б','в','г','д','ж','з','й','к','л','м','н','п','р','с','т','ф','х','ц','ч','ш','щ': writeln('согласные');

   

 else

   writeln('знаки');

 end;

end.

Объяснение:

4,7(85 оценок)
Ответ:
aleks1721
aleks1721
02.03.2020
Пешеходу запрещается: 1. двигаться по краю проезжей части дороги при наличии тротуара, пешеходной или  велосипедной дорожки, обочины, по которым возможно движение пешеходов.2. задерживаться и останавливаться на проезжей части дороги, в том числе на линии  горизонтальной дорожной разметки, разделяющей встречные и попутные потоки  транспортных средств, за исключением остановки на островках безопасности.3. переходить проезжую часть вне подземного, надземного, наземного пешеходных  переходов на участке дороги: - с разделительной зоной, разделительной полосой; - с общим числом полос движения шесть и более; - где установлены дорожные ограждения.4. выходить на проезжую часть дороги из-за стоящего транспортного средства или  иного объекта, ограничивающего обзорность дороги, не убедившись в отсутствии  приближающихся транспортных средств.
4,4(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ