ДАЮ 100 БАЛІВ.Використовуючи функцію random(), cтворити програму, яка утворит малюнок.(див. додаток).
![](https://st.uroker.com/files/e70/e704111dcf00df82a848c5d9b4eb0268.png)
Ответы
Ответ:
import pygame#Модуль для создания 2d и 3d игр на python
import random#Модуль рандомных чисел
import math#Модуль математики
pygame.init()#Инициализируем PyGame
#Определяем размеры окна
Width = 800
Height = 600
#Создаем окно
Window = pygame.display.set_mode((Width, Height))
pygame.display.set_caption("Звезды")
#Закрашиваем окно в черный цвет
Window.fill((0, 0, 0))
#Цикл рисующий звезды(50 звезд)
for i in range(50):
#Получаем рандомный размер, цвет и позицию
Randsize = random.randint(10, 50)
Randx = random.randint(0, Width - Randsize)
Randy = random.randint(0, Height - Randsize)
#Рандомные цвета с рандомными RGB значениями от 0 до 255
Randcolor = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
#Радиус внешней части звезды
Outeradius = Randsize// 2
#Радиус внутренней части звезды
Inneradius = Randsize// 4
Angle = 0#Угол который определяет координаты вершины звезды
Points = []#Список точек которые образуют форму звезды
#Цикл определяющий внешние и внутренние углы звезды(5 углов)
for j in range(5):
Outerx = Randx + Outeradius * math.cos(math.radians(Angle))
Outery = Randy + Outeradius * math.sin(math.radians(Angle))
Innerx = Randx + Inneradius * math.cos(math.radians(Angle + 36))
Innery = Randy + Inneradius * math.sin(math.radians(Angle + 36))
Points.append((Outerx, Outery))#Добавляем координату внешней вершины звезды в массив точек
Points.append((Innerx, Innery))#Добавляем координату внутренней вершины звезды в массив точек
Angle += 72#Смещаем угол
pygame.draw.polygon(Window, Randcolor, Points)#Рисуем полигон по указанным координатам(точкам)
pygame.display.flip()
Working = True
while Working:
for event in pygame.event.get():
if event.type == pygame.QUIT:
Working = False
pygame.quit()