# Вправа 12 стор 76
# Проект. Рух кругів по вертикалі
# Програма руху кругів по вертикалі з відбиттям від меж вікна
#
from tkinter import*
from random import*
from time import*
tk=Tk()
canvas=Canvas(tk, width=500, height=400, bg="Sky Blue")
canvas.pack()
#
class Ball: #
#
def __init__(self,canvas,x,y,color):
self.canvas=canvas
self.id=canvas.create_oval(x,y,x+50,y+50,fill=color)
self.dy=2
#
def ruh(self):
pos=canvas.coords(self.id)
if pos[1]>348:
self.dy=-1*self.dy
if pos[1]<2:
self.dy=-1*self.dy
#
def q():
tk.destroy()
#
b=Button(tk, text="Вихід", command=q)
b.pack(anchor=W)
list_ball=[] #
colors=["red","orange","yellow","green","blue"]
for i in range(10): #
x=randint(10,400)
y=randint(10,350)
#
list_ball.append(Ball(canvas,x,y,colors[i%5]))
while True: #
for i in range(len(list_ball)): #
list_ball[i].ruh() #
canvas.move(list_ball[i].id,0,list_ball[i].dy) #
tk.update() #
sleep(0.02) #
tk.mainloop()
Завдання
1. Надрукувати програму та виконати її
2. Доповнити код програми коментарями
3. Текс програми та скриншот результату роботи програми надіслати в класрум
Запитання
1. Які атрибути містить клас Ball(...) ?
2. Які методи містить клас Ball(...) ?
3. Як називають метод __init__(...) ?
4. Що є елементами списку list_ball[...] ?
5. З допомогою якого метода заповнюють список list_ball[...] ?
6. Що виконує метод len() ?
7. Яке призначення методу move ?
8, Яку дію виконує метод update()
# Проект. Рух кругів по вертикалі
# Програма руху кругів по вертикалі з відбиттям від меж вікна
#
from tkinter import*
from random import*
from time import*
tk=Tk()
canvas=Canvas(tk, width=500, height=400, bg="Sky Blue")
canvas.pack()
#
class Ball: #
#
def __init__(self,canvas,x,y,color):
self.canvas=canvas
self.id=canvas.create_oval(x,y,x+50,y+50,fill=color)
self.dy=2
#
def ruh(self):
pos=canvas.coords(self.id)
if pos[1]>348:
self.dy=-1*self.dy
if pos[1]<2:
self.dy=-1*self.dy
#
def q():
tk.destroy()
#
b=Button(tk, text="Вихід", command=q)
b.pack(anchor=W)
list_ball=[] #
colors=["red","orange","yellow","green","blue"]
for i in range(10): #
x=randint(10,400)
y=randint(10,350)
#
list_ball.append(Ball(canvas,x,y,colors[i%5]))
while True: #
for i in range(len(list_ball)): #
list_ball[i].ruh() #
canvas.move(list_ball[i].id,0,list_ball[i].dy) #
tk.update() #
sleep(0.02) #
tk.mainloop()
Завдання
1. Надрукувати програму та виконати її
2. Доповнити код програми коментарями
3. Текс програми та скриншот результату роботи програми надіслати в класрум
Запитання
1. Які атрибути містить клас Ball(...) ?
2. Які методи містить клас Ball(...) ?
3. Як називають метод __init__(...) ?
4. Що є елементами списку list_ball[...] ?
5. З допомогою якого метода заповнюють список list_ball[...] ?
6. Що виконує метод len() ?
7. Яке призначення методу move ?
8, Яку дію виконує метод update()
Комментариев нет:
Отправить комментарий