www.mamboteam.com
Project1.pl Advertisement
Start arrow Artykuły arrow Kurs Delphi arrow Rozdział VI - Instrukcje warunkowe
czwartek, 09 wrzesień 2010
 
 
Menu główne
Start
Artykuły
FAQ
Download
Kontakt
Ciekawe linki
Mapa serwisu
Logowanie





Zapomniałeś hasła?
Nie masz konta? Załóż sobie
Rozdział VI - Instrukcje warunkowe Drukuj E-mail
Oceny: / 0
KiepskiBardzo dobry 
Napisał: Berl   
sobota, 25 październik 2008
W skład instrukcji warunkowych wchodzi między innymi instrukcja if. Służy ona do porównywania wartości i wykonywania działań w zależności od wyniku tego porównania.




 
  if X = 45 then
    X := 0;
Konstrukcja jest prosta. Na samym początku słowo if, później warunek, czyli w tym wypadku porównanie wartości. Jeżeli zmienna X ma wartość 45 to wykonywana zostaje operacja po słowie then. Oczywiście możesz to łączyć za pomocą operatorów:
 
  if (X = 45) and (Y = 145) then
    { instrukcje do wykonania }
W tym wypadku instrukcje coś tam, coś tam :) zostaną wykonane jeżeli dwa parametry X i Y mają takie wartości jak powyżej. W takim wypadku należy dwa warunki wziąść w nawias. Możliwe jest także powiązanie tych operatorów:
 
  if (X = 45) and not (Y = 145) then
    { instrukcje do wykonania }
W tym wypadku natomiast jeżeli zmienna X będzie miała wartość 45, a zmienna Y NIE BĘDZIE miała wartości 145 to wykonane zostaną instrukcje. Możliwe jest dodanie słowa else co oznacza instrukcje, które będą wykonywane jeżeli warunek nie zostanie spełniony.
 
procedure TForm1.Button1Click(Sender: TObject);
var
  X, Y : Integer;
begin
  Randomize;
  X := Random(255);
  Y := Random(255);
  if (X = 45) and not (Y = 145) then ShowMessage('Trafiłeś')
  else ShowMessage('Nie trafiles');
end;
W przykładzie powyżej dwóm zmiennom zostaną przypisane losowo wybrane liczby. Następnie porówanie tych liczb. Jeżeli zmienna X będzie miała wartość 45, a Y nie będzie miał wartości 145 to zostanie wyświetlony komunikat. Taka sytuacja praktycznie się nie zdarzy bo wtedy nalezy mieć naprawdę dużo szczęścia :) No, ale jeżeli taka sytuacja sie nie zdarzy to zostanie wyświetlony inny komunikat. Budowe instrukcji if można by było zilustrować tak:
 
if < instrukcje początkowe - warunek> then
  < instrukcje do wykonania w przypadku spełnienia warunku >
else < instrukcje "w przeciwnym wypadku" >
UWAGA! Jak dotąt prezentowałem przykłady gdzie pomiędzy blokiem then, a else następowała tylko jedna instrukcja. Gdyby było ich więcej należałoby wziąść te instrukcje w słowa begin..end.
 
  if X <> 45 then  
  begin 
    ShowMessage('Trafiłeś');
    Y := X;
  end
  else ShowMessage('Nie trafiles');
W takim wypadku po instrukcji if następowały dwa polecenia. To znaczy, że trzeba już ten blok wziąść w słowa begin..end. Niekiedy instrukcja if może się wydać mało wystarczająca. Jeżeli chcemy porównać wiele wyników przychodzi z pomocą instrukcja case.
 
procedure TForm1.Button1Click(Sender: TObject);
var
  X : Integer;
begin
  Randomize; // losowanie
  X := Random(5);
    case X of
      0: ShowMessage('Wylosowałeś 0!!');
      1: ShowMessage('Wylosowałeś 1!!');
      else ShowMessage('NIC');
    end;
end;
W tym wypadku następuje losowanie spośród 5 cyfr.W przypadku wylosowania cyfry 0 zostanie generowany odpowiedni komunikat, jeżeli 1 inny komunikat. Natomiast jeżeli wylosowana liczba jest nieobsługiwana przez naszą instrukcje, to generowany jest komunikat z napisem "NIC".
Komentarze

Aby dodać komentarz zaloguj się. Jeśli nie masz konta, załóż je sobie.
Tylko zarejestrowani użytkownicy mogą pisać komentarze.

 
wstecz   dalej »
LINKUJ PRO
Gościmy
Odwiedza nas 12 gości
Licznik odwiedzin
117620
 
Góra Góra