14. hodina - Elipsy a kruhy¶
Napíš program, ktorý pomocou cyklu zistí, čomu sa rovná súčet čísel
0 + 1 + 2 + ... + 99
. Výsledok program vypíše pomocouprint
.
V jazyku Python kreslíme elipsy a kruhy príkazom
create_oval
. Vyskúšaj:import tkinter canvas = tkinter.Canvas() canvas.pack() canvas.create_oval(10, 10, 200, 150)
Pridaj na koniec programu príkaz na kreslenie obdĺžnika s rovnakými číslami, ako sú v príkaze
create_oval
. Ako bude vzájomná pozícia elipsy a obdĺžnika?
Parametre
Čísla, ktoré píšeme do zátvoriek v príkazoch canvas.create_oval
a canvas.create_rectangle
, nazývame parametre:
canvas.create_rectangle(x1, y1, x2, y2)
canvas.create_oval(x1, y1, x2, y2)
V príkaze create_rectangle
dvojice [x1, y1]
, [x2, y2]
určovali súradnice protiľahlých vrcholov. Aj v príkaze create_oval
parametre [x1, y1]
, [x2, y2]
určujú súradnice protiľahlých vrcholov obdĺžnika, do ktoré sa vpíše elipsa. Obdĺžnik sa však nenakreslí.
Pomocou štvorcov sa dá postaviť kockuliak. Napíš program, ktorý ho nakreslí, ak poznáš súradnice:
Zmeň predchádzajúci program tak, aby sa namiesto kockuliaka kreslil snehuliak. Ako nakreslíš kruh?
Napíš program, ktorý pomocou aspoň piatich elíps nakreslí nejaké lietajúce UFO – rozmery aj farby si zvoľ:
Farebné elipsy nakreslíš podobne, ako farebné obdĺžniky pomocou parametra
fill
:canvas.create_oval(x1, y1, x2, y2, fill='farba')
Napíš podprogram
strom
, ktorý do premennýchx
,y
priradí čísla200
,150
a nakreslí pomocou elipsy a obdĺžnika strom:Koruna stromu nech je zelená elipsa so šírkou
60
a výškou100
. Kmeň je hnedý obdĺžnik široký10
a vysoký50
:
Uprav predchádzajúci program tak, aby sa kreslil les. V podprograme
strom
priraď dox
,y
náhodné súradnice a zavolaj tento podprogram10
krát.
Napíš program, ktorý pomocou
canvas.create_oval
nakreslí dopravnú značku. Stred kruhov nech je na pozícii[200, 100]
. Veľký červený kruh má polomer45
, biely35
. Ako nakreslíš kruh, keď poznáš jeho stred a polomer?
(*)
Ufóni nám poslali takúto správu:Zrejme očakávajú, že im odpovieme, hoci aj náhodnou, podobne vyzerajúcou správou. Napíš program, ktorý takú správu vygeneruje.
Zistili sme, že správa sa skladá z
256
malých elíps. Elipsy sú kreslené do mriežky, ktorá má18
stĺpcov a12
riadkov. Každé políčko mriežky má rozmery20x20
. Elipsu nakreslíš tak, že:vygeneruješ dve náhodné čísla pre riadok a stĺpec, vynásobíš ich
20
a to budú súradnice stredu elipsy,vygeneruješ ďalšie dve náhodné čísla od
1
do20
pre šírku a výšku malej elipsy,keď poznáš stred a veľkosť elipsy, tak ju nakreslíš.
Toto zopakuješ
256
krát.