Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
1 / 2 / 0
Регистрация: 04.09.2013
Сообщений: 87
1

Развлечения с измерителем

19.09.2013, 09:19. Показов 1941. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дима обнаружил у папы на столе специальный чертежный прибор, похожий на циркуль-измеритель. Измеритель отличается от обычного циркуля тем, что в обеих его ножках находятся иголки (у обычного циркуля в одной ножке находится иголка, а в другой – грифель).

Кроме измерителя Дима нашел на столе клетчатый лист бумаги, в углах некоторых клеток которого были нарисованы точки. Так как измеритель служит для измерения расстояний, то Дима решил измерить все попарные расстояния между всеми точками на листе бумаги.

Ваша задача - написать программу, которая по координатам точек определит, сколько различных расстояний встречается среди расстояний, которые измерил Дима.

Входные данные

Первая строка входного файла INPUT.TXT содержит число n – количество точек (2 <= n <= 50). Следующие n строк содержат по два целых числа – координаты точек. Координаты не превышают 104 по абсолютной величине.

Выходные данные

На первой строке выходного файла OUTPUT.TXT выведите k – количество различных расстояний, которые измерил Дима. Следующие k строк должны содержать по одному вещественному числу – сами расстояния. Расстояния должны быть выведены в возрастающем порядке. Каждое число должно быть выведено с точностью не менее чем 10-9.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.09.2013, 09:19
Ответы с готовыми решениями:

Нужна подсказка с измерителем сетевого напряжения, пожалуйста
Очень нужна схема или литература по этому вопросу!!! пропаду без вас, форумчане...

Развлечения с мышкой
Здравствуйте уважаемые знатоки!Можете ли подсказать как с мышки считывать нажатие 4 и 5 кнопки(те...

Развлечения с массивом через указатель
Инициализация указателей. Объявите массив, состоящий из 8 элементов типа short int. Объявите...

Тематика: Игры vs Отдых+развлечения
Как-то слышал, что сайты по развлечениям приносят больше дохода, чем игровая тематика, у меня же: ...

Сергей со своей подругой устраивают развлечения
Сергей со своей подругой устраивают развлечения для детей и взрослых на различных тематических...

2
1 / 1 / 0
Регистрация: 03.09.2021
Сообщений: 5
16.11.2021, 19:43 2
Приведу пример решения на c++.Может кому-то понадобится) Админ, не бань.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include<iostream>
#include<set>
#include<vector>
 
#include<algorithm>
using namespace std;
struct Point
{
    int x;
    int y;
};
double func(double x0, double y0, double x1, double y1) {
    return sqrt((x1 - x0) * (x1 - x0) + (y1 - y0) * (y1 - y0));
 
 
}
int main() {
    int n;
    cin >> n;
    vector<Point>arr(n+5);
    set<double>res;
    for (int i = 0; i < n; i++) {
 
        cin >> arr[i].x>>arr[i].y;
    }
            
 
    for (int i =0; i < n-1; i++) {
        for (int j = i+1; j < n; j++)
        {
        int x0 = arr[i].x;
        int y0 = arr[i].y;
        int x1 = arr[j].x;
        int y1 = arr[j].y;
 
 
        res.insert(func(x0,y0,x1,y1));
        }
        
 
 
 
 
    }
    
    
    cout << res.size() << endl;
    cout.precision(20);
    for (auto i : res)
        cout << fixed<<i << endl;
}
1
Модератор
9871 / 5239 / 3306
Регистрация: 17.08.2012
Сообщений: 16,007
16.11.2021, 23:40 3
Tim Laptev, нарушений правил нет, спасибо за приведённое решение. Тем не менее, старайтесь в тематических разделах данного форума не публиковать решения на языке, отличном от языка, указанном в названии раздела, особенно в темах, которым много лет. Представьте: кто-то, ещё не изрядно знающий программирование, в поиске нашёл ответ на свой вопрос, и тема паскалевская, как и планировалось. Короче, ура! Открывает тему - а там Ваш совершенно не нужный ему ответ на C++. Обидно, правда?

Замечу, что некропостинг здесь даже поощряется, если он полезен. Информация к размышлению: темы на данном форуме, не противоречащие правилам, в отличие от других форумов, не удаляются и не закрываются никогда. Это сделано для того, чтобы можно было найти ответ на вопрос, не задавая вопроса.

К Вашему решению есть замечание. Решение Ваше алгоритмически верное, но... Сравнивать вещественные числа в машинном формате некорректно (у Вас это делается в неявной форме). Если совсем правильно, то, например, можно так: нужно вычислять расстояния не в виде вещественных чисел в машинном формате, а в виде смешанных дробей (в виде записей, к примеру), с последующим (или текущим) сокращением и сравнением указанных дробей. Но, в принципе, для сдачи задания и так пойдёт. Для заданного диапазона координат я не нашёл координат, которые реально различаются, но равны в машинной форме. Однако, я не слишком подробно искал, поэтому не могу утверждать, что таких координат нет.

И ещё. Рекомендую Вам ознакомиться с правилами форума (ссылка есть на любой странице форума).
0
16.11.2021, 23:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2021, 23:40
Помогаю со студенческими работами здесь

Выбор ноутбука для linux до 15 т. р. + развлечения
Доброго времени суток! Прошу помочь выбрать ноутбук до 15 т.р. для работой с Linux (в основном...

Посоветуйте ноутбук для работы и развлечения
Доброго времени суток. Хочу приобрести ноутбук который сможет заменить стационарный ПК. Применять...

Программирование ради развлечения. Битвы непрактичных гуру
Я тут хотел бы потрепаться не про олимпиады, и даже не про сайты – задачники. Мне интересны (для...

Является ли отдых и развлечения товаром высшей категории для студента?
студенты расходуют 30 % своего бюджета на отдых и развлечения когда доход его равен 1000р и 20%...

Является ли отдых и развлечения товарами низшей категории Обосновать, рассчитав точечную и дуговую эластичность
1) Студент расходует 30 процентов от дохода в 1000 рублей на отдых и развлечения и расходует 20...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru