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

Концентрические круги

06.10.2022, 22:20. Показов 2343. Ответов 5

Студворк — интернет-сервис помощи студентам
Напишите функцию circles(d, t), которая строит 2 концентрические окружности с толщиной линии t и интервалом d в виде текстовой графики.

должно в итоге получиться что-то по-типу:

>>> circles(4, 2)
...........................
...........................
.....#######......
...#########....
..###..........###..
..##...............##..
..##....###....##..
..##....###....##..
..##....###....##..
..##...............##..
..###..........###..
...#########....
......#######......
............................

пример кода:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
def is_dark(board_size, d, t, x, y):
    centered_x = x - (board_size // 2)
    centered_y = y - (board_size // 2)
 
    # TODO - если знаете, что поле будет светлое используйте return False
    # TODO - если знаете, что поле будет темное используйте return True
 
    return False
 
 
def circles(d, t):
    board_size = 2 * d + 3 * t
 
    for x in range(board_size):
        for y in range(board_size):
            if is_dark(board_size, d, t, x, y):
                print("#", end="")
            else:
                print(".", end="")
        print()
 
#circles(4, 2)
P.S. я в пайтоне новичок так что буду рад любой помощи.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.10.2022, 22:20
Ответы с готовыми решениями:

Turtle и круги
Добрый день! Абсолютно встал в затык с частью большого задания. Делаем подобие пейнта через использование библиотки turtle. Не могу...

Нарисовать круги
Задание: Ввести с клавиатуры число N и нарисовать N рядов по 5 кругов

Нарисовать круги
Нужна помощь в задании. Необходимо нарисовать круги. Как в программе сместить второй ряд и т.д на сторону? А то получается что каждый ряд...

5
0 / 0 / 0
Регистрация: 06.10.2022
Сообщений: 11
07.10.2022, 09:51  [ТС]
вот рисунок поточнее:
............................
............................
......#######......
....#########....
..###...........###..
..##...............##..
..##....###....##..
..##....###....##..
..##....###....##..
..##...............##..
..###..........###..
....#########....
......#######......
............................
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
07.10.2022, 12:25
Цитата Сообщение от ABOBA2281488 Посмотреть сообщение
должно в итоге получиться что-то по-типу
так что-то по-типу или тоже самое?
0
0 / 0 / 0
Регистрация: 06.10.2022
Сообщений: 11
07.10.2022, 12:45  [ТС]
То же самое. Вот как пример еще одно задание:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def circle(r):
    pass
 
"""
. . . . . . . . . . .
. . . # # # # # . . .
. . # # # # # # # . .
. # # # # # # # # # .
. # # # # # # # # # .
. # # # # # # # # # .
. # # # # # # # # # .
. # # # # # # # # # .
. . # # # # # # # . .
. . . # # # # # . . .
. . . . . . . . . . .
"""
circle(5)
Я искал в интернете как сделать что-то подобное, но к сожалению так толком ничего и не нашел
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
07.10.2022, 13:09
Лучший ответ Сообщение было отмечено ABOBA2281488 как решение

Решение

так?
Python
1
2
3
4
5
6
7
8
9
10
11
def circle(r):
    n = 2 * r
    for x in range(-r, r + 1):
        for y in range(-r, r + 1):
            if x ** 2 + y ** 2 < r ** 2:
                print('# ', end='')
            else:
                print('. ', end='')
        print()
 
circle(5)
Добавлено через 7 минут
Концентрические:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def circle(d, t):
    r = 2 * t + d + 1
    n = 2 * r
    for x in range(-r, r + 1):
        for y in range(-r, r + 1):
            z = x ** 2 + y ** 2
            if z < t ** 2 or (t + d) ** 2 <= z < (2 * t + d) ** 2:
                print('# ', end='')
            else:
                print('. ', end='')
        print()
 
 
circle(4, 2)
3
0 / 0 / 0
Регистрация: 06.10.2022
Сообщений: 11
07.10.2022, 13:15  [ТС]
Спасибо огромное за Вашу помощь!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.10.2022, 13:15
Помогаю со студенческими работами здесь

Рисовать круги каждые 2 секунды
нужно рисовать круги каждые 2 секунды если на круг нажать или 2 секунды прошло то рисуется новый круг то же самое если на круг нажать...

Как нарисовать пересекающиеся круги в Питоне?
Доброго времени суток) Задачка такая: &quot;Два круга заданы координатами центров в прямоугольной декартовой системе координат и радиусами....

Создать программу "Концентрические круги" из К кругов
:) Все привет. Застряла на одной прграмке, вроде легкая, а что-то не справлюсь. :oops: Создать программу &quot;Концентрические...

Концентрические треугольники
Задание. Получить изображение (орнамент) из одной повторяющейся геометрической фигуры. Используя в качестве параметров отображения...

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


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
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
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru