50 Aplikacje w Delphi. Przykłady
50 Aplikacje w Delphi. Przykłady
Wprowadzenie łańcucha znaków |
Zamiana typu string na typ liczbowy |
Obliczenia H |
Zamiana wyników obliczeń (liczby) na | ||
(typ string) |
(konwersja) |
typ string |
Wyświetlenie wyników
Rysunek 4.1. Schemat wykonywania obliczeń dla danych wprowadzonych z klawiatury
Funkcje konwersji można podzielić na kilka grup, w zależności od parametrów wejściowych i zwracanych wartości. W tabelach opisano znaczenie wybranych funkcji konwersji.
Funkcje zamieniające tekst na liczbę — stosowane przy pobieraniu danych liczbowych w celu wykonania na nich obliczeń •— przedstawiono w tabeli 4.1.
Tabela 4.1. Funkcje i procedury konwertujące łańcuch znaków na liczbą
Znaczenie
Funkcja lub procedura
StrToInt
StrToIntDef
StrToFloat
Val
Funkcja zamienia łańcuch znaków na liczbę całkowitą— typu Integer, np.: StrToInt (Editl .Text) — zamiana zawartości okienka Editl na liczbę całkowitą.
Funkcja zamienia łańcuch znaków na liczbę całkowitą. Jeśli łańcuch znaków nie jest liczbą całkowitą, to funkcja zwraca wartość domyślną określoną przez drugi parametr. Na przykład w instrukcji:
liczba := StrToIntDef (Editl.Text, 0): zmiennej 1 i czba typu i nteger zostanie przypisana liczba całkowita z okienka Editl, jeśli wprowadzono jąprawidłowo (tylko cyfry); jeżeli nie, to zmiennej liczba przypisana zostanie wartość 0.
Funkcja zamienia łańcuch znaków na liczbę rzeczywistą— liczba rzeczywista powinna być wpisana z separatorem takim, jak w ustawieniach regionalnych systemu Windows (przecinek lub kropka); w przeciwnym razie wystąpi błąd konwersji.
Procedura z parametrami ma postać: Val (S; var V; var Codę: Integer). Umożliwia ona zamianę łańcucha znaków S (stri ng) na liczbę V typu całkowitego lub rzeczywistego. W parametrze Codę typu integer zwracany jest kod błędu.
Jeśli kod jest różny od zera, to znaczy, że tekst nie jest prawidłowo zapisaną liczbą. Wartość parametru Codę to pozycja znaku w łańcuchu S, gdzie wystąpił błąd, np.:
Val(Editl.Text, Rl, Kodl);
if Kodl<>0 then ShowMessageC’BI ad w oknie Editl na pozycji: ' + ^IntToStr(Kodl)) _
W tabeli 4.2 przedstawiono funkcje konwersji typu liczbowego na typ łańcuchowy (stri ng), które są stosowane zwykle przy wyświetlaniu liczb.