PROGRAM: WYSZUKANIE LICZBY MAKSYMALNEJ 1. Na dysku STUDENT we własnym folderze utwórz podfolder o nazwie: WarMax. 2. Uruchom program Delphi. 3. Zapamiętaj w folderze WarMax poszczególne pliki tworzące program (z menu File Save All) używając następujących nazw: > Unit zapamiętaj jako: UWarMax.pas > Projekt zapamiętaj jako: PWarMax.dpr. Proponowany wygląd formularza okna głównego tworzonej aplikacji 4. Na formularzu tworzonego programu umieść następujące obiekty i korzystając z Object Inspector a ustaw własności każdego obiektu wg poniższych wskazówek: > Etykietę Label - obiekt Label1 Caption: Program wyszukujący liczbę maksymalną z trzech Left: 130 Top: 40 Font: styl czcionki: pogrubienie, rozmiar: 17, kolor: zielony > Pierwszy element grupujący - obiekt typu Panel, na którym umieszczone będą okienka edycyjne i opisy dla wprowadzanych liczb, skasuj zawartość własności Caption, 1
> Na pierwszym panelu umieść cztery pola edycyjne Edit, dla poszczególnych liczb o własności dla obiektu Edit1 (aby określić jego własności najpierw wskaż obiekt): Name: Ea o własności dla obiektu Edit2: Name: Eb o własności dla obiektu Edit3: Name: Ec o własności dla obiektu Edit4: Name: Ed > Na pierwszym panelu umieść cztery etykiety (odpowiednio każda do pola edycyjnego) o własności dla obiektu Label2 obok obiektu Ea (aby określić jego własności najpierw wskaż obiekt): Caption: Liczba a: o własności dla obiektu Label3 obok obiektu Eb : Caption: Liczba b: o własności dla obiektu Label4 obok obiektu Ec Caption: Liczba c: o własności dla obiektu Label5 obok obiektu Ed Caption: Liczba d : > Drugi element grupujący - obiekt typu Panel, na którym umieszczone będą: okienko edycyjne i opis dla wyszukanej wartości maksymalnej, skasuj zawartość własności Caption, > Na drugim panelu umieść pole edycyjne Edit, dla wyszukanej liczb maksymalnej o własności dla obiektu Edit5: Name: Emax > Na drugim panelu umieść etykietę obok obiektu Emax o własności dla obiektu Label6 obok obiektu Caption: Liczba Max: Font: styl czcionki: pogrubienie, rozmiar: 12, kolor: czerwony > Na formularzu umieść dwa przyciski z obrazkami BitBtn (zakładka Additional) o własności dla obiektu BitBtn1: Name: pwyszukaj 2
Caption: Wyszukaj liczbę największą Font: styl czcionki: pogrubienie, rozmiar: 10 Glyph: C:\Program Files\Common Files\Borland Shared\Images\Buttons\Calculat.bmp o własności dla obiektu BitBtn2: Name: pkoniec Caption: Koniec Font: styl czcionki: pogrubienie, rozmiar: 10 Glyph: C:\Program Files\Common Files\Borland Shared\Images\Buttons\Picture.bmp 5. Zadeklaruj zmienne typu całkowitego dla przechowywania wprowadzanych danych (liczba a, b, c i d) oraz dla przechowywania wyniku (liczba max). Zrealizuj wg poniższych wskazówek: o jeżeli na ekranie wyświetlany jest formularz, to kliknij na przycisk z paska narzędzi w celu przełączenia na pokazywania treści programu (unit UWyszMax) o ustaw kursor w nowym wierszu po słowie implementation i wpisz deklarację: var a, b, c, d, max: Integer; 6. Dla obiektów pkoniec i pwyszukaj napisz procedury zawierające polecenia obsługi zdarzeń w postaci kliknięcia myszką na danym przycisku, wg poniższych wskazówek: o Dla przycisku pkoniec zdarzenie polega na zamknięciu aplikacji po uprzednim kliknięciu myszką na przycisku; W celu wpisania odpowiedniego polecenia kliknij dwukrotnie na przycisku z napisem Koniec i w nowootwartym (oknie z treścią UWyszMax) uzupełnij procedurę obsługi zdarzenia wpisując między i end polecenie Close; procedure TForm1.pKoniecClick(Sender: TObject); Close; o Dla przycisku pwyszukaj po kliknięciu myszką na przycisku zdarzenie ma realizować następującą procedurę: pobranie z formularza na ekranie wartości liczb a, b, c i d jako łańcucha znaków oraz zamiana na liczb całkowite - polecenie StrToInt; sprawdzenie warunków wg algorytmu, która z liczb jest maksymalna; zamiana wyszukanej wartości maksymalnej na łańcuch znaków polecenie IntToStr i wyświetlenie na formularzu na ekranie W celu wpisania odpowiednich poleceń kliknij dwukrotnie na przycisku z napisem Wyszukaj i w nowootwartym (oknie z treścią UWyszMax) uzupełnij procedurę obsługi tego zdarzenia wpisując między i end polecenia. 7. Zapamiętaj stworzoną aplikację (z menu File Save All). 8. Dokonaj kompilacji programu wciskając przyciski CTRL+F9. Popraw ewentualne wskazane przez kompilator błędy. Zapamiętaj wprowadzone poprawki. 9. Uruchom stworzony program i sprawdź jego działanie. 10. Zamknij program Delphi. 3
unit UMax; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls; type TForm1 = class(tform) Label5: TLabel; pwyszukaj: TBitBtn; pkoniec: TBitBtn; Panel1: TPanel; Ea: TEdit; Eb: TEdit; Ec: TEdit; Label1: TLabel; Label6: TLabel; Label3: TLabel; Label7: TLabel; Ed: TEdit; Panel2: TPanel; Label4: TLabel; Emax: TEdit; plosuj: TBitBtn; procedure pkoniecclick(sender: TObject); procedure pwyszukajclick(sender: TObject); procedure plosujclick(sender: TObject); private { Private declarations } public { Public declarations } var Form1: TForm1; implementation {$R *.DFM} var a, b, c, d, max: Integer; procedure TForm1.pKoniecClick(Sender: TObject); Close; procedure TForm1.pWyszukajClick(Sender: TObject); a:=strtoint(ea.text); b:=strtoint(eb.text); c:=strtoint(ec.text); d:=strtoint(ed.text); max:=a; if b>=max then max:=b; if c>=max then max:=c; if d>=max then max:=d; Emax.Text:=IntToStr(max); 4
procedure TForm1.pLosujClick(Sender: TObject); Randomize; a:=random(100); b:=random(100); c:=random(100); d:=random(100); Ea.Text:=IntToStr(a); Eb.Text:=IntToStr(b); Ec.Text:=IntToStr(c); Ed.Text:=IntToStr(d); end. 5