номер 9, страница 37 - гдз по информатике 8 класс учебник Котов, Лапо

Информатика, 8 класс Учебник, авторы: Котов Владимир Михайлович, Лапо Анжелика Ивановна, Быкадоров Юрий Александрович, издательство Адукацыя i выхаванне, Минск, 2026

Авторы: Котов В. М., Лапо А. И., Быкадоров Ю. А.

Тип: Учебник

Издательство: Адукацыя i выхаванне

Год издания: 2026

Цвет обложки: фиолетовый, белый с ноутбуком

ISBN: 978-985-34-0487-6

Допущено Министерством образования Республики Беларусь

Глава 1. Основы алгоритмизации и программирования. Параграф 5. Оператор цикла. Упражнения - номер 9, страница 37.

№9 (с. 37)
Условие. №9 (с. 37)
скриншот условия
Информатика, 8 класс Учебник, авторы: Котов Владимир Михайлович, Лапо Анжелика Ивановна, Быкадоров Юрий Александрович, издательство Адукацыя i выхаванне, Минск, 2026, страница 37, номер 9, Условие

9Напишите программу, которая рисует концентрические окружности с центром в середине графического окна. Радиус самой маленькой окружности — 10 пикселей. Разница радиусов — 20 пикселей. Количество окружностей вводится.

*Используйте изменение интенсивности какого-либо цвета (или двух одновременно) для заливки кругов.

Решение. №9 (с. 37)

Решение задачи на языке Python (с использованием стандартного графического модуля tkinter)

Для решения задачи учтём следующие особенности:

  • Центр окна с размерами $W \times H$ находится в точке с координатами $(x_0, y_0) = (\frac{W}{2}, \frac{H}{2})$.
  • Радиус $i$-й окружности равен $r = 10 + 20 \cdot i$, где $i$ изменяется от $0$ до $n - 1$.
  • Чтобы при заливке круги не перекрывали друг друга, их нужно рисовать, начиная с самого большого и заканчивая самым маленьким.
  • Для изменения интенсивности цвета сформируем шестнадцатеричную строку формата #RRGGBB, плавно меняя один или два цветовых компонента в цикле.

Программный код:

from tkinter import Tk, Canvas # Запрашиваем количество окружностей n = int(input("Введите количество окружностей: ")) # Задаём размеры графического окна width = 600 height = 600 x0 = width // 2 y0 = height // 2 root = Tk() root.title("Концентрические окружности") canvas = Canvas(root, width=width, height=height, bg="white") canvas.pack() # Рисуем круги от большего к меньшему for i in range(n - 1, -1, -1): r = 10 + 20 * i # Вычисляем интенсивность синего и зелёного цвета (от 50 до 255) intensity = int(50 + (205 * i / max(1, n - 1))) color = f"#00{intensity:02x}{intensity:02x}" # Координаты описывающего круг квадрата x1 = x0 - r y1 = y0 - r x2 = x0 + r y2 = y0 + r canvas.create_oval(x1, y1, x2, y2, fill=color, outline="black") root.mainloop()

Пояснения к работе программы:

  • Функция canvas.create_oval(x1, y1, x2, y2) принимает координаты верхнего левого $(x_1, y_1)$ и нижнего правого $(x_2, y_2)$ углов квадрата, в который вписана окружность.
  • Цикл range(n - 1, -1, -1) идёт в обратном направлении, благодаря чему каждый меньший круг накладывается поверх большего, не перекрывая его полностью.
  • Форматирование {intensity:02x} переводит число в шестнадцатеричную систему счисления, обеспечивая плавный градиентный переход цвета заливки от темных оттенков к более ярким.

Помогло решение? Оставьте отзыв в комментариях ниже.

Присоединяйтесь к Телеграм-группе @gdz_by_belarus

Присоединиться

Мы подготовили для вас ответ c подробным объяснением домашего задания по информатике за 8 класс, для упражнения номер 9 расположенного на странице 37 к учебнику 2026 года издания для учащихся школ и гимназий.

Теперь на нашем сайте ГДЗ.БАЙ вы всегда легко и бесплатно найдёте условие с правильным ответом на вопрос «Как решить ДЗ» и «Как сделать» задание по информатике к упражнению №9 (с. 37), авторов: Котов (Владимир Михайлович), Лапо (Анжелика Ивановна), Быкадоров (Юрий Александрович), учебного пособия издательства Адукацыя i выхаванне.