Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/89: Рейтинг темы: голосов - 89, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 05.03.2020
Сообщений: 3

Количество точек в круге

05.03.2020, 22:54. Показов 18325. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вычислить количество к-точек с целочисленными координатами которые принадлежат кругу радиусом R (R>0) с центром в начале координат. Точки которые лежат на кругу считать такими что принадлежат кругу
Вход:3
Виход: 29
Никак не могу осилить. (Подскажите пожалуйста)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.03.2020, 22:54
Ответы с готовыми решениями:

Даны действительные числа (xi, yi), i = 1,2, . n - координаты точек на плоскости. Определить количество точек, попада
Даны действительные числа (xi, yi), i = 1,2, ... n - координаты точек на плоскости. Определить количество точек, попадающих в...

Задача "Количество целочисленных точек в круге"
Определите количество целочисленных точек, находящихся внутри и на границе круга радиуса r с центром в начале координат. Формат...

Сколько точек лежат в круге заданного радиуса?
Даны натуральное число n, действительные числа r, A1,...,An (n>=2). Сколько среди точек (A1,An), (A2,An-1),...,(An,A1) таких, которые...

10
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
05.03.2020, 23:32
Python
1
2
3
4
5
6
r = int(input())
k = 0
for x in range(-r, r+1):
    for y in range(-r, r+1):
        k += x*x+y*y <= r*r
print(k)
2
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,760
06.03.2020, 06:58
Можно еще рассмотреть сектор от 0 до 45 градусов... Будет примерно в 8 раз быстрее, но не так красиво записано.

Добавлено через 26 минут
eaa, кстати, за счет округления вниз в 1 строке, у вас неверно считает, например при r=1.5.
Python
1
2
3
4
5
6
7
8
import math
r = float(input())
k = 0
for x in range(1, int(r)+1):
    for y in range(1, x):
        k += x*x+y*y <= r*r
k=8*k+1+4*int(r)+4*int(r/math.sqrt(2))
print(k)
2
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
06.03.2020, 07:32
u235, можно и за O(int(r)) найти количество точек.
2
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,760
06.03.2020, 12:42
eaa, Вы правы. Что-то я сразу не сообразил..
Python
1
2
3
4
5
r=3.0
s=0
for k in range(1, int(r)+1):
    s+=int((r*r-k*k)**(1/2))
print(1+(s+int(r))*4)
2
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
06.03.2020, 12:58
u235, ага, катеты перебрать.
0
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
24.10.2022, 20:29
eaa, как можно перебрать катеты?
0
0 / 0 / 0
Регистрация: 05.01.2023
Сообщений: 1
05.01.2023, 23:05
а если центр не в точке 0.0
Что-то мои поиски не привели к результату
подскажет кто?
0
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,760
05.01.2023, 23:10
tvoy_botinok, отнимите от координат всех точек координаты центра и задача сведется к первоначальной.
0
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,760
06.01.2023, 08:12
tvoy_botinok, поправлюсь, если, конечно новый центр будет иметь целочисленные координаты. Если нет, то симметрия портится и близкие к границам точки придется, видимо, считать обычным способом.
0
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
06.01.2023, 10:23
tvoy_botinok, в целом решений довольно много
Можно перебирать биссектрисы, квадраты и катеты треугольников
Могу помочь с каким-нибудь из них
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.01.2023, 10:23
Помогаю со студенческими работами здесь

Количество точек в круге
Линейный массив A содержит 2*N элементов, значения которых задаются по следующей формуле a:=10*sin(N+i*i). Элементы массива нумеруются с...

Количество точек в круге
Дано случайное количество точек. Радиус круга задается вручную. Как узнать общее количество точек, которые попали в круг? вот...

Количество точек с целыми координатами в круге
Есть задача: Фермер Иван с юности следит за своим газоном. Газон можно считать плоскостью, на которой в каждой точке с целыми...

Подсчитать количество точек, находящихся в круге. Использовать указатели
Подсчитать количество точек, находящихся внутри круга радиусом r и центром в начале координат. Координаты задано массивами х(10) и у(10)....

Вычислить количество точек с целочисленными координатами, находящихся в круге
вычислите количество точек с целочисленными координатами,находящиеся в круге радиуса R (R&gt;0)


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru