You are on page 1of 34

Програмирање није само написати програм који решава одређени проблем.

Програмирање је више од тога, много више. Програмирање је уметност.


Сваки, па био то и најједноставнији задатак може се решити тако да буде
на ваш начин занимљив, необичан, привлачан, заводљиво оригиналан, ...
Ако желите да се бавите програмирањем радите то из љубави, нека сваки
програмски ред буде стих у поеми вашег живота, мисао која плени духом.
Ако и не будете програмери у свом будућем животу, чак и тада посао који
обављате нека буде прављење најлепшег букета који ћете поклањати свету.
miroslav.ilic@devetagimnazija.edu.rs

ЗБИРКА
решених задатака
из програмирања
2 Програмирање - први кораци

1 Задаци за утврђивање типова података

Задаци који следе су примери реаговања објеката у делфију на спољашне догађаје.


Основна функција им је да читаоци ових редова схвате да се у програмирању можемо
понашати слободно и опуштено, односно, да програмирање може бити и забава, али
да и за тако нешто морамо имати некакво знање о програмском језику. Урађени су на
најједноставнији начин јер у овом тренутку немамо довољно програмерског искуства да
лепршамо непрегледним пространствима и поигравајући се заводљиво освајамо свет.

Уводни задаци

1.1. Саставити програм који приказује два тастера на


форми који нестају и појављују се наизменично, на
клик мишем на неки од тастера.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ИГРА СА ДВА ТАСТЕРА'; ClientHeight = 800;
ClientWidth = 1000; Position = poScreenCenter.
На форму ћемо ставити два тастера и подесићемо њихове
карактеристике на следећи начин:
први - Caption = 'Кликни ме'; Font ='PalatinoLynotype, Bold, 18';
Height = 40; Left = 100; Top = 100; Visible = True; Width = 150;
други - Caption = 'Кликни ме'; Font ='PalatinoLynotype, Bold,
18'; Height = 40; Left = 750; Top = 660; Visible = Falsе; Width =
150. Двокликом на први тастер дефинисаћемо следећу процедуру:
procedure TForm1.Button1Click(Sender: TObject);
begin Button1.Visible:=false;
Button2.Visible:=true;
end;
Двокликом на први тастер дефинисаћемо следећу процедуру:
procedure TForm1.Button2Click(Sender: TObject);
begin Button1.Visible:=true;
Button2.Visible:=false;
end;
Сачуваћемо програм у фолдеру 001 и извршити га притиском тастера Ф9.

1.2. Саставити програм који приказује тастера на форми


који не дозвољава да се на њега кликне мишем.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ИГРА СА ЈЕДНИМ ТАСТЕРОМ'; ClientHeight =
800; ClientWidth = 1000; Position = poScreenCenter.
На форму ћемо ставити тастер и подесићемо његове
карактеристике на следећи начин:
Caption = 'Кликни ме'; Font ='PalatinoLynotype, Bold, 18'; Height
= 40; Left = 425; Top = 380; Width = 150. Кликом на тастер
селектоваћемо га, а затим у Object Inspector-у пронаћи ћемо
догађај OnMouseMove и двокликом у његово поље вредности
дефинисаћемо следећу процедуру:
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin Button1.Left:=Random(650)+100;
Button1.Top :=Random(560)+100;
end;
Сачуваћемо програм у фолдеру 002 и извршити га притиском тастера Ф9.
2 Мирослав Илић
Мирослав Илић 3
1.3. Саставити програм који кружић у центру екрана помера
за две тачке у правцу стрелице на притиснутом тастеру.
Да би се овај задатак решио потребно нам је елементарно
сналажење у координатном систему. Координатни почетак је
горњи леви угао форме, а координатне осе су Left и Top.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ИГРА - ПОМЕРАЊЕ КРУЖИЋА'; ClientHeight = 800;
ClientWidth = 1000; Position = poScreenCenter.
На форму ћемо поставити лабелу и подесити карактеристике:
Caption = 'o'; Font ='Arial Black, Bold, 9'; Left = 495; Top = 391.
Почетне координате лабеле смо добили када смо од коорди-
ната центра форме одузели половину ширине и висине лабеле.
Сада ћемо на форму додати девет тастера и подесити њихове карактеристике на следећи начин:
Caption = 'j, h, k, f, P, g, l, i, m'; Font ='Wingdings 3, Bold, 28'; Height = 40; Left = (875, 915, 955); Top =
(675, 715, 755); Width = 40.
Координате тастера се добијају редом узимајући један број из left карактеристике и један из
карактеристике top ("сваки са сваким"). Двокликом редом на сваки од тастера са стрелицама
дефинисаћемо процедуре којима се лабела помера у правцу стрелице на тастеру за две тачке,
односно, враћа се на почетни положај, ако се кликне на средњи тастер. У прве четири процедуре
једна координата је константна, па је нисмо ни користили.
procedure TForm1.Button4Click(Sender: TObject);
begin Label1.Left:=Label1.Left-2; // тастер лево
end;
procedure TForm1.Button6Click(Sender: TObject);
begin Label1.Left:=Label1.Left+2; // тастер десно
end;
procedure TForm1.Button2Click(Sender: TObject);
begin Label1.Top:=Label1.Top-2; // тастер горе
end;
procedure TForm1.Button8Click(Sender: TObject);
begin Label1.Top:=Label1.Top+2; // тастер доле
end;
procedure TForm1.Button1Click(Sender: TObject);
begin Label1.Top:=Label1.Top-2; // тастер горе-лево
Label1.Left:=Label1.Left-2;
end;
procedure TForm1.Button9Click(Sender: TObject);
begin Label1.Top:=Label1.Top+2; // тастер доле-десно
Label1.Left:=Label1.Left+2;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin Label1.Top:=Label1.Top-2; // тастер горе-десно
Label1.Left:=Label1.Left+2;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin Label1.Top:=Label1.Top+2; // тастер доле-лево
Label1.Left:=Label1.Left-2;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin Label1.Top:=391; // тастер за повратак
Label1.Left:=495;
end;
Сачуваћемо програм у фолдеру 003 и извршити га притиском тастера Ф9.
Следе нешто "мање занимљиви" и релативно лагани задаци. Помоћу њих ћемо само вежбавати
коришћење различитих типова података у паскалу и упознавати се са структуром програма.

Програмирање - први кораци 3


4 Програмирање - први кораци

Тип карактер (char)

1.4. Саставити програм који за унети карактер исписује претходни и следећи.


Подесићемо карактеристике форме на следећи начин:
Caption = 'КАРАКТЕР ТИП'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption =
'Претходни и наредни'; Font = 'Palatino Linotype, BoldItalic, 22'; Height =
50; Layout = tlCenter.
Додаћемо три едита, један за унос података и два за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 330; MaxLength = 1; Top =
100; Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = 330; ReadOnly = True;
Top = (240, 310); Width = 50.
Испред сваког едита додаћемо лабелу за комуникацију са корисником са следећим
карактеристикама: AutoSize = False; Caption = (Упишите карактер, Претходни карактер, Наредни
карактер); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 80; Top = (100,
240, 310); Width = 250.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 170; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење
програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из
задатка:
procedure TForm1.Button1Click(Sender: TObject);
var k,p,n:char;
begin k:=Edit1.Text[1]; // тастер одреди
p:=Pred(k);Edit2.Text:=p;
n:=Succ(k);Edit3.Text:=n;
end;
Сачуваћемо програм у фолдеру 004 и извршити га притиском тастера Ф9.

1.5. Саставити програм који за унето мало слово исписује велико и њихове редне бројеве у
ASCII табели.
Подесићемо карактеристике форме на следећи начин:
Caption = 'КАРАКТЕР ТИП'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'ASCII
кодови'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо четири едита, један за унос података и три за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 330; MaxLength = 1; Top =
100; Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = 330; ReadOnly = True;
Top = (220, 280, 340); Width = (70, 50, 70).

4 Мирослав Илић
Мирослав Илић 5
Испред сваког едита додаћемо лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (Упишите мало слово, ASCII код малог слова, Велико слово, ASCII код
великог слова); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 80; Top =
(100, 220, 280, 340); Width = 250.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 160; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење
програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из
задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b:char;
begin a:=Edit1.Text[1]; // тастер одреди
Edit2.Text:=IntToStr(Ord(a));
b:=UpCase(a);Edit3.Text:=b;
Edit4.Text:=IntToStr(Ord(b));
end;
Сачуваћемо програм у фолдеру 005 и извршити га притиском тастера Ф9.

Целобројни тип (integer)

1.6. Саставити програм који одређује збир, разлику и производ два цела броја.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Аритметичке
операције'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо пет едита, два за унос података и три за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 195; Top = (80, 130); Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 195; ReadOnly = True; Top =
(250, 300, 350); Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (a =, b =, a + b =, a - b =, a* b =); Font = 'Palatino Linotype, BoldItalic, 18';
Height = 40; Layout = tlCenter. Left = 115; Top = (80, 130, 250, 300, 350); Width = 80.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 190; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):

Програмирање - први кораци 5


6 Програмирање - први кораци

procedure TForm1.Button2Click(Sender: TObject);


begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,z,r,p:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
b:=StrToInt(Edit2.Text,0);
Edit2.Text:=IntToStr(b);
z:=a+b;Edit3.Text:=IntToStr(z);
r:=a-b;Edit4.Text:=IntToStr(r);
p:=a*b;Edit5.Text:=IntToStr(p);
end;
Сачуваћемо програм у фолдеру 006 и извршити га притиском тастера Ф9.

1.7. Саставити програм који одређује количник и остатак при целобројном дељењу два
уписана цела броја.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position = poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Аритметичке
операције'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо четири едита, два за унос података и два за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 210; Top = (80, 130); Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 210; ReadOnly = True; Top =
(270, 320); Width = 130.
Испред сваког едита додаћемо лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (a =, b =, a div b =, a mod b =); Font = 'Palatino Linotype, BoldItalic, 18';
Height = 40; Layout = tlCenter. Left = 100; Top = (80, 130, 270, 320); Width = 110.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 200; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,k,o:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
b:=StrToInt(Edit2.Text,0);
Edit2.Text:=IntToStr(b);
k:=a div b;Edit3.Text:=IntToStr(k);
o:=a mod b;Edit4.Text:=IntToStr(o);
end;
Сачуваћемо програм у фолдеру 007 и извршити га притиском тастера Ф9.

6 Мирослав Илић
Мирослав Илић 7
1.8. Саставити програм који одређује збир првих н природних бројева.
Формираћемо низ бројева од 1 до n, а затим груписати парове
бројева стално узимајући први и последњи број из низа. Јасно је да
таквих парова има n/2, а да је збир сваког пара n+1. Формула која
представља решење овог задатка гласи: s:=n*(n+1) div 2. Сада ћемо
лако написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
првих н природних бројева'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; Top = 100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, Sn =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
s:=n*(n+1) div 2;
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 008 и извршити га притиском тастера Ф9.

1.9. Саставити програм који одређује збир првих н парних бројева.


Формираћемо низ првих бројева n парних бројева. Сваки број ћемо написати као 2*к, а затим
испред заграде издвојити 2, у загради ће бити збир првих n природних бројева. Ако применимо
формулу из претходног задатка добићемо формулу: s:=2 * n*(n+1) div
2 = n*(n+1). Сада ћемо лако написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
првих н парних бројева'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; Top = 100; Width = 130;

Програмирање - први кораци 7


8 Програмирање - први кораци

за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, Sn =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
s:=n*(n+1);
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 009 и извршити га притиском тастера Ф9.

1.10. Саставити програм који одређује збир првих н непарних бројева.


Формираћемо низ првих бројева n парних бројева. Сваки број
ћемо написати као 2*к-1, а затим испред заграде издвојити 2, у
загради ће бити збир првих n природних бројева и резултат умањити
за n. Ако применимо формулу из претходног задатка добићемо
формулу: s:=n*(n+1) - n = n*n. Сада ћемо лако написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
првих н непарних бројева'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; Top = 100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, Sn =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи

8 Мирослав Илић
Мирослав Илић 9
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
s:=n*n;
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 010 и извршити га притиском тастера Ф9.

1.11. Саставити програм који одређује збир парних бројева до н.


Формираћемо низ пaрних бројева до n. Сваки број ћемо
написати као 2*к, а затим испред заграде издвојити 2, у загради ће
бити збир првих n/2 природних бројева. Ако применимо формулу из
задатка број 3 добићемо формулу: s:= n div 2*((n div 2) + 1). Сада ћемо
лако написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
парних бројева до н'; Font = 'Palatino Linotype, BoldItalic, 22'; Height =
50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; Top = 100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, Sn =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
s:=n div 2*(n div 2+1);
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 011 и извршити га притиском тастера Ф9.

Програмирање - први кораци 9


10 Програмирање - први кораци

1.12. Саставити програм који одређује збир непарних бројева до н.


Формираћемо низ првих n непарних бројева. Сваки број ћемо
написати као 2*к - 1, а затим испред заграде издвојити 2, у загради ће
бити збир првих n/2 природних бројева. Није тешко закључити да је
тражена формула: s:=((n+1) div 2)*((n+1) div 2). Сада ћемо лако
написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
непарних бројева до н'; Font = 'Palatino Linotype, BoldItalic, 22'; Height
= 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; Top = 100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког едита додаћемо лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, Sn =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
s:=((n+1) div 2)*((n+1) div 2);
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 012 и извршити га притиском тастера Ф9.

1.13. Саставити програм који одређује збир цифара унетог троцифреног броја.
Сваки природни број може се написати као збир производа
одговарајуће цифре и броја 10 степенованог са редним бројем цифре
умањеним за 1, тј. c1 + 10*c2 + 100*c3 + .... То значи да се прва цифра
броја добија са mod 10, a цифра се брише дељењем са десет (div 10).
Ако водимо рачуна о томе лако је написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
цифара троцифреног'; Font = 'Palatino Linotype, BoldItalic, 22'; Height
= 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:

10 Мирослав Илић
Мирослав Илић 11
за унос: Font = 'Palatino Linotype, 18'; Left = 180; MaxLength = 3; Top = 100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =, S =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s,p,d,t:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
p:=n mod 10; // цифра јединица
d:=n div 10 mod 10; // цифра десетица
t:=n div 100; // цифра стотица
s:=p+d+t;
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 013 и извршити га притиском тастера Ф9.

1.14. Саставити програм који унети четвороцифрени број исписује са цифрама у обрнутом поретку.
Сваки четвороцифрени број се може написати овако: 1000*c +
100*t + 10*d + p, а број са обрнутим редоследом цифара је 1000*p +
100*d + 10*t + c. Сада jе лако написати програм.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Збир
првих н природних бројева'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 180; MaxLength = 4; Top =
100; Width = 130;
за испис: Font = 'Palatino Linotype, 18'; Left = 180; ReadOnly = True; Top = 260; Width = 130.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (n =,m =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 130; Top = (100, 260); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
Програмирање - први кораци 11
12 Програмирање - први кораци

procedure TForm1.Button2Click(Sender: TObject);


begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var n,s,p,d,t,c:integer;
begin n:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(n);
p:=n mod 10; // цифра јединица
d:=n div 10 mod 10; // цифра десетица
t:=n div 100 mod 10; // цифра стотица
c:=n div 1000; // цифра стотица
s:=1000*p+100*d+10*t+c;
Edit2.Text:=IntToStr(s);
end;
Сачуваћемо програм у фолдеру 014 и извршити га притиском тастера Ф9.

1.15. Саставити програм који одређује дужину трајања емисије у минутима, ако је дато
време почетка и краја емисије у сатима и минутима.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Трајање
емисије у минутима'; Font = 'Palatino Linotype, BoldItalic, 22'; Height =
50; Layout = tlCenter.
Додаћемо четири едита за унос података и један едит за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = (295, 355, 295, 355);
MaxLength = 2; Top = (100, 100, 170, 170); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = 270; ReadOnly = True;
Top = 330; Width = 100.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (Време почетка емисије, Време краја емисије, Трајање емисије); Font =
'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = (30, 30, 80); Top = (100, 170,
330); Width = (265, 265, 190).
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 250; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у први едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Text;Edit1.SetFocus;
end;
Време почетка и краја емисије претворићемо у минуте и одузети да бисмо добили решење. Са
тренутним знањем паскала не можемо контролисати унос података, па ћемо подразумевати да је
време почетка мање од времена краја и да емисија не прелази у нови дан. Двокликом мишем на
тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var sp,mp,sk,mk,t:integer;
begin sp:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(sp);
mp:=StrToIntDef(Edit2.Text,0);
12 Мирослав Илић
Мирослав Илић 13
Edit2.Text:=IntToStr(mp);
sk:=StrToIntDef(Edit3.Text,0);
Edit3.Text:=IntToStr(sk);
mk:=StrToIntDef(Edit4.Text,0);
Edit4.Text:=IntToStr(mk);
t:=sk*60+mk-(sp*60+mp);
Edit5.Text:=IntToStr(t);
end;
Сачуваћемо програм у фолдеру 015 и извршити га притиском тастера Ф9.

