Laboratorium z informatyki sern.II / ćw.2 Wydział Transportu P.W.
1. W części implementacyjnej modułu umieść deklarację funkcji obliczającej silnię wartości podawanej jako parametr typu całkowitego:
function Silnia(n: Integer): Integer;
var i: Integer;
begin
Result:= 1;
for i:= 2 to n do Result:= Result1 2i; end;
2. Na wzór procedury PiszWynik z punktu II zadeklaruj procedurę formy Blad bez parametrów, która na etykiecie Loperacja wyświetla napis ' Błędny argument' i usuwa napis z etykiety Lwynik.
3. Do elementu menu z poleceniem n silnia przypisz procedurę obsługi domyślnego zdarzenia OnCIick. Zadeklaruj zmienną n typu całkowitego i wpisz instrukcje:
n:= StrToIntDef(Editl.Text, -1); if n>=0 then
PiszWynik(Editl.Text + ' Silnia (n)) else Blad;
1. Kliknij dwukrotnie komponent MainMenul. Za pomocą strzałki w prawo lub kliknięcia uaktywnij pole leżące na prawo od pola Funkcje 1_. We właściwości Caption na zakładce Properties okna Object Inspcctor wpisz Funkcje&2.
2. Podobnie jak poprzednio utwórz trzy pozycje w tej grupie: Pole k&oła, Objętość s&ześcianu i Objętość &kuli z odpowiednimi klawiszami skrótu.
3. Dwukrotnie kliknij pozycję menu Pole koła tworząc dla niej procedurę obsługi zdarzenia OnCIick; wpisz jej treść:
var r: Real; begin
r:= StrToFloat(Editl.Text);
PiszWynik('Pole koła o promieniu ' + Editl.Text, Pi2r2r); end;
4. Skompiluj i uruchom program. Przetestuj działanie polecenia Pole koła z menu Funkcje 2.
5. Wzorując się na obsłudze zdarzenia OnCIick dla pozycji menu Pole koła napisz odpowiednie procedury obsługi zdarzeń OnCIick dla pozycji Objętość sześcianu i Objętość kuli.
Skompiluj i uruchom program. Wypróbuj działanie wszystkich pozycji obu grup Menu.
1. Zastąp treść procedury wyliczającej pole koła instrukcjami:
r:= StrToFloatDef(Editl.Text, -1); if r>=0 then
PiszWynik('Pole koła o promieniu ' + Editl.Text, Pi2r2r) else Blad;
2. Analogicznie zmień treść pozostałych dwóch procedur z tej grupy.
3. Uruchom aplikację i sprawdź jej zachowanie.
2
Rozwinięcie aplikacji
• Uzupełnij procedurę obsługi polecenia menu Suma kwadratów 1..n o sprawdzanie, czy argument jest nieujemny.
• Dodaj do pierwszego menu trzecie polecenie, wyliczające odwrotność liczby całkowitej.
• Zadeklaruj funkcję obliczającą sumę liczb całkowitych od 1 do n. Wykorzystaj ją w czwartym poleceniu pierwszego menu.
Wyświetlaj wyniki typu rzeczywistego z dokładnością do zadanej liczby miejsc po przecinku używając funkcji FloatToStrF lub procedury Sfr (patrz materiały pomocnicze).