5. hodina - Kreslenie¶
Už si zamieňal české koruny na eurá. Teraz vytvor nový program, ktorý zamení eurá na české koruny. Použi premenné
suma
akurz
, do ktorých priradíš počiatočné hodnoty – koľko eur ideš zamieňať a aktuálny kurz (napríklad,25.23
českých korún za1
euro). Do premennejdostanes
priraď hodnotu výrazu, ktorým sa vypočíta, koľko eur dostaneš za svoju sumu. Program vypíše výsledok napríklad v tvare:Za ... eur dostaneš ... českých korún pri kurze ... českých korún za euro.
Nasledujúci program pracuje s premennými. Zisti bez použitia počítača, čo program vypíše:
kg = 3 c = 20 s = kg * c + 7 print('Za poslanie balíka s hmotnosťou', kg, 'kg zaplatíš', s, 'korún')
Svoje zistenie skontroluj na počítači
Doteraz tvoje programy počítali a vypisovali textové správy. Teraz sa naučíš vytvárať programy, ktoré kreslia rôzne obrázky. Postupuj takto:
Vytvor nový program s týmto obsahom:
import tkinter canvas = tkinter.Canvas() canvas.pack()
Program spusti – na obrazovke uvidíš nové okno:
Zisti, či sa dá okno posúvať, meniť jeho veľkosť. Nakoniec toto nové okno zatvor.
Tvoj program vyrobil grafickú plochu
canvas
. Slovocanvas
budeš používať aj v ďalších príkazoch na kreslenie.
Pridaj do svojho programu nový príkaz a program opäť spusti:
import tkinter canvas = tkinter.Canvas() canvas.pack() canvas.create_rectangle(50, 70, 220, 150)
Uvidíš obdĺžnik:
V zátvorkách príkazu
canvas.create_rectangle( , , , )
sú 4 čísla. Skús ich postupne meniť. Program zakaždým spusti, aby si videl, čo nakreslí:canvas.create_rectangle(0, 0, 220, 150)
canvas.create_rectangle(0, 0, 50, 50)
canvas.create_rectangle(0, 0, 250, 50)
canvas.create_rectangle(20, 10, 250, 50)
canvas.create_rectangle(20, 10, 50, 250)
Vieš ako tieto čísla fungujú?
Súradnicová sústava
Najskôr treba rozumieť, ako funguje súradnicová sústava v počítači:

V matematike si bol zvyknutý na to, že súradnicová sústava začína v strede. Na počítači leží bod so súradnicami [0, 0]
v ľavom hornom rohu. Os x ide zľava doprava. Os y je oproti matematike prevrátená – ide zhora nadol (čím väčšie číslo, tým nižšie).
V príkaze canvas.create_rectangle(x1, y1, x2, y2)
píšeme do zátvoriek súradnice protiľahlých vrcholov obdĺžnika:

Zmeň svoj program tak, aby nakresli obdĺžnik, ktorý má súradnice protiľahlých vrcholov
[50, 30]
a[300, 200]
.
Akú šírku a výšku má predchádzajúci obdĺžnik?
Nakresli obdĺžnik, ktorý má jeden vrchol na súradniciach
[200, 100]
, jeho šírka je60
a výška140
.
Bez použitia počítača zisti a nakresli, ako približne budú rozmiestnené tieto obdĺžniky. Aká je výška a šírka každého z nich?
import tkinter canvas = tkinter.Canvas() canvas.pack() canvas.create_rectangle(50, 70, 220, 150) canvas.create_rectangle(60, 80, 130, 140) canvas.create_rectangle(160, 90, 230, 160)
Program vyskúšaj aj na počítači, či si to správne odhadol.
Napíš program, ktorý vedľa seba nakreslí dva štvorce so stranami
80
(pozície zvoľ podľa uváženia):
Napíš program, ktorý nakreslí dva veľké štvorce – jeden so stranou
100
a druhý150
. Štvorce majú spoločný stred:
Napíš program, ktorý z troch obdĺžnikov
150x50
,100x50
a50x50
nakreslí takúto pyramídu: