rom4ik227232245
14.12.2021 23:40

1.В каком случае применяется оператор выбора if? применить оператор выбор
2. Когда предпочтительнее применять оператор выбора switch?
3. Объясните, как работает структура оператора выбора switch.
4. Приведите примеры на повседневной жизни, когда необою,
5. Почему вложенный оператор выбора іf лучше заменить switch?

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
рома1325
10.09.2022 02:47

Задание 1

На первой картинке мы имеем 3 прямые, образующие треугольник. По точкам определим их функции.

Вершины треугольника: (1; 4), (5; -4), (-5; -3).

Функция прямой по двум точкам:

\frac{x - x0}{x1 - x0} = \frac{y - y0}{y1 - y0}

Подставляем точки и получаем три функции:

l1(x) = \frac{x - 5}{1 - 5} = \frac{y + 4}{4 + 4} \Leftrightarrow y = -2x + 6

l2(x) = \frac{x - 5}{-5 - 5} = \frac{y + 4}{-3 + 4} \Leftrightarrow y = -0.1x + 4.5

l3(x) = \frac{x - 1}{-5 - 1} = \frac{y - 4}{-3 - 4} \Leftrightarrow 7x - 7 = 6y - 24 \Leftrightarrow y = (7x + 17) / 6

Точка находится в области, если y > l2(x0) И y < l1(x) И y < l3(x).

На Python это выглядит так. (Выводить функции не надо, это делается автоматически)

def get_line_by_two_points(x0: float, y0: float, x1: float, y1: float):

   def line_y(x: float):

       return (x - x0)/(x1 - x0) * (y1 - y0) + y0

   return line_y

l1 = get_line_by_two_points(1, 4, 5, -4)

l2 = get_line_by_two_points(-5, -3, 5, -4)

l3 = get_line_by_two_points(1, 4, -5, -3)

x = int(input("Enter an X value: "))

y = int(input("Enter a Y value: "))

if y < l1(x) and y > l2(x) and y < l3(x):

   print("Point is in the space!")

else:

   print("Point is NOT in the space!")

Задание 2

Теперь у нас 4 прямые.

Мы имеем трапецию. Две прямые видны сразу: y = 1 и y = 7.

Оставшиеся две найдем по двум точкам автоматически.

Код на Python:

def get_line_by_two_points(x0: float, y0: float, x1: float, y1: float):

   def line_y(x: float):

       return (x - x0)/(x1 - x0) * (y1 - y0) + y0

   return line_y

l1 = get_line_by_two_points(-3, 7, -6, 1)  # Левая наклонная

l2 = get_line_by_two_points(7, 1, 4, 7)  # Правая наклонная

x = int(input("Enter an X value: "))

y = int(input("Enter a Y value: "))

if 1 < y < 7 and y < l1(x) and y < l2(x):

   print("Point is in the space!")

else:

   print("Point is NOT in the space!")

===============================

Ваши оценки и отзывы лучше оценить качество решения.

Если ответ удовлетворил, не забудь выбрать его как "Лучший".

Успехов в учёбе!

0,0(0 оценок)
Ответ:
лолл18
28.03.2023 20:38

Объяснение:

Мы находим функции прямых, ограничивающих область (по точкам).

Эти прямые дают координаты Y точки по её координате X.

Если некая y = f(x) в точке X0 принимает Y0 и это соответствует введенным значениям, то введенная точка лежит на прямой.

Но нам интересны значения в области. Если введенное значение Y больше рассчитанного Y0, то (X; Y) находится выше прямой y = f(x).

Если же меньше рассчитанного, то ниже.

Смотря на рисунок мы определяем, какие прямые у нас имеются, и где должна быть точка, чтобы находиться внутри области: выше или ниже прямых, ограничивающих область (для каждой прямой).

Потом переносим это в виде условия.

Пример на Python:

def get_line_by_two_points(x0: float, y0: float, x1: float, y1: float):

   def line_y(x: float):

       return (x - x0)/(x1 - x0) * (y1 - y0) + y0

   return line_y

l1 = get_line_by_two_points(-3, 7, -6, 1)  # Левая наклонная

l2 = get_line_by_two_points(7, 1, 4, 7)  # Правая наклонная

x_value = int(input("Enter an X value: "))

y_value = int(input("Enter a Y value: "))

if 1 < y_value < 7 and y_value < l1(x_value) and y_value < l2(x_value):

   print("Point is in the space!")

else:

   print("Point is NOT in the space!")

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота