V našich programoch sme už používali konštanty rôznych typov, napríklad celé čísla (0,1,54, …), texty (‚Delphi‘, ‚programujeme‘,…) a farby (clRed, clBlue, …).
Niektorým z týchto konštánt ale môžeme dať vlastné mená. Zadefinujeme identifikátor konštanty a určíme mu jeho hodnotu:
const
Hrube = 10;
Tenke = 1;
Modra = clBlue;
Velkost = 120;
V programe potom budeme môcť tieto konštanty používať takto:
Image1.Canvas.Pen.Width := Hrube;
Image1.Canvas.Brush.Color := Modra;
Image1.Canvas.Rectangle(0, 0, Velkost, Velkost);
Konštanty sú pomenované identifikátormi (Hrube, Tenke, Modra, Velkost, …) a tie majú nejaké pravidlá:
– skladá sa z písmen (len 26 písmen anglickej abecedy bez diakritiky), číslic a znaku _ podčiarkovník
– nesmie začínať číslicou
– identifikátor sa musí líšiť od rezervovaných slov v pascale takých ako begin, end, procedure
Deklarovanie konštánt (teda oznámenie programu, že také konštanty budeme používať) sa zapisuje medzi riadky procedure a begin. Takto deklarované konštanty vidí iba tá procedúra, v ktorej sú deklarované, pre ďalšie procedúry (napr. ďalšie buttony) sú tieto konštanty úplne neznáme.
Hotový program s využitím konštánt vyzerá napríklad takto (viete, čo to vykreslí?):
procedure TForm1.Button2Click(Sender: TObject);
const
x = 100;
y = 100;
r=50;
c = clRed;
begin
Image1.Canvas.Brush.Color:=clGray;
Image1.Canvas.Ellipse(x-r+3,y-r+3,x+r+3,y+r+3);
Image1.Canvas.Brush.Color:=c;
Image1.Canvas.Ellipse(x-r,y-r,x+r,y+r);
end;
Úlohy
1. S využitím konštánt napíšte program, ktorý nakreslí kruh (deklarujte konštanty na pozíciu stredu (teda X, Y), polomer a farbu).
2. Do predchádzajúcej úlohy dopíšte dva riadky tak, aby sa vykreslil kruh s jeho tieňom.
3. Nakreslite štvorec, ktorého pravý dolný roh má súradnice X, Y a veľkosť strany je A.
4. Nakreslite dve dotýkajúce sa kružnice s polomermi R1 a R2, pričom stred prvej je v X, Y a druhá má rovnakú Y súradnicu.
5. (Za BONUSOVÝ BODÍK) Nakreslite rovnoramenný trojuholník, ak je známa dĺžka spodnej strany Dlzka, výška Vyska a súradnice jedného vrcholu X, Y (pozor,bude treba deliť dvoma, výpočet sa bude líšiť od voľby vrcholu).
6. Nakreslite pravouhlý trojuholník, ktorého vrchol s pravým uhlom je v X, Y a odvesny majú dĺžky D1 a D2.
7. Nakreslite štvorec, u ktorého poznáme súradnice X1, Y1 a X2, Y2 spodných dvoch vrcholov – predpokladajte, že Y1 = Y2. V príkaze na vykreslenie štvorca nesmiete použiť žiadne číslo! Iba konštanty! Pozor, toto nie je až taká jednoduchá úloha, pozrite si poriadne obrázok.
Nepovinná domáca úloha, deadline:
– pre 3A2: 6.10.2015 o 22,00
– pre 3A1: 11.10.2015 o 22,00
– pre 3B2: 12.10.2015 o 22,00
– pre 3B1: 13.201.2015 o 22,00
(úloha je za 2 body, ktoré sa vám ale zarátajú až po tom, čo z testu dostanete aspoň 9 bodov (z 30))
Nakreslite takéto dotýkajúce sa kružnice, kde kružnica v strede má polomer R2 a kružnice po bokoch majú polomer R1, pričom stred kružnice celkom vľavo je v X, Y. (Vychádzajte z toho, čo sme robili na hodine – dve kružnice už budete takto mať nakreslené.)
Ako odovzdať úlohu z programovania?
Bonusová úloha za 2 extra body – bez ohľadu na to, ako napíšete test – body vám budú zarátané hneď!
Nakreslite rovnoramenný trojuholník, ak je známa dĺžka spodnej strany Dlzka, výška Vyska a súradnice jedného vrcholu X, Y (pozor,bude treba deliť dvoma, výpočet sa bude líšiť od voľby vrcholu).
Najnovšie články
Najnovšie komentáre
- Kaťa komentoval 08 – Hodnotená aktivita z hardware-u
- Alica komentoval 08 – Hodnotená aktivita z hardware-u
- Daniel komentoval 08 – Hodnotená aktivita z hardware-u
- Marek komentoval 08 – Hodnotená aktivita z hardware-u
- kaja komentoval 08 – Hodnotená aktivita z hardware-u