1.16. Саставити програм који одређује збир два угла датог у степенима минутима и
секундама.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Сабирање
углова'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо шест едита за унос података и три едита за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = (210, 270, 330); MaxLength
= 2; Top = (100, 170); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (210, 270, 330); ReadOnly
= True; Top = 330; Width = 50.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (Први угао, Други угао, Збир углова); Font = 'Palatino Linotype, BoldItalic,
18'; Height = 40; Layout = tlCenter. Left = 70; Top = (100, 170, 330); Width = 140.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 250; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;
Edit9.Clear;Edit1.SetFocus;
end;
Задатак ћемо решити слично претходном. Оба угла ћемо претворити у секунде, сабрати их и
затим збир секунди претворити у степене, минуте и секунде. Двокликом мишем на тастер Одреди
дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a1,a2,a3,b1,b2,b3,c1,c2,c3:integer;
begin a1:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a1);
a2:=StrToIntDef(Edit2.Text,0);
Edit2.Text:=IntToStr(a2);
a3:=StrToIntDef(Edit3.Text,0);
Edit3.Text:=IntToStr(a3);
b1:=StrToIntDef(Edit4.Text,0);
Edit4.Text:=IntToStr(b1);
b2:=StrToIntDef(Edit5.Text,0);
Edit5.Text:=IntToStr(b2);
b3:=StrToIntDef(Edit6.Text,0);
Edit6.Text:=IntToStr(b3);

Програмирање - први кораци 13


14 Програмирање - први кораци

c3:=a1*3600+a2*60+a3+b1*3600+b2*60+b3;
c1:=c3 div 3600;
c2:=c3 mod 3600 div 60;
c3:=c3 mod 60;
Edit7.Text:=IntToStr(c1);
Edit8.Text:=IntToStr(c2);
Edit9.Text:=IntToStr(c3);
end;
Сачуваћемо програм у фолдеру 016 и извршити га притиском тастера Ф9.

1.17. Саставити програм који одређује комплемент и суплемент угла датог у степенима
минутима и секундама.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption =
'Комплемент и суплемент'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
Додаћемо три едита за унос података и шест едита за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = (210, 270, 330); MaxLength
= 2; Top = 100; Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (210, 270, 330); ReadOnly
= True; Top = (260, 330); Width = 50.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (Унесите угао, Комплемент, Суплемент); Font = 'Palatino Linotype,
BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 50; Top = (100, 260, 330); Width = 155.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;
Edit9.Clear;Edit1.SetFocus;
end;
Комплемент угла добићемо као разлику угла од 90о и уписаног угла. Да би се упростило
решење угао ћемо претворити у секунде, а затим ћемо комплемент у секундама претворити у
степене, минуте и секунде. Суплемент је за тачно 90о већи од комплемента угла. Двокликом мишем
на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a1,a2,a3,c1,c2,c3:integer;
begin a1:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a1);
a2:=StrToIntDef(Edit2.Text,0);
Edit2.Text:=IntToStr(a2);
a3:=StrToIntDef(Edit3.Text,0);
Edit3.Text:=IntToStr(a3);
c3:=90*3600-(а1*3600+a2*60+a3);
c1:=c3 div 3600;
c2:=c3 mod 3600 div 60;
c3:=c3 mod 60;
Edit4.Text:=IntToStr(c1);

14 Мирослав Илић
Мирослав Илић 15
Edit5.Text:=IntToStr(c2);
Edit6.Text:=IntToStr(c3);
Edit7.Text:=IntToStr(c1+90);
Edit8.Text:=IntToStr(c2);
Edit9.Text:=IntToStr(c3);
end;
Сачуваћемо програм у фолдеру 017 и извршити га притиском тастера Ф9.

1.18. Саставити програм који одређује обим и површину квадрата странице а.


Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Квадрат';
Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и два едита за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 290; Top = 100; Width = 100;
за испис: Font = 'Palatino Linotype, 18'; Left = 290; ReadOnly = True;
Top = (260,330); Width = 100.
Испред сваког едита додаћемо по једну лабелу за комуникацију
са корисником са следећим карактеристикама:
AutoSize = False; Caption = (Страница квадрата, Обим квадрата, Површина квадрата); Font = 'Palatino
Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 50; Top = (100, 260, 330); Width = 240.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,p,o:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
o:=4*a; p:=a*a;
Edit2.Text:=IntToStr(o);
Edit3.Text:=IntToStr(p);
end;
Сачуваћемо програм у фолдеру 018 и извршити га притиском тастера Ф9.

1.19. Саставити програм који одређује површину и запремину коцке са основицом а.


Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position = poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Коцка'; Font = 'Palatino Linotype,
BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо едит за унос података и два едита за испис резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 290; Top = 100; Width = 100;
за испис: Font = 'Palatino Linotype, 18'; Left = 290; ReadOnly = True; Top = (260,330); Width = 100.
Испред сваког едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:

Програмирање - први кораци 15


16 Програмирање - први кораци

AutoSize = False; Caption = (Основица коцке, Површина коцке,


Запремина коцке); Font = 'Palatino Linotype, BoldItalic, 18'; Height =
40; Layout = tlCenter. Left = 50; Top = (100, 260, 330); Width = 240.
Додаћемо и три тастера са следећим карактеристикама:
Caption = 'Одреди, Поново, Крај'; Font = 'Palatino Linotype, Bold, 18';
Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом
се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру
којом се брише садржај свих едита и курсор поставља у едит за упис
(први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,p,v:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
p:=6*a*a; v:=a*a*a;
Edit2.Text:=IntToStr(p);
Edit3.Text:=IntToStr(v);
end;
Сачуваћемо програм у фолдеру 019 и извршити га притиском тастера Ф9.

1.20. Саставити програм који одређује површину и запремину квадра са основицама а, б и ц.


Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Квадар';
Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо три едита за унос података и два едита за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 200; Top = (70, 125, 170);
Width = 100;
за испис: Font = 'Palatino Linotype, 18'; Left = 200; ReadOnly = True;
Top = (300, 360); Width = 100.
Испред сваког едита додаћемо по једну лабелу за комуникацију
са корисником са следећим карактеристикама:
AutoSize = False; Caption = (a =, b =, c =, P =, V =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40;
Layout = tlCenter. Left = 200; Top = (70, 125, 170, 300, 360); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 180; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Clear;Edit1.SetFocus;
end;

16 Мирослав Илић
Мирослав Илић 17
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,p,v:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
b:=StrToIntDef(Edit2.Text,0);
Edit2.Text:=IntToStr(b);
c:=StrToIntDef(Edit3.Text,0);
Edit3.Text:=IntToStr(c);
p:=2*(a*b+b*c+c*a); v:=a*b*c;
Edit4.Text:=IntToStr(p);
Edit5.Text:=IntToStr(v);
end;
Сачуваћемо програм у фолдеру 020 и извршити га притиском тастера Ф9.

1.21. Саставити програм који одређује површину квадрата над хипотенузом правоуглог
троугла са катетама а и б.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЦЕЛИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Питагорина
теорема'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout
= tlCenter.
Додаћемо два едита за унос података и едит за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 200; Top = (100, 170);
Width = 100;
за испис: Font = 'Palatino Linotype, 18'; Left = 200; ReadOnly = True;
Top = 330; Width = 100.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (a =, b =, c =); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout
= tlCenter. Left = 150; Top = (100, 170, 330); Width = 50.
и лабелу за експонент са карактеристикама:
AutoSize = False; Caption = 2; Font = 'Palatino Linotype, BoldItalic, 12'; Height = 20; Layout = tlCenter.
Left = 165; Top = 330; Width = 35.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 250; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:integer;
begin a:=StrToIntDef(Edit1.Text,0); // тастер одреди
Edit1.Text:=IntToStr(a);
b:=StrToIntDef(Edit2.Text,0);
Edit2.Text:=IntToStr(b);
c:=a*a+b*b;
Edit3.Text:=IntToStr(c);
end;
Сачуваћемо програм у фолдеру 021 и извршити га притиском тастера Ф9.
Програмирање - први кораци 17
18 Програмирање - први кораци

Реални ти (real)

1.22. Саставити програм који на случајан начин формира број мањи од 100, заокругљује га на
две децимале, а затим замењује целобројни и разломљени део.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption =
'Заокругљивање бројева'; Font = 'Palatino Linotype, BoldItalic, 22';
Height = 50; Layout = tlCenter.
У задатку нема података које уноси корисник, па нема едита за
унос података. Додаћемо пет едита за испис резултата са следећим
карактеристикама:
за испис: Font = 'Palatino Linotype, 18'; Left = (180, 260, 260, 260, 260);
ReadOnly = True; Top = (100, 150, 200, 250, 300); Width = (250,100, 100,
100, 100).
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = (Случајан број, Заокругљени број, Целобројни део броја, Разломљени део
броја, Новоформирани број); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter.
Left = 10; Top = (100, 150, 200, 250, 300); Width = (170, 250, 250, 250, 250).
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (20, 160, 300); Top = 360; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и први тастер се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Button1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var b,z,c,r,n:real;
begin Randomize; // тастер одреди
b:=Random*100; Edit1.Text:=FloatToStr(b);
z:=Round(b*100)/100;Edit2.Text:=FloatToStr(z);
c:=Int(z); Edit3.Text:=FloatToStr(c);
r:=Round(Frac(z)*100)/100;Edit4.Text:=FloatToStr(r);
n:=r*100+c/100; Edit5.Text:=FloatToStr(n);
end;
Сачуваћемо програм у фолдеру 022 и извршити га притиском тастера Ф9.

1.23. Саставити програм који на случајан начин формира пет бројева, заокругљије их на две
децимале, а затим одређује аритметичке средине за сваку групу бројева посебно и
одступања сваког од бројева од одговарајуће аритметичке средине.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 430; Width = 580; Position = poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Заокругљивање бројева'; Font =
'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо шест едита за пет генерисаних бројева и њихову аритметичку средину са следећим
карактеристикама:
Font = 'Courier New, 16'; Left = 50; ReadOnly = True; Top = (110, 145, 180, 215, 250, 285); Width = 150;
Додаћемо шест едита за пет заокругљених бројева и њихову аритметичку средину са следећим
карактеристикама:
18 Мирослав Илић
Мирослав Илић 19
Font = 'Courier New, 16'; Left = 205; ReadOnly = True; Top = (110,
145, 180, 215, 250, 285); Width = 100.
Додаћемо пет едита за одступања генерисаних бројева од
аритметичке средине са следећим карактеристикама:
Font = 'Courier New, 16'; Left = 310; ReadOnly = True; Top = (110,
145, 180, 215, 250); Width = 150.
Додаћемо пет едита за одступања заокругљених бројева
од аритметичке средине са следећим карактеристикама:
Font = 'Courier New, 16'; Left = 465; ReadOnly = True; Top = (110,
145, 180, 215, 250); Width = 100.
За заглавље табеле додаћемо лабелу са карактеристикама:
AutoSize = False; Caption = (Случајни бројеви Заокругљени Одтупања случај. Одступањa з.); Font =
'Palatino Linotype, BoldItalic, 13'; Height = 30; Layout = tlBottom; Left = 50; Top = 80; Width = 522.
Испред свих едита додаћемо још једну лабелу као заглавље редова са карактеристикама:
Alignment = taRightJustify; AutoSize = False; Caption = (РБ 1. 2. 3. 4. 5. АС); Font = 'Palatino Linotype,
BoldItalic, 19'; Height = 240; Layout = tlCenter; Left = 10; Top = 80; Width = 40; WordWrap = True.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (50, 210, 370); Top = 340; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и први тастер се ставља у жижу:
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit9.Clear;
Edit10.Clear;Edit11.Clear;Edit12.Clear;
Edit13.Clear;Edit14.Clear;Edit15.Clear;
Edit16.Clear;Edit17.Clear;Edit18.Clear;
Edit19.Clear;Edit20.Clear;Edit21.Clear;
Edit22.Clear;Button1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a1,a2,a3,a4,a5,oa1,oa2,oa3,oa4,oa5,asa,
z1,z2,z3,z4,z5,oz1,oz2,oz3,oz4,oz5,asz:real;
begin randomize; // одреди
a1:=Random*1000;Edit1.Text:=Format('%11.7f',[a1]);
a2:=Random*1000;Edit2.Text:=Format('%11.7f',[a2]);
a3:=Random*1000;Edit3.Text:=Format('%11.7f',[a3]);
a4:=Random*1000;Edit4.Text:=Format('%11.7f',[a4]);
a5:=Random*1000;Edit5.Text:=Format('%11.7f',[a5]);
asa:=(a1+a2+a3+a4+a5)/5;Edit6.Text:=Format('%11.7f',[asa]);
oa1:=Abs(asa-a1);Edit13.Text:=Format('%11.7f',[oa1]);
oa2:=Abs(asa-a2);Edit14.Text:=Format('%11.7f',[oa2]);
oa3:=Abs(asa-a3);Edit15.Text:=Format('%11.7f',[oa3]);
oa4:=Abs(asa-a4);Edit16.Text:=Format('%11.7f',[oa4]);
oa5:=Abs(asa-a5);Edit17.Text:=Format('%11.7f',[oa5]);
z1:=Round(a1*100)/100;Edit7.Text:=Format('%11.3f',[z1]);
z2:=Round(a2*100)/100;Edit8.Text:=Format('%11.3f',[z2]);
z3:=Round(a3*100)/100;Edit9.Text:=Format('%11.3f',[z3]);
z4:=Round(a4*100)/100;Edit10.Text:=Format('%11.3f',[z4]);
z5:=Round(a5*100)/100;Edit11.Text:=Format('%11.3f',[z5]);
asz:=(z1+z2+z3+z4+z5)/5;Edit12.Text:=FloatToStr(asz);
oz1:=Abs(asz-z1);Edit18.Text:=Format('%11.3f',[oz1]);
oz2:=Abs(asz-z2);Edit19.Text:=Format('%11.3f',[oz2]);
oz3:=Abs(asz-z3);Edit20.Text:=Format('%11.3f',[oz3]);
oz4:=Abs(asz-z4);Edit21.Text:=Format('%11.3f',[oz4]);
oz5:=Abs(asz-z5);Edit22.Text:=Format('%11.3f',[oz5]);
end;
Сачуваћемо програм у фолдеру 023 и извршити га притиском тастера Ф9.
Програмирање - први кораци 19
20 Програмирање - први кораци

1.24. Саставити програм који исписује таблицу вредности тригонометријских функција


углова од 5, 15, 25, 35 и 45 степени. Дозволити промену вредности углова.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 430; Width = 590;
Position = poScreenCenter.
На форму ћемо ставити лабелу за наслов са следећим
карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption =
'Тригонометријске функције'; Font = 'Palatino Linotype, BoldItalic,
22'; Height = 50; Layout = tlCenter.
Додаћемо пет едита за унос података и двадесет едита за
испис резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = (100, 205, 310, 415,
520); Top = 100; Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (50, 155, 260, 365, 470); ReadOnly = True; Top = (145, 190,
235, 280); Width = 100.
Испред свих едита као заглавље редова додаћемо по једну лабелу са следећим карактеристикама:
AutoSize = False; Caption = (Угао, sin, cos, tg, ctg); Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40;
Layout = tlCenter. Left = 10; Top = (100, 145, 190, 235, 280); Width = (50, 40, 40, 40, 40).
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (50, 210, 370); Top = 340; Width = 130.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit9.Clear;
Edit10.Clear;Edit11.Clear;Edit12.Clear;
Edit13.Clear;Edit14.Clear;Edit15.Clear;
Edit16.Clear;Edit17.Clear;Edit18.Clear;
Edit19.Clear;Edit20.Clear;Edit21.Clear;
Edit22.Clear;Edit23.Clear;Edit24.Clear;
Edit25.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var u,s,c,t:real;
begin u:=StrToFloatDef(Edit1.Text,5);Edit1.Text:=FloatToStr(u); // одреди
s:=sin(u/180*pi);Edit2.Text:=Format('%9.5f',[s]);
c:=cos(u/180*pi);Edit3.Text:=Format('%9.5f',[c]);
t:=s/c;Edit4.Text:=Format('%9.5f',[t]);
t:=1/t;Edit5.Text:=Format('%9.5f',[t]);
u:=StrToFloatDef(Edit6.Text,15);Edit6.Text:=FloatToStr(u);
s:=sin(u/180*pi);Edit7.Text:=Format('%9.5f',[s]);
c:=cos(u/180*pi);Edit8.Text:=Format('%9.5f',[c]);
t:=s/c;Edit9.Text:=Format('%9.5f',[t]);
t:=1/t;Edit10.Text:=Format('%9.5f',[t]);
u:=StrToFloatDef(Edit11.Text,25);Edit11.Text:=FloatToStr(u);
s:=sin(u/180*pi);Edit12.Text:=Format('%9.5f',[s]);
c:=cos(u/180*pi);Edit13.Text:=Format('%9.5f',[c]);
t:=s/c;Edit14.Text:=Format('%9.5f',[t]);
t:=1/t;Edit15.Text:=Format('%9.5f',[t]);
u:=StrToFloatDef(Edit16.Text,35);Edit16.Text:=FloatToStr(u);
s:=sin(u/180*pi);Edit17.Text:=Format('%9.5f',[s]);
c:=cos(u/180*pi);Edit18.Text:=Format('%9.5f',[c]);
t:=s/c;Edit19.Text:=Format('%9.5f',[t]);
t:=1/t;Edit20.Text:=Format('%9.5f',[t]);
u:=StrToFloatDef(Edit21.Text,45);Edit21.Text:=FloatToStr(u);
s:=sin(u/180*pi);Edit22.Text:=Format('%9.5f',[s]);
20 Мирослав Илић
Мирослав Илић 21
c:=cos(u/180*pi);Edit23.Text:=Format('%9.5f',[c]);
t:=s/c;Edit24.Text:=Format('%9.5f',[t]);
t:=1/t;Edit25.Text:=Format('%9.5f',[t]);
end;
Сачуваћемо програм у фолдеру 024 и извршити га притиском тастера Ф9.

1.25. Саставити програм који одређује висину хипотенузе и оштре углове (у степенима,
минутима и секундама) правоуглог троугла са катетама a и b.
Једноставне математичке формуле лако можемо P = a 2⋅ b = c 2⋅ h ⇒ h = a c⋅ b
написати у духу паскала и решити овај задатак. Треба α = A rcT g ( a ), β = 90 − α
o

знати да тригонометријске функције у паскалу раде са b

радијанима, па ове формуле треба допунити конверзијом радијана у степене.


Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Правоугли
троугао'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо два едита за унос података и осам едита за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 135; Top = (70, 115); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (185, 240, 295); ReadOnly = True; Top = (165, 210, 255,
300); Width = 50.
Испред едита ћемо додати по једну лабелу у сваком реду са следећим карактеристикама:
AutoSize = False; Caption = 'a =, b =, c =, h ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40;
Layout = tlCenter. Left = (90, 135); Top = (70, 115, 165, 210); Width = 50 и
AutoSize = False; Caption = (a =, b =); Font = 'Symbol, BoldItalic, 22'; Height = 40; Layout = tlCenter. Left
= 135; Top = (255, 300); Width = 50
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 360; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit9.Clear;
Edit10.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,h:real;
a1,a2,a3,b1,b2,b3:integer;
begin a:=StrToFloatDef(Edit1.Text,3);Edit1.Text:=FloatToStr(a); // одреди
b:=StrToFloatDef(Edit2.Text,4);Edit2.Text:=FloatToStr(b);
c:=Sqrt(a*a+b*b);Edit3.Text:=FloatToStr(c);
h:=a*b/c; Edit4.Text:=FloatToStr(h);
a3:=Round(ArcTan(a/b)/pi*180*3600); //alfa u sekundama
b3:=90*3600-a3; // beta u sekundama kao komplement
a1:=a3 div 3600; Edit5.Text:=IntToStr(a1);
a2:=a3 mod 3600 div 60;Edit6.Text:=IntToStr(a2);
a3:=a3 mod 60; Edit7.Text:=IntToStr(a3);
b1:=b3 div 3600; Edit8.Text:=IntToStr(b1);
b2:=b3 mod 3600 div 60;Edit9.Text:=IntToStr(b2);
b3:=b3 mod 60; Edit10.Text:=IntToStr(b3);
end;
Сачуваћемо програм у фолдеру 025 и извршити га притиском тастера Ф9.

Програмирање - први кораци 21


22 Програмирање - први кораци

1.26. Саставити програм који одређује спољашне углове (у степенима, минутима и


секундама) правоуглог троугла са катетом а и хипотенузином висином h.
Катета a, висина h и одсечак x на хипотенузи чине
правоугли троугао сличан великом. Спољашни угао је
суплемент унутрашњем. Збир спољашних углова
троугла је 360о, а један од њих је прав. Из свега овог
следе једноставне математичке формуле које лако x = a − h
2 2

можемо написати у духу паскала и решити овај задатак. α 1 = 1 8 0 − A rc T g ( x ),


o

h
Треба водити рачуна о томе да тригонометријске
β 1 = 270 − α
o

функције у паскалу раде са радијанима, па ове формуле


треба допунити конверзијом радијана у степене
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Спољашни углови троугла'; Font = 'Palatino
Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо два едита за унос података и седам едита за испис резултата са следећим
карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 130; Top = (90, 140); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (185, 240, 295); ReadOnly = True; Top = (190, 240, 290);
Width = 50.
Испред едита ћемо додати по једну лабелу у сваком реду са следећим карактеристикама:
AutoSize = False; Caption = 'a =, h ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 75; Top = (90, 140); Width = 50 и
AutoSize = False; Caption = 'a1 =, b1 =, g1 ='; Font = 'Symbol, BoldItalic, 22'; Height = 40; Layout =
tlCenter. Left = 130; Top = (190, 240, 290); Width = 50
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 360; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,h,x:real;
a1,a2,a3,b1,b2,b3:integer;
begin a:=StrToFloatDef(Edit1.Text,3);Edit1.Text:=FloatToStr(a); // одреди
h:=StrToFloatDef(Edit2.Text,2.4);Edit2.Text:=FloatToStr(h);
x:=Sqrt(a*a-h*h);
a3:=180*3600-Trunc(ArcTan(x/h)*180/pi*3600); //alfa u sekundama
b3:=270*3600-b3; //beta u sekundama
a1:=a3 div 3600; Edit3.Text:=IntToStr(a1);
a2:=a3 mod 3600 div 60;Edit4.Text:=IntToStr(a2);
a3:=a3 mod 60; Edit5.Text:=IntToStr(a3);
b1:=b3 div 3600; Edit6.Text:=IntToStr(b1);
b2:=b3 mod 3600 div 60;Edit7.Text:=IntToStr(b2);
b3:=b3 mod 60; Edit8.Text:=IntToStr(b3);
end;
Сачуваћемо програм у фолдеру 026 и извршити га притиском тастера Ф9.

22 Мирослав Илић
Мирослав Илић 23
1.27. Саставити програм који одређује углове (у степенима, минутима и секундама) троугла
ако су дате странице a, b и c.
Искористићемо косинусну теорему да одредимо a = b + c − 2 ⋅ b ⋅ c ⋅ cos α
2 2 2

два угла јер имамо све странице троугла. Трећи угао ћемо cos α = b + c − a 2 2 2

добити као допуну до 180о. Ове једноставне математичке 2 ⋅b ⋅c

формуле лако можемо написати у духу паскала и решити sin α = 1 − cos α


2

sin α
задатак. Треба водити рачуна о томе да тригонометријске α = A rcT g ( cos α
)
функције у паскалу раде са радијанима, па ове формуле b = c + a − 2 ⋅ c ⋅ a ⋅ cos β
2 2 2

треба допунити конверзијом радијана у степене c +a −b


2 2 2

Подесићемо карактеристике форме на следећи начин: cos β = 2 ⋅ c ⋅ a


Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = sin β = 1 − cos β 2

450; Position = poScreenCenter. β = A rcT g (


sin α
)
На форму ћемо ставити лабелу за наслов са cos α
γ = 180 − α − β
o
карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Решавање троугла'; Font = 'Palatino
Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо три едита за унос података и девет едита за испис резултата са карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 120; Top = (70, 115, 160); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (170, 230, 290); ReadOnly = True; Top = (210, 255, 300);
Width = 50.
Испред едита ћемо додати по једну лабелу у сваком реду са следећим карактеристикама:
AutoSize = False; Caption = 'a =, b =, c ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 70; Top = (70, 115, 160); Width = 50 и
AutoSize = False; Caption = 'a =, b =, g ='; Font = 'Symbol, BoldItalic, 22'; Height = 40; Layout = tlCenter.
Left = 120; Top = (210, 255, 300); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 360; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit9.Clear;
Edit10.Clear;Edit11.Clear;Edit12.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,p:real;
a1,a2,a3,b1,b2,b3,c1,c2,c3:integer;
begin a:=StrToFloatDef(Edit1.Text,3);Edit1.Text:=FloatToStr(a); // одреди
b:=StrToFloatDef(Edit2.Text,3);Edit2.Text:=FloatToStr(b);
c:=StrToFloatDef(Edit3.Text,3);Edit3.Text:=FloatToStr(c);
p:=(b*b+c*c-a*a)/(2*b*c);
a3:=Round(ArcTan(Sqrt(1-p*p)/p)/pi*180*3600); //alfa u sekundama
a1:=a3 div 3600; Edit4.Text:=IntToStr(a1);
a2:=a3 mod 3600 div 60;Edit5.Text:=IntToStr(a2);
a3:=a3 mod 60; Edit6.Text:=IntToStr(a3);
p:=(a*a+c*c-b*b)/(2*a*c);
b3:=Round(ArcTan(Sqrt(1-p*p)/p)/pi*180*3600); //beta u sekundama
b1:=b3 div 3600; Edit7.Text:=IntToStr(b1);
b2:=b3 mod 3600 div 60;Edit8.Text:=IntToStr(b2);
b3:=b3 mod 60; Edit9.Text:=IntToStr(b3);
c3:=180*3600-(a1*3600+b1*3600+a2*60+b2*60+a3+b3); //gama u sekundama
c1:=c3 div 3600; Edit10.Text:=IntToStr(c1);
c2:=c3 mod 3600 div 60;Edit11.Text:=IntToStr(c2);
c3:=c3 mod 60; Edit12.Text:=IntToStr(c3);
end;
Програмирање - први кораци 23
24 Програмирање - први кораци

Сачуваћемо програм у фолдеру 027 и извршити га притиском тастера Ф9.

1.28. Саставити програм који одређује обим и површину круга полупречника r.


Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 400; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Обим и
површина круга'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout
= tlCenter.
Додаћемо едит за унос података и два едита за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 160; Top = 100; Width = 120;
за испис: Font = 'Palatino Linotype, 18'; Left = 160; ReadOnly = True; Top =
(240, 310); Width = 120.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'r =, O =, P ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 100; Top = (100, 240, 310); Width = 60.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 170; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var r,p,o:real;
begin r:=StrToFloatDef(Edit1.Text,5); // одреди
Edit1.Text:=FloatToStr(r);
o:=2*r*pi;
p:=r*r*pi;
Edit2.Text:=Format('%1.2f',[o]);
Edit3.Text:=Format('%1.2f',[p]);
end;
Сачуваћемо програм у фолдеру 028 и извршити га притиском тастера Ф9.

1.29. Саставити програм који одређује периферијски угао који одговара тетиви t кружнице са
полупречником r.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Периферијски
угао'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо два едита за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 210; Top = (100, 160); Width = 50;
за испис: Font = 'Palatino Linotype, 18'; Left = (160, 215, 260); ReadOnly =
True; Top = 300; Width = (50, 40, 40).
Испред едита додаћемо три лабеле за комуникацију са корисником са карактеристикама:
AutoSize = False; Caption = 'r =, t ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 150; Top = (100, 160); Width = 50 и
24 Мирослав Илић
Мирослав Илић 25
AutoSize = False; Caption = 'a ='; Font = 'Symbol, BoldItalic, 22'; Height = 40; Layout = tlCenter. Left = 150;
Top = 300; Width = 50
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 230; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit5.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var t,r,h:real;
a1,a2,a3:integer;
begin r:=StrToFloatDef(Edit1.Text,5); // одреди
Edit1.Text:=FloatToStr(r);
t:=StrToFloatDef(Edit2.Text,5);
Edit2.Text:=FloatToStr(t);
h:=Sqrt(r*r-t*t/4);
a3:=Round(ArcTan(t/2/h)*180/pi*3600); //ugao u sekundama
a1:=a3 div 3600; Edit3.Text:=IntToStr(a1);
a2:=a3 mod 3600 div 60;Edit4.Text:=IntToStr(a2);
a3:=a3 mod 60; Edit5.Text:=IntToStr(a3);
end;
Сачуваћемо програм у фолдеру 029 и извршити га притиском тастера Ф9.

1.30. Саставити програм који одређује поврину, запремину и дијагоналу коцке са основицом а.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 450; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Површина и
запремина коцке'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50;
Layout = tlCenter.
Додаћемо едит за унос података и три едита за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 170; Top = 80; Width = 120;
за испис: Font = 'Palatino Linotype, 18'; Left = 170; ReadOnly = True; Top =
(200, 260, 320); Width = 120.
Испред сваког едита додаћемо лабелу за комуникацију са корисником са карактеристикама:
AutoSize = False; Caption = 'a =, P =, V =, D ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40;
Layout = tlCenter. Left = 120; Top = (80, 200, 260, 320); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 140; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit1.SetFocus;
end;

Програмирање - први кораци 25


26 Програмирање - први кораци

Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,p,v,d:real;
begin a:=StrToFloatDef(Edit1.Text,5); // одреди
Edit1.Text:=FloatToStr(a);
p:=6*a*a; Edit3.Text:=Format('%1.2f',[p]);
v:=a*a*a; Edit4.Text:=Format('%1.2f',[v]);
d:=a*Sqrt(3);Edit5.Text:=Format('%1.2f',[d]);
end;
Сачуваћемо програм у фолдеру 030 и извршити га притиском тастера Ф9.

1.31. Саставити програм који одређује површину, запремину и површину дијагоналног пресека
квадра са основицама а и b и дијагоналом D.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 440; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'К в а д а р'; Font =
'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо три едита за унос података и пет едита за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 60; Top = (85, 150, 215); Width = 100;
за испис: Font = 'Palatino Linotype, 18'; Left = 85; ReadOnly = True; Top = (85,
135, 185, 235, 285); Width = 150.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'a =, b =, D =, c =, d =, P =, V =, Pd ='; Font = 'Palatino Linotype, BoldItalic,
18'; Height = 40; Layout = tlCenter. Left = (10, 10, 10, 180, 180, 180, 180, 180); Top = (85, 150, 215, 85,
135, 185, 235, 285); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 350; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit7.Clear;Edit8.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,d,c,d1,p,v,pd:real;
begin a:=StrToFloatDef(Edit1.Text,3); // одреди
Edit1.Text:=FloatToStr(a);
b:=StrToFloatDef(Edit2.Text,4);
Edit2.Text:=FloatToStr(b);
d:=StrToFloatDef(Edit3.Text,13);
Edit3.Text:=FloatToStr(d);
d1:=Sqrt(a*a+b*b); Edit5.Text:=Format('%9.2f',[d1]);
c :=Sqrt(d*d-d1*d1);Edit4.Text:=Format('%9.2f',[c]);
p :=2*(a*b+b*c+c*a);Edit6.Text:=Format('%9.2f',[p]);
v :=a*b*c; Edit7.Text:=Format('%9.2f',[v]);
pd:=d1*c; Edit8.Text:=Format('%9.2f',[pd]);
end;
Сачуваћемо програм у фолдеру 031 и извршити га притиском тастера Ф9.

26 Мирослав Илић
Мирослав Илић 27
1.32. Саставити програм који одређује површину и запремину правилне тростране пирамиде
са основицом а и бочном ивицом s.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Тространа
пирамида'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо два едита за унос података и четири едита за испис
резултата са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 130; Top = (80, 125); Width = 60;
за испис: Font = 'Palatino Linotype, 18'; Left = 190; ReadOnly = True; Top =
(170, 215, 260, 305); Width = 160.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'a =, s =, h =, H =, P =, V ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height =
40; Layout = tlCenter. Left = (80, 80, 130, 130, 130, 130); Top = (80, 125, 170, 215, 260, 305); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 360; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,s,p,v,h,h1:real;
begin a:=StrToFloatDef(Edit1.Text,3); // одреди
Edit1.Text:=FloatToStr(a);
s:=StrToFloatDef(Edit2.Text,4);
Edit2.Text:=FloatToStr(s);
h1:=Sqrt(s*s-a*a/4); Edit3.Text:=Format('%8.3f',[h1]);
h:=Sqrt(s*s-a*a/3); Edit4.Text:=Format('%8.3f',[h]);
p:=a*a*Sqrt(3)/4+3*a*h1/2;Edit5.Text:=Format('%8.3f',[p]);
v:=a*a*Sqrt(3)/4*h/3; Edit6.Text:=Format('%8.3f',[v]);
end;
Сачуваћемо програм у фолдеру 032 и извршити га притиском тастера Ф9.

1.33. Саставити програм који одређује површину и запремину правилне шестостране


пирамиде са основицом а и бочном ивицом s.
Подесићемо карактеристике форме на следећи начин:
Caption = 'РЕАЛНИ БРОЈЕВИ'; Height = 450; Width = 450; Position = poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Шестострана пирамида'; Font = 'Palatino
Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо два едита за унос података и четири едита за испис резултата са следећим
карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 130; Top = (80, 125); Width = 60;
за испис: Font = 'Palatino Linotype, 18'; Left = 190; ReadOnly = True; Top = (170, 215, 260, 305); Width =
160.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:

Програмирање - први кораци 27


28 Програмирање - први кораци

AutoSize = False; Caption = 'a =, s =, h =, H =, P =, V ='; Font = 'Palatino


Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = (80, 80, 130,
130, 130, 130); Top = (80, 125, 170, 215, 260, 305); Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption =
'Одреди, Поново, Крај'; Font = 'Palatino Linotype, Bold, 18'; Height = 40; Left
= (10, 140, 270); Top = 360; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се
прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear;Edit3.Clear; // тастер поништи
Edit4.Clear;Edit5.Clear;Edit6.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,s,p,v,h,h1:real;
begin a:=StrToFloatDef(Edit1.Text,3); // одреди
Edit1.Text:=FloatToStr(a);
s:=StrToFloatDef(Edit2.Text,4);
Edit2.Text:=FloatToStr(s);
h1:=Sqrt(s*s-a*a/4); Edit3.Text:=Format('%8.3f',[h1]);
h:=Sqrt(s*s-a*a); Edit4.Text:=Format('%8.3f',[h]);
p:=3*a*a*Sqrt(3)/2+3*a*h1;Edit5.Text:=Format('%8.3f',[p]);
v:=a*a*Sqrt(3)/2*h; Edit6.Text:=Format('%8.3f',[v]);
end;
Сачуваћемо програм у фолдеру 033 и извршити га притиском тастера Ф9.

Тип boolean

1.34. Саставити програм који одређује истиносну вредност формуле (p∨q)∧r, где су p, q и r
искази дате истиносне вредности.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЛОГИЧКИ ТИП'; Height = 400; Width = 410; Position = poScreenCenter.
На форму ћемо ставити три лабеле за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Истиносна
вредност формуле'; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 30;
Layout = tlTop;
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = ' t = ( Ъ ) Щ ';
Font = 'Symbol, Italic, 18'; Height = 30; Layout = tlCenter.
Align = alNone; Alignment = taCenter; AutoSize = False; Caption = ' p q r';
Font = 'Palatino Linotype, Italic, 18'; Height = 30; Layout = tlCenter;
Transparent = true; (овде смо практично поставили трећу лабелу преко
друге да бисмо превазишли недостатак карактеристике Caption -
немогућност комбиновања два или више фонтова.
Додаћемо три комбобокса за унос података и један едит за испис резултата са следећим
карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 150; ItemIndex = -1; Items = (True, False); Top = (90, 135,
180); Width = 145;
за испис: Font = 'Palatino Linotype, 18'; Left = 150; ReadOnly = True; Top = 245; Width = 145.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником и још једну
лабелу као црту за подвлачење са следећим карактеристикама:
AutoSize = False; Caption = 'p =, q =, r ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 36; Layout =
tlCenter. Left = 100; Top = (90, 135, 180); Width = 50;
28 Мирослав Илић
Мирослав Илић 29
AutoSize = False; Caption = 't ='; Font = 'Symbol, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 100;
Top = 245; Width = 50 и
AutoSize = False; Caption = ''; Height = 5; Left = 80; Top = 230; Width = 230;
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 310; Width = 120.
Овде смо први пут употребили објекат комбобокс (ComboBox). Овај објекат се користи
онда када треба нечему дати вредност која није произвољна него може бити једна из тачно
одређеног и ограниченог скупа. Дозвољене вредности се уписују приликом креирања програма у
карактеристику Items, а могу се додавати и програмски, а избор се врши тако што се кликне на
стрелицу са десне стране и из отвореног менија кликом изабере одговарајућа вредност која се
преноси у Text карактеристику објекта. Програмски се може дефинисати да Text
карактеристика има или нема почетну, предефинисану вредност карактеристиком ItemIndex
(ако је вредност -1 нема почетну вредност, а ако је 0, 1, ... почетна вредност је први, други, ... ред из
датотеке. Овим објектом се кориснику онемогућава погрешан унос података, али га није могуће увек
користити.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin ComboBox1.ItemIndex:=-1; // тастер поништи
ComboBox2.ItemIndex:=-1;
ComboBox3.ItemIndex:=-1;
Edit1.Clear;Button1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var p,q,r,t:boolean;
begin p:=StrToBoolDef(ComboBox1.Text,false); // одреди
q:=StrToBoolDef(ComboBox2.Text,false);
r:=StrToBoolDef(ComboBox3.Text,false);
t:=(p or q)and r;
Edit1.Text:=BoolToStr(t,true);
end;
Сачуваћемо програм у фолдеру 034 и извршити га притиском тастера Ф9.

1.35. Саставити програм који одређује истиносну вредност исказа: Број а је дељив бројем б,
где су а и б дати цели бројеви.
Подесићемо карактеристике форме на следећи начин:
Caption = 'ЛОГИЧКИ ТИП'; Height = 380; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Да ли је а дељиво
са б ?'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо два едита за унос података и едит за испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 150; Top = (90, 150); Width = 145;
за испис: Font = 'Palatino Linotype, 18'; Left = 150; ReadOnly = True; Top =
290; Width = 145.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'a =, b ='; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout =
tlCenter. Left = 100; Top = (90, 150); Width = 50 и
AutoSize = False; Caption = 't ='; Font = 'Symbol, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 100;
Top = 290; Width = 50.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 240; Width = 120.
Програмирање - први кораци 29
30 Програмирање - први кораци

Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var t:boolean;
a,b,kod:integer;
begin a:=StrToIntDef(Edit1.Text,0); // одреди
Edit1.Text:=IntToStr(a);
b:=StrToIntDef(Edit2.Text,1);
Edit2.Text:=IntToStr(b);
t:=a mod b = 0;
Edit3.Text:=BoolToStr(t,true);
end;
Сачуваћемо програм у фолдеру 035 и извршити га притиском тастера Ф9.

Тип string

1.36. Саставити програм који са тастатуре прихвата једну реч и једно слово, а затим
одређује дужину уписане речи и редни број уписаног слова ако је у речи.
Подесићемо карактеристике форме на следећи начин:
Caption = 'СТРИНГОВНИ ТИП'; Height = 410; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Дужина речи и
позиција'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо два едита за унос података и два едита за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 210; Top = (80, 130); Width =
160;
за испис: Font = 'Palatino Linotype, 18'; Left = 250; ReadOnly = True; Top = (270, 320); Width = 90.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'Упишите реч, Упишите слово, Број слова у речи, Редни број слова'; Font
= 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = (30, 30, 50, 50); Top = (80, 130,
270, 320); Width = (180, 180, 200, 200).
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 200; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit1.SetFocus;
end;

30 Мирослав Илић
Мирослав Илић 31
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b:string;
c,d:integer;
begin a:=Edit1.Text; // одреди
b:=Edit2.Text;
c:=Length(a);Edit3.Text:=IntToStr(c);
d:=Pos(b,a); Edit4.Text:=IntToStr(d);
end;
Сачуваћемо програм у фолдеру 036 и извршити га притиском тастера Ф9.

1.37. Саставити програм који са тастатуре прихвата једну реч и цео број, а затим из унете
речи издваја са почетка и са краја речи унети број слова.
Подесићемо карактеристике форме на следећи начин:
Caption = 'СТРИНГОВНИ ТИП'; Height = 410; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Издвајање
подстрингова'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо два едита за унос података и два едита за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 210; Top = (80, 130); Width = 170;
за испис: Font = 'Palatino Linotype, 18'; Left = 210; ReadOnly = True; Top =
(270, 320); Width = 170.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'Упишите реч, Упишите број, Слова с почетка, Слова с краја'; Font =
'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 20; Top = (80, 130, 270, 320);
Width = 190.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 200; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a,b:string;
n:integer;
begin a:=Edit1.Text; // одреди
n:=StrToIntDef(Edit2.Text,0);
Edit2.Text:=IntToStr(n);
b:=Copy(a,1,n); Edit3.Text:=b;
Delete(a,1,Length(a)-n);Edit4.Text:=a;
end;
Сачуваћемо програм у фолдеру 037 и извршити га притиском тастера Ф9.

Програмирање - први кораци 31


32 Програмирање - први кораци

1.38. Саставити програм који са тастатуре прихвата једну реч и два слова, а затим у унетој
речи на клик тастера прво уписано слово (ако постоји у речи) замењује другим уписаним
словом.
Подесићемо карактеристике форме на следећи начин:
Caption = 'СТРИНГОВНИ ТИП'; Height = 410; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Замена слова у
речи'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout = tlCenter.
Додаћемо три едита за унос података и један едит за испис резултата
са следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = (220, 260, 260); Top = (80, 130,
180); Width = (170, 80, 80);
за испис: Font = 'Palatino Linotype, 18'; Left = 220; ReadOnly = True; Top =
320; Width = 170.
Испред сваког од едита додаћемо по једну лабелу за комуникацију са корисником са следећим
карактеристикама:
AutoSize = False; Caption = 'Упишите реч, Слово које се мења, Слово којим се мења, Новодобијена
реч'; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout = tlCenter. Left = 20; Top = (80, 130,
180, 320); Width = 200, 240, 240, 200).
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 250; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Edit3.Clear;Edit4.Clear;
Edit1.SetFocus;
end;
Реч a мора да се чита изван радне процедуре, иначе ће се само прво појављивање изабраног
слова мењати другим словом. То ћемо остварити процедуром која представља реакцију на излазак
из првог едита - Edit1Exit, кликнемо једном на први едит, па у Object Inspector-у пређемо на листић
Events и пронађемо догађај OnExit. Двокликом у поље вредности дефинисаћемо процедуру:
procedure TForm1.Edit1Exit(Sender: TObject);
begin a:=Edit1.Text;
end;
А да би се вредност променљиве a преносила из процедуре у процедуру она мора бити
глобална (на почетку програма у делу за декларације који почиње службеном речи Var додамо
декларацију a:string;). Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се
решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var b,c:string;
n,m:integer;
begin m:=Length(a); // одреди
b:=Edit2.Text;
c:=Edit3.Text;
n:=Pos(b,a);
Delete(a,n,1);
Insert(c,a,n);
a:=Copy(a,length(a)-m+1,m);Edit4.Text:=a;
end;
Сачуваћемо програм у фолдеру 038 и извршити га притиском тастера Ф9.

32 Мирослав Илић
Мирослав Илић 33
1.39. Саставити програм који са тастатуре прихвата једну реч, а затим на клик тастера у
унетој речи прво слово премешта на крај речи.
Подесићемо карактеристике форме на следећи начин:
Caption = 'СТРИНГОВНИ ТИП'; Height = 240; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Премештање
слова у речи'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо едит за унос података и испис резултата са следећим карактеристикама:
Font = 'Palatino Linotype, 18'; Left = 165; Top = 80; Width = 230.
Испред едита ћемо додати лабелу за комуникацију са корисником са следећим карактеристикама:
AutoSize = False; Caption = 'Упишите реч'; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout
= tlCenter. Left = 10; Top = 80; Width = 155.
Додаћемо и три тастера са следећим карактеристикама: Caption = 'Одреди, Поново, Крај'; Font
= 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 140, 270); Top = 150; Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;
Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear; // тастер поништи
Edit1.SetFocus;
end;
Двокликом мишем на тастер Одреди дефинисаћемо процедуру којом се решава проблем из задатка:
procedure TForm1.Button1Click(Sender: TObject);
var a:string;
begin a:=Edit1.Text; // одреди
a:=Copy(a,2,length(a)-1)+Copy(a,1,1);
Edit1.Text:=a;
end;
Сачуваћемо програм у фолдеру 039 и извршити га притиском тастера Ф9.

1.40. Саставити програм који са тастатуре прихвата једну реч, а затим је исписује са свим
малим и свим великим словима (наизменичнона клик тастера).
Подесићемо карактеристике форме на следећи начин:
Caption = 'СТРИНГОВНИ ТИП'; Height = 310; Width = 410; Position =
poScreenCenter.
На форму ћемо ставити лабелу за наслов са карактеристикама:
Align = alTop; Alignment = taCenter; AutoSize = False; Caption = 'Мала у велика и
обрнуто'; Font = 'Palatino Linotype, BoldItalic, 22'; Height = 50; Layout =
tlCenter.
Додаћемо по један едит за унос података и испис резултата са
следећим карактеристикама:
за унос: Font = 'Palatino Linotype, 18'; Left = 170; Top = 80; Width = 220.
за испис: Font = 'Palatino Linotype, 18'; Left = 170; ReadOnly = True; Top = 220; Width = 220.
Испред едита ћемо додати лабелу за комуникацију са корисником са следећим карактеристикама:
AutoSize = False; Caption = 'Упишите реч'; Font = 'Palatino Linotype, BoldItalic, 18'; Height = 40; Layout
= tlCenter. Left = 10; Top = 80; Width = 155.
Додаћемо и четири тастера са следећим карактеристикама: Caption = 'Одреди, Одреди,
Поново, Крај'; Font = 'Palatino Linotype, Bold, 18'; Height = 40; Left = (10, 10, 140, 270); Top = 150;
Width = 120.
Двокликом мишем на тастер Крај дефинисаћемо процедуру којом се прекида извршење програма:
procedure TForm1.Button3Click(Sender: TObject);
begin Application.Terminate; // тастер крај
end;

Програмирање - први кораци 33


34 Програмирање - први кораци

Двокликом мишем на тастер Поново дефинисаћемо процедуру којом се брише садржај свих
едита и курсор поставља у едит за упис (први едит се ставља у жижу):
procedure TForm1.Button2Click(Sender: TObject);
begin Edit1.Clear;Edit2.Clear; // тастер поништи
Button1.Visible:=true;
Button4.Visible:=false;
Label3.Caption:='Сва мала';
Edit1.SetFocus;
end;
Двокликом мишем на први тастер Одреди дефинисаћемо процедуру којом се велика слова у
речи претвара у велика:
procedure TForm1.Button1Click(Sender: TObject);
var a:string;
begin a:=Edit1.Text;
a:=UpperCase(a);Edit2.Text:=a;
Button1.Visible:=false;
Button4.Visible:=true;
Label3.Caption:='Сва велика';
end;
Двокликом мишем на други тастер Одреди дефинисаћемо процедуру којом се мала слова у
речи претвара у мала:
procedure TForm1.Button4Click(Sender: TObject);
var a:string;
begin a:=Edit1.Text;
a:=LowerCase(a);Edit2.Text:=a;
Button1.Visible:=true;
Button4.Visible:=false;
Label3.Caption:='Сва мала';
end;
Сачуваћемо програм у фолдеру 040 и извршити га притиском тастера Ф9.

34 Мирослав Илић

You might also like