/ y1. Однако так


/ y1. Однако так поступать нельзя, так как x1 или y1 могут оказаться равными 0. Вместо этого мы проверяем равенство x1 * y2 = x2 * y1. Мы приведем пример функции на Pascal'е для решения этой задачи, введя, для удобства записи, тип point. type point = record x, y: integer; end; function isStraightLine (A, B, C: point) : boolean; begin isStraightLine := ((B.x - A.x) * (C.y - A.y) -C.x - A.x) * (B.y - A.y) = 0); end; Проблема, не имеющая прямого отношения к программированию: если мы возьмем векторы AB и BC, то получится ли другая функция, отвечающая на тот же вопрос? Оказывается, что выражение, которое вычислялось в предыдущем упражнении, позволяет ответить еще на один важный (как будет ясно позже) вопрос. Объяснение этого факта мы оставим любителям математики. Пример #2. Даны 3 точки A, B и C, не лежащие на одной прямой. Определить, является обход A®B®C обходом по часовой стрелке или против часовой стрелки. Решение function isClockWise (A, B,
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Смотри самые лучшие лайфхаки на нашем сайте.
Hosted by uCoz