Mif 8

Задача

Условие взято отсюда

Четырёхугольник [latex]ABCD[/latex] задан на плоскости целочисленными координатами вершин. Определите тип четырёхугольника: квадрат, ромб, прямоугольник, параллелограмм, трапеция, произвольный четырёхугольник. Из характеристик указать наиболее частную.

Тесты

[latex]a_1[/latex]   [latex]a_2[/latex] [latex]b_1[/latex] [latex]b_2[/latex] [latex]c_1[/latex][latex]c_2[/latex] [latex]d_1[/latex] [latex]d_2[/latex]                                                   Ответ
0 0 1 0 1 1 0 1   квадрат
0 -3 2 0 0 3 -2 0 ромб
0 0 4 0 4 1 1 4 прямоугольник
0 0 10 0 12 4 2 4 пaраллелограмм
0 0  2 0  1 1  0 1 трапеция
0 0  0 2  1 1  1 0 трапеция
-4 -5 -15 7 5 8 6 -7 произвольный
 0 0 1 0 10 20  -5 7 произвольный

 

Код

 

Решение

Для начала стоит найти длины всех сторон:

[latex]AB^{2}=((a1-b1)^{2}+(a2-b2)^{2})[/latex]. (аналогично для остальных сторон)

Затем можно найти длины диагоналей четырёхугольника

[latex]AC^{2}=((a1-c1)^{2}+(a2-c2)^{2})[/latex]. (аналогично для [latex]BD[/latex]).

Через условие задаем равность противоположных сторон [latex]AB=CD[/latex] и  [latex]BC=DA[/latex]:

  1. У ромба смежные стороны равны, но если у ромба диагонали равны, то это квадрат;
  2. Если четырёхугольник не является квадратом, но диагонали равны, то это прямоугольник;
  3. В противном случае — параллелограмм.

Если одна из пар противополижных сторон параллельны, то данный четырёхугольник — трапеция. Впротивном случае — произвольный четырёхугольник.

Код на ideone

Mif 17.4

Условие задачи (17.4)

Условие

Принадлежит ли точка [latex](x;y)[/latex] фигуре на рисунке? Пожалуйста повторите в своём отчёте рисунок, выполнив его в формате SVG.

123

Тесты

x y Ответ
4 3 yes
1 4 yes
2 2 no
6 2 no
-1 0 no

Решение

Точки, которые принадлежат ромбу, находятся между линиями, которые создают этот ромб.

Можно заметить, что эти сумма координат этих точек находится в сегменте между [latex]5[/latex] и [latex]11[/latex]:

  •  [latex]5\leq x+y\leq 11[/latex];

Их разность в сегменте  от  [latex]-3[/latex]  до [latex]3[/latex]:

  •   [latex]-3\leq x-y\leq 3[/latex];

Если сумма или разность данных координат больше или меньше заданых чисел, то точка не принадлежит ромбу.

 

Код

Код на IDEONE

А59г

ЗАДАЧА: Даны действительные числа [latex]{x},{y}[/latex]. Определить принадлежит ли точка с координатами [latex]{x},{y}[/latex] заштрихованной части плоскости.

А59гЗаштрихован  ромб с координатами [latex]{A}(1.0),{B}(0.1),{C}(-1.0),{D}(0.-1)[/latex]

27 41 не принадлежит
0.1 -0.2 принадлежит
-2 -3 не принадлежит
    1. Задали значения через scanf;
    2. Вывели на печать проверку принадлежности точки;
    3. Получили ответ принадлежит ли точка ромбу.
      ссылка на программу http://ideone.com/x1p0Dp

     

     

Ю2.9

Задача: Может ли шар с радиусом [latex] r [/latex] пройти через ромбообразное  отверстие с диагоналями [latex]p[/latex] и [latex]q[/latex]?

r p q a b c h Результат Коментарий
5 40 10 20 5 20,6255 4,8483 Не пройдет Пройден
4 20 14 10 7 12,2066 5,7346 Пройдет Пройден
3 6 8 3 4 5 2,4 Не пройдет Пройден
1 4 16 2 8 8,2462 1,9403 Пройдет Пройден

Чтобы решить эту задачу нам нужно найти высоту [latex]h[/latex], проведенную. из вершины прямого угла прямоугольного треугольника, катеты которого равны половинам диагоналей ромба.

Катеты [latex]a=\frac{p}{2}[/latex] и [latex]b=\frac{q}{2}[/latex].

Гипотенуза   [latex]c=\sqrt{a^{2}+b^{2}}[/latex].

Затем по формуле [latex]h=\frac{ab}{c}[/latex] найдем высоту треугольника.

Чтобы шар прошел через ромбообразное отверстие, нужно чтобы [latex]r\leq h[/latex].

Если [latex]r>h[/latex], то шар не пройдет через ромбообразное отверстие.

 

Посмотреть работу программы можно тут.