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

Катя нарисовала на клетчатой бумаге прямоугольник по линиям сетки. После этого она подсчитала количество узлов сетки, оказавшихся строго внутри прямоугольника и количество единичных отрезков сетки строго внутри прямоугольника и сообщила эти два числа Маше. Напишите программу, которая Маше определить длины сторон прямоугольника.
Входные данные
Во входном файле INPUT.TXT записаны два целых неотрицательных числа K и L – количество узлов и единичных отрезков сетки соответственно. Оба числа не превосходят 109.
Выходные данные
В выходной файл OUTPUT.TXT выведите два натуральных числа – длины сторон прямоугольника в любом порядке. Если ответов несколько, выведите любой из них. Гарантируется, что ответ всегда существует.

Примеры

INPUT.TXT
OUTPUT.TXT
Пояснение
1
2 7
2 3

2
1 4
2 2

Система оценки
Решения, работающие только для K,L ≤ 103, будут оцениваться в
Решения, работающие только для K,L ≤ 106, будут оцениваться в

Показать ответ
Ответ:
killbestrong
killbestrong
06.11.2022 04:10
// 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
0,0(0 оценок)
Ответ:
BC122
BC122
13.03.2023 22:23
#include <iostream>
#include <ctime>
using namespace std;
int main ()
{
setlocale (0,"russian");
srand (time(NULL));
unsigned short N,a=0,b=0;
cout << "Кол-во элементов массива: ";
cin >> N;
short *array=new short [N];
cout << "Случайный массив: ";
for (unsigned short i=0;i<N;i++)
{
array[i]=rand()%201-100;
cout << array[i] << ' ';
if (array[i]>=0) a++;
else b++;
}
cout << endl;
cout << "Кол-во положительных элементов: " << a;
cout << endl << "Отрицательных: " << b << endl;
system ("PAUSE");
return 0;
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота