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

Логическая проверка попадания точки в заданную область

09.12.2019, 13:27. Показов 6067. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Посмотрите скриншот, пожалуйста.
Изображения
 
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.12.2019, 13:27
Ответы с готовыми решениями:

Логическая проверка попадания точки в заданную область
Задано N точек в виде двумерного или двух одномерных массивов координат. Разработать программу,для подсчета кол-во точек,попавших в...

Логическая проверка попадания точки в заданную область
Здравствуйте,Помогите решить пожалуйста( Задано N точек в виде двумерного или двух одномерных массивов координат. Разработать...

Логическая проверка попадания точки в заданную область(закрашенную)
Помогите решить задачу: Задано N точек на плоскости в виде одного двумерного или двух одно- мерных массивов координат. Разработать...

14
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
09.12.2019, 17:37
Лучший ответ Сообщение было отмечено IZH как решение

Решение

C++
1
2
3
4
bool isInArea(double x, double y) {
    return pow(x, 2) + pow(y * 2., 2) <= 4.
        && abs(x) >= 1;
}
1
1 / 1 / 0
Регистрация: 23.11.2019
Сообщений: 51
09.12.2019, 17:41  [ТС]
Ух, а можешь объяснить этот код?) Буду безумно благодарен!
0
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
09.12.2019, 18:25
Лучший ответ Сообщение было отмечено IZH как решение

Решение

Цитата Сообщение от nalbe666 Посмотреть сообщение
pow(x, 2) + pow(y * 2., 2) <= 4.
Цитата Сообщение от https://ru.wikipedia.org/wiki/Окружность
Уравнение окружности радиуса R с центром в начале координат:
x^2+y^2=R^2
Только нам X нужен больше в два раза, чем Y.
Миниатюры
Логическая проверка попадания точки в заданную область  
0
 Аватар для FFPowerMan
2156 / 1236 / 508
Регистрация: 11.10.2018
Сообщений: 6,249
09.12.2019, 18:37
Для дробных fabs(x);
1
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
09.12.2019, 18:42
FFPowerMan,
Цитата Сообщение от http://www.cplusplus.com/reference/cstdlib/abs/?kw=abs
In C++, this function is also overloaded in header <cmath> for floating-point types (see cmath abs)...
0
1 / 1 / 0
Регистрация: 23.11.2019
Сообщений: 51
13.12.2019, 20:44  [ТС]
Блин, я програмку реализовал. Всё норм работает, но не понял зачем x больше 2 раза делать?
1
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
13.12.2019, 22:28
Лучший ответ Сообщение было отмечено IZH как решение

Решение

IZH, www.math24.ru/окружность-и-эллипс.html
Большая полуось обозначается через a, малая полуось − через b.
Эллипс, центр которого находится в начале координат, а полуоси лежат на координатных прямых,
описывается следующим каноническим уравнением:
x^2 / a^2 + y^2 / b^2 = 1
В нашем случае a = 2, b = 1. Домножим на a^2, будет x^2 + 4*y^2 <= 4.
1
1 / 1 / 0
Регистрация: 23.11.2019
Сообщений: 51
13.12.2019, 22:37  [ТС]
Помоги этим тоже, пожалуйста!
Обработка одномерных массивов с единственным циклом.
Задачка:
Для n точек плоскости ХОУ , координаты которых заданы множествами действительных чисел (х1, х2,.., хn), (у1, y2 ..., уn ), найти расстояние lk от начала координат до каждой из них (координатами k-oй точки являются хk, уk).
Миниатюры
Логическая проверка попадания точки в заданную область  
0
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
13.12.2019, 22:47
Те же яйца, только в профиль. Каждая точка образует прямоугольный треугольник с катетами x и y, и гипотенузой, которая и будет расстоянием до начала осей. По теореме Пифагора lk = sqrt(x*x + y*y).
Заводим цикл от [0 до n) и для каждой пары считаем расстояние.
1
1 / 1 / 0
Регистрация: 23.11.2019
Сообщений: 51
14.12.2019, 11:55  [ТС]
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int x[100], y[100];
int i, n;
float lk;
srand((int)time(0));
cout << "Bведите размерность массивов X ";
cin >> n;
cout << "Bведите размерность массивов Y ";
cin >> n;
for (i = 0; i < n; i++)
{
x[i] = rand() % 50;
y[i] = rand() % 50;
cout << x[i] << right << setw(3) << y[i] << endl;
if (x[i] > 0 && y[i]>0)
{
lk = sqrt(pow(x[i],2) + pow(y[i],2));
}
}
cout << "Расстояние = "<<lk<<endl;
return 0;
}


Типо так? Она у меня неправильная, так как я не понял.Для каждой пары как сделать?
0
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
14.12.2019, 14:25
Цитата Сообщение от IZH Посмотреть сообщение
int x[100], y[100];
Почему именно 100, а не 10 или 999? Создавайте массивы динамически под заданный размер.
Цитата Сообщение от IZH Посмотреть сообщение
cout << "Bведите размерность массивов Y ";
cin >> n;
Это тут зачем? Два раза задаётся n?
Цитата Сообщение от IZH Посмотреть сообщение
if (x[i] > 0 && y[i]>0)
А с отрицательными координатами что? Почему они не учитываются?
1
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,532
Записей в блоге: 1
14.12.2019, 14:34
nalbe666, чтобы объяснить new новичку - надо сначала подробно пройти тему с указателями, хотя бы недельку только указателями и заниматься и только потом можно переходить к динамическим массивам - и то с оговорками, чтоб без их использования в классах например.
0
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
14.12.2019, 14:46
Условие какое-то мутное, не сказано откуда эти множества взялись. Самому их создать или со входа забрать?
1
1 / 1 / 0
Регистрация: 23.11.2019
Сообщений: 51
14.12.2019, 15:08  [ТС]
Блин, ладно, спасибо за помощь!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2019, 15:08
Помогаю со студенческими работами здесь

Проверка попадания точки в заданную область
Плиз, помогите, никак не могу понять, как написать программу.

Проверка попадания точки в заданную область
Здравствуйте, помогите плиз с заданием. Вот его задание и условие

проверка попадания точки в заданную область (вопрос)
Задание: 1.Записать логическое выражение,соответствующее заданной области истинности 2.Составить программу для: подсчета количества...

Вычисление значения функции, проверка попадания точки в область на плоскости
Дано вещественное число а. Для функции y=f(x), график которой приведен ниже вычислить f(а). Составить алгоритм и написать программу для...

Проверка попадания точки в заданную область
Нужна программа и блок схема, помогите. Вот задание: Составить программу для подсчета количества точек, попавших в заданную область.


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru