Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Задача 2.4.2. Даны несколько населенных пунктов с координатами своего месторасположения.
- # В пункте с номером k установлена радиостанция с радиусом действия r км.
- # Определить сколько населенных пунктов входит в ёё радиус действия включая саму эту деревню.
- import math
- # Введем исходные данные
- ox = '3.4 0.7 2.0 0.4 2.5 2.6 1.7 0.2 4.0 2.5'# координаты населенных пунктов по оси ОХ - УДАЛИТЬ НА САЙТЕ
- #coord_ox = input() #- ДЛЯ ЗАПУСКА НА ПЛАТФОРМЕ
- oy = '6.4 8.3 6.8 6.7 7.4 6.4 8.9 4.7 5.3 7.6'# координаты населенных пунктов по оси ОУ - УДАЛИТЬ НА САЙТЕ
- #coord_oy = input() #- ДЛЯ ЗАПУСКА НА ПЛАТФОРМЕ
- # Конвертируем строки в списки вещественных чисел
- x = [float(i) for i in ox.split()] # сразу создаём список вещественных чисел, коориднаты по оси X
- y = [float(i) for i in oy.split()] # координаты по оси Y, вещественные числа
- #print(coord_oy)
- k = 7 #номер населенного пункта УДАЛИТЬ НА САЙТЕ
- #k = int(input())
- radius = 68 # радиус действия радиостанции
- #radius = float(input())
- #2. Подставляем значения из списков в функцию расчета расстояния между точками.
- # Пытаюсь расчитать значение расстояний между точками.
- for i in x,y:
- ## Функцию пишу внутри цикла для того, чтобы туда подставлять значения из списков, хотя не совсем понимаю для чего?! Галина, поможете?
- def compute_len(x[k], y[k], x[i], y[i]): # должно подставлять значения каждого из элементов списка в формулу расчета расстояния
- len_line = sqrt((x[i] - x[vil]) ** 2 + (y[i] - y[vil]) ** 2)
- return len_line
- # Пробую составить список из значений расстояний между населенными пунктами.
- distance = [compute_len[i] for i in range(len(x))] ## Этот список не выводится, не могу понять как верно составить функцию
- # 3. Написать строки в которых значения нового списка будут сравнены со значением радиуса действия
- # И выведем на экран количество этих значений
- count = 0
- for d in distances:
- if d >= 68:
- count = count +1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement