Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
1 / 1 / 0
Регистрация: 07.04.2020
Сообщений: 54

Дано множество A из N точек. Найти точку, наиболее близкую к началу координат

13.11.2020, 14:02. Показов 4618. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано множество A из N точек (точки заданы своими координатами x, y). Среди всех
точек этого множества, лежащих в первой или третьей четверти, найти точку, наиболее
близкую к началу координат. Если таких точек нет, то вывести точку с нулевыми
координатами.

Не могу понять как искать в 1й и 3й четверти. Буду признателен за помощь

Добавлено через 12 секунд
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
#include<iostream>
#include<cstdlib>
#include<math.h>
using namespace std;
int main() {
    int n, i;
    setlocale(LC_ALL, "ru");
    cin >> n;
    double a[101];
    double z = 0, zmin = 0, x = 0, y = 0;
    for (i = 1;i <= n;i++) {
        if (i % 2 != 0) {
            cout << "введите x" << endl;
            cin >> a[i];
        }
        else {
            cout << "введите y" << endl;
            cin >> a[i];
        }
    }
    for (i = 1;i <= n;i++) {
        if ((a[i] < 0) && (a[i + 1] > 0)) {
            z = sqrt(pow(a[i], 2) + pow(a[i + 1], 2));
            if (z < zmin) {
                zmin = z;
                x = a[i];
                y = a[i + 1];
            }
        }
    }
    cout << x << "," << y << endl;
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.11.2020, 14:02
Ответы с готовыми решениями:

Среди всех точек, лежащих в первой или третьей четверти, найти точку, наиболее близкую к началу координат...
Дано множество A из N точек (точки заданы своими координатами х, у). Среди всех точек этого множества, лежащих в первой или третьей...

Найти точку среди точек данного множества, лежащих в первой четверти, наиболее близкую к началу координат
Дано множество A из N точек на плоскости. Найти точку (вывести её номер и значение) среди всех точек этого множества, лежащих в первой...

Найти точку среди точек данного множества, лежащих в первой четверти, наиболее близкую к началу координат
Дано множество A из N точек на плоскости. Найти точку (вывести её номер и значение) среди всех точек этого множества, лежащих в первой...

30
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
13.11.2020, 16:49
Студворк — интернет-сервис помощи студентам
Denissia, тут какой есть вопрос - если точки находятся на одинаковом расстоянии, выведет первую. то есть я не знаю насколько это согласуется с условием
Цитата Сообщение от Denissia Посмотреть сообщение
Если таких точек нет, то вывести точку с нулевыми
координатами.
то есть что значит таких точек нет ? есть несколько точек на одинаковом расстоянии ?

Добавлено через 3 минуты
Цитата Сообщение от zayats80888 Посмотреть сообщение
Чего выкладывать то?
Цитата Сообщение от zayats80888 Посмотреть сообщение
std::sqrt
так я и не предлагал находить корень

что касается одной функции hypot, считается что три арифметические операции лучше одной функции ?
0
13.11.2020, 16:54

Не по теме:

Цитата Сообщение от Yetty Посмотреть сообщение
что касается одной функции hypot, считается что три арифметические операции лучше одной функции ?
А что там внутри функции?

0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
13.11.2020, 16:57
Цитата Сообщение от zayats80888 Посмотреть сообщение
А что там внутри функции?
я понимаю к чему Вы клоните - скорее всего там извлечение корня. но Вы уверены что три операции будут работать быстрее ?
0
1 / 1 / 0
Регистрация: 07.04.2020
Сообщений: 54
13.11.2020, 17:08  [ТС]
Всех благодарю за помощь
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
13.11.2020, 17:16
zayats80888, ради интереса посмотрел что пишут в интернете. при достаточно больших значениях x при умножении x*x возможно переполнение типа (любого типа), при применении hypot этого недостатка нет.
0
13.11.2020, 17:27

Не по теме:

Цитата Сообщение от Yetty Посмотреть сообщение
я понимаю к чему Вы клоните - скорее всего там извлечение корня.
Я к этому не клоню. Что там внутри, зависит от компилятора.
Цитата Сообщение от Yetty Посмотреть сообщение
возможно переполнение типа (любого типа), при применении hypot этого недостатка нет
Поэтому в некоторых реализациях она работает даже медленнее, чем извлечение корня.

0
13.11.2020, 18:11

Не по теме:

Цитата Сообщение от zayats80888 Посмотреть сообщение
Что там внутри, зависит от компилятора
если зависит от компилятора, к чему Вы это спросили
Цитата Сообщение от zayats80888 Посмотреть сообщение
А что там внутри функции?

0
13.11.2020, 18:30

Не по теме:

Цитата Сообщение от Yetty Посмотреть сообщение
к чему Вы это спросили
А Вы к чему спросили?
Цитата Сообщение от Yetty Посмотреть сообщение
что касается одной функции hypot, считается что три арифметические операции лучше одной функции ?

0
13.11.2020, 18:52

Не по теме:

Цитата Сообщение от zayats80888 Посмотреть сообщение
А Вы к чему спросили?
задаём вопрос на вопрос ? в отличии от Вас отвечаю на вопрос:

в теме Вы предложили не использовать hypot. я поинтересовался чем лучше Ваш способ. насчёт больших чисел уже выяснил, что hypot предпочтительнее. поэтому и спросил чем лучше, может есть какие-то преимущества у предложенного Вами способа (прямой вопрос работает ли вариант x*x + y*y быстрее Вы скромно проигнорили)

0
13.11.2020, 19:11

Не по теме:

Цитата Сообщение от Yetty Посмотреть сообщение
прямой вопрос работает ли вариант x*x + y*y быстрее Вы скромно проигнорили
Возможно это не так, но тон вашего вопроса мне показался провокационным. К тому же вы не уточнили, что значит "лучше" в вашем вопросе. По поводу быстрее, то я тесты не проводил, но если посмотреть код некоторых реализаций hypot, то да, думаю быстрее. Что касается трёх арифметических операций, то скалярное произведение легко векторизируется компилятором (если вы не под условный "Электроника85" собираете), или же можно явно использовать интринсики для векторных инструкций. Что касается больших чисел, то и тут не всё однозначно, можете посмотреть это, например. И последнее, в рамках учебной задачи это пустая дискуссия, имхо.

0
13.11.2020, 19:40

Не по теме:

Цитата Сообщение от zayats80888 Посмотреть сообщение
По поводу быстрее, то я тесты не проводил
то есть плюсы Вашего способа привести не можете, правильно я Вас понял ? тогда мне непонятен категорический тон поста:
Цитата Сообщение от zayats80888 Посмотреть сообщение
для решения задачи не нужны ни std::hypot...
после которого у меня сложилось впечатление что я совершил какую-то ошибку, предложив применить функцию hypot (точнее заменить sqrt(x*x+y*y) на hypot) которая как раз специально разработана для нахождения расстояний

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.11.2020, 19:40

Среди точек множества, лежащих в первой или третьей четверти, найти точку, наиболее близкую к началу координат
Дано множество A из N точек (точки заданы своими координатами x, y). Среди всех точек этого множества, лежащих в первой или третьей ...

Найти точку среди всех точек этого множества, лежащих в первой четверти, наиболее близкую к началу координат
помогите решить задачу если можно то скоментариями зарание спасибо. Дано множество A из N точек на плоскости. Найти точку (вывести её...

На плоскости заданы координатами N точек. Определить наиболее близкую точку к началу координат
На плоскости заданы координатами N точек. Определить наиболее близкую точку к началу координат. (Составить функцию вычисления расстояния от...

Среди точек массива, лежащих в некоторой четверти, найти точку, наиболее близкую/удаленную от начала координат
Дан массив из N точек. Среди всех точек этого массива, лежащих в первой1|второй2|третьей3|четвертой4 четверти, найти точку, наиболее...

Найти подмножество, содержащее ровно M точек, центр тяжести которого находится наиболее близко к началу координат
Если честно я как то не могу полностью понять суть задачи, помогите желательно кодом мне срочно надо Заранее спасибо) На плоскости...


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

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Новые блоги и статьи
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
Сукцессия 20. Война автоботов. Делаем ставки. Лёд против "пш-пш!".
anaschu 11.07.2026
Битва ИИ в ризосфере: Как мы скрестили жесткие ОДУ, закон Фика и «подземный шантаж» Уважаемые коллеги! Хочу поделиться уникальным опытом ведения междисциплинарной компьютерной разработки. Прямо. . .
Сукцессия 19. Какие выводы я сделал из модели? Часть 2.Внутримикоризный стехиометрический буфер и хроно-дискретные зоны экспансии
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования
Сукцессия 18. Какие выводы я сделал из войны грибов с деревьями? Часть 1- рассказ и немного про термины
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования Система ОДУ описывает динамику изменения массы различных компонентов системы во времени. Ключевой. . .
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru