В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
AnnaDor
AnnaDor
06.04.2020 08:24 •  Информатика

Вводится число n. затем n пар чисел, являющихся координатами точек на плоскости (все вводимые числа целые). определить длину ломаной линии, образованной данными точками. пояснение. первое введенное число (4) показывает, сколько пар чисел программа будет ждать на ввод. следующие числа – координаты точек. расстояние на плоскости между точками (0; 0) и (3; 4) равно 5, между точками (3; 4) и (6; 0) также равно 5, а между точками (6; 0) и (12; 8) равно 10. общая длина получившейся ломаной линии 5 + 5 + 10 = 20.

Ответ:
semyonshhuko9
semyonshhuko9
30.09.2020 08:18
# Код на ruby 2.2.3p173
def distance(x1, y1, x2, y2)
    return ((x1 - x2) ** 2.0 + (y1 - y2) ** 2.0) ** 0.5
end

def zadanie(points)
    return 0 if points.size < 2

    s = 0
    for i in 1...points.size
        s += distance(points[i-1][0], points[i-1][1], points[i][0], points[i][1])
    end
    return s
end

# Примеры применения
p zadanie([[1,1]])
p zadanie([[1,1],[2,2]])
p zadanie([[1,1],[2,1],[3,1],[4,1],[5,1],[6,1],[7,1],[8,1],[9,1]])
p zadanie([[0,1],[2,1],[3,2],[4,1],[5,1],[6,1],[7,2],[8,1],[9,1],[7,2],[8,1],[9,1]])
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?