• Даны два прямоугольника. Первый прямоугольник задан координатами левой нижней вершины (0; 0) и правой верхней – (W; H) (W > 0 и H > 0) в прямоугольной системе координат, а стороны этого прямоугольника параллельны осям координат. Второй прямоугольник полностью располагается внутри первого и имеет ширину RW и высоту RH, а его стороны также параллельны осям координат. Определите координаты верхней левой и нижней правой вершин второго прямоугольника, если точки пересечения диагоналей обоих прямоугольников совпадают.
    Объясните свой ответ

Ответы 4

  • Спасибо
    • Автор:

      adele
    • 6 лет назад
    • 0
  • Оу.... кому-то сильно приглянулись интерполированные строки? ))
  • Удобно)
  • // PascalABC.NET 3.4.2, сборка 1785 от 06.09.2018

    begin

     var (w, h) := ReadInteger2('w,h->'); // точка (w;h)

     var (ox, oy) := (w / 2, h / 2); // находим координаты цента (0;0) и (w;h)

     (w, h) := ReadInteger2('rw,rh->'); // ввод RW и RH

     Println($'Координаты левой верхней вершины ({ox+h/2};{oy-w/2})'); // - половина высоты прибавляется и половина ширины вычитается

     Println($'Координаты правой нижней вершины ({ox-h/2};{oy+w/2})'); // - половина ширины прибавляется и половина высоты вычитается

    end.

    Если моя математика не подводит, то должно быть верно.

    answer img
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years