Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 

Длина отрезка

(Время: 1 сек. Память: 16 Мб Сложность: 12%)

Координаты точек нам известны: (X1, Y1) и (X2, Y2). Таким образом, для решения данной задачи достаточно использовать формулу для вычисления расстояния между точками на плоскости:

Формула, вычисляющая расстояние между точками на плоскости

Несмотря на простоту этой задачи у неопытных программистов могут возникнуть сложности с неверным выбором типа данных. Хоть координаты у нас и целые, все же лучше использовать вещественные типы, причем желательно как можно большие, позволяющие хранить как можно большее количество значащих цифр. Действительно, расстояние между точками может иметь до 4х значащих цифр в целой части, а поскольку нам нужна точность до 10-5, то в сумме возникает необходимость использования типа, способного хранить до 10 значащих цифр (+1 для исключения возможных погрешностей в процессе вычислений). Для этого вполне подойдут типы extended (в паскале) и double (в Си), лучше будет, если для всех переменных использовать один тип. Для любителей языка Си заметим, что при неверном названии переменных и подключении библиотеки math.h могут возникать ошибка компиляции, т.к. функция y1 в этой библиотеке уже существует и нельзя описать переменную с таким же именем. Заметим, что в Borland C++ 3.1 использование переменной y1 совместо с math.h возможно, а в Visual C++ 7.0 - нет.

[Обсуждение] [Все попытки] [Задача]


Красноярский краевой Дворец пионеров, (c)2006 - 2024, ИНН 246305493507, E-mail: admin@acmp.ru