Pascal - typy zmiennych

Zmienna to nic innego jak nazwa nadana obszarowi pamięci, którym nasze programy mogą manipulować. Każda zmienna w Pascalu ma określony typ, który określa rozmiar i układ pamięci zmiennej; zakres wartości, które mogą być przechowywane w tej pamięci; oraz zestaw operacji, które można zastosować do zmiennej.

Nazwa zmiennej może składać się z liter, cyfr i znaku podkreślenia. Musi zaczynać się od litery lub podkreślenia. Pascal jestnot case-sensitive, więc wielkie i małe litery oznaczają to samo tutaj. W oparciu o podstawowe typy wyjaśnione w poprzednim rozdziale, będą następujące podstawowe typy zmiennych -

Podstawowe zmienne w języku Pascal

Sr.No Typ i opis
1

Character

Zwykle pojedynczy oktet (jeden bajt). To jest typ całkowity.

2

Integer

Najbardziej naturalny rozmiar liczby całkowitej dla maszyny.

3

Real

Wartość zmiennoprzecinkowa o pojedynczej precyzji.

4

Boolean

Określa wartości logiczne prawda lub fałsz. Jest to również typ całkowity.

5

Enumerated

Określa listę zdefiniowaną przez użytkownika.

6

Subrange

Reprezentuje zmienne, których wartości mieszczą się w określonym zakresie.

7

String

Przechowuje tablicę znaków.

Język programowania Pascal pozwala również na definiowanie różnych innych typów zmiennych, które omówimy w kolejnych rozdziałach, takich jak Wskaźnik, Tablica, Rekordy, Zbiory, Pliki itp. W tym rozdziale przyjrzymy się tylko podstawowym typom zmiennych.

Deklaracja zmiennej w języku Pascal

Wszystkie zmienne muszą być zadeklarowane zanim użyjemy ich w programie Pascal. Po wszystkich deklaracjach zmiennych następuje słowo kluczowe var . Deklaracja określa listę zmiennych, po których następuje dwukropek (:) i typ. Składnia deklaracji zmiennej to -

var
variable_list : type;

W tym przypadku typ musi być prawidłowym typem danych Pascal, w tym typem danych znakowych, całkowitych, rzeczywistych, logicznych lub dowolnego typu danych zdefiniowanego przez użytkownika itp., A lista_zmienna może składać się z jednej lub więcej nazw identyfikatorów oddzielonych przecinkami. Oto niektóre prawidłowe deklaracje zmiennych -

var
age, weekdays : integer;
taxrate, net_income: real;
choice, isready: boolean;
initials, grade: char;
name, surname : string;

W poprzednim samouczku omówiliśmy, że Pascal umożliwia zadeklarowanie typu. Typ można zidentyfikować za pomocą nazwy lub identyfikatora. Ten typ może służyć do definiowania zmiennych tego typu. Na przykład,

type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;

Teraz tak zdefiniowane typy mogą być używane w deklaracjach zmiennych -

var
weekdays, holidays : days;
choice: yes;
student_name, emp_name : name;
capital: city;
cost: expenses;

Zwróć uwagę na różnicę między deklaracją typu a deklaracją var . Deklaracja typu wskazuje kategorię lub klasę typów, takich jak liczba całkowita, rzeczywista itp., Podczas gdy specyfikacja zmiennej wskazuje, jakie wartości może przyjmować zmienna. Możesz porównać deklarację typu w Pascalu z typedef w C. Co najważniejsze, nazwa zmiennej odnosi się do miejsca w pamięci, w którym ma być przechowywana wartość zmiennej. Tak nie jest w przypadku deklaracji typu.

Inicjalizacja zmiennej w Pascalu

Zmiennym jest przypisywana wartość z dwukropkiem i znakiem równości, po których następuje stałe wyrażenie. Ogólna forma przypisywania wartości to -

variable_name := value;

Domyślnie zmienne w Pascalu nie są inicjowane zerem. Mogą zawierać wartości śmieci. Dlatego lepszą praktyką jest inicjowanie zmiennych w programie. Zmienne można zainicjować (przypisać wartość początkową) w ich deklaracji. Po inicjalizacji następuje rozszerzenievar słowo kluczowe, a składnia inicjalizacji jest następująca -

var
variable_name : type = value;

Oto kilka przykładów:

age: integer = 15;
taxrate: real = 0.5;
grade: char = 'A';
name: string = 'John Smith';

Spójrzmy na przykład, który wykorzystuje omówione do tej pory różne typy zmiennych -

program Greetings;
const
message = ' Welcome to the world of Pascal ';

type
name = string;
var
firstname, surname: name;

begin
   writeln('Please enter your first name: ');
   readln(firstname);
   
   writeln('Please enter your surname: ');
   readln(surname);
   
   writeln;
   writeln(message, ' ', firstname, ' ', surname);
end.

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

Please enter your first name:
John
Please enter your surname:
Smith
Welcome to the world of Pascal John Smith

Zmienne wyliczeniowe

Wiesz już, jak używać prostych typów zmiennych, takich jak liczba całkowita, rzeczywista i boolowska. Zobaczmy teraz zmienne typu wyliczeniowego, które można zdefiniować jako -

var
var1, var2, ...  : enum-identifier;

Po zadeklarowaniu typu wyliczeniowego można zadeklarować zmienne tego typu. Na przykład,

type
months = (January, February, March, April, May, June, July, August, September, October, November, December);
Var
m: months;
...
M := January;

Poniższy przykład ilustruje koncepcję -

program exEnumeration;
type
beverage = (coffee, tea, milk, water, coke, limejuice);

var
drink:beverage;

begin
   writeln('Which drink do you want?');
   drink := limejuice;
   
   writeln('You can drink ', drink);
end.

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

Which drink do you want?
You can drink limejuice

Zmienne podzakresu

Zmienne podzakresu są deklarowane jako -

var
subrange-name : lowerlim ... uperlim;

Przykładami zmiennych podzakresów są -

var
marks: 1 ... 100;
grade: 'A' ... 'E';
age: 1 ... 25;

Poniższy program ilustruje koncepcję -

program exSubrange;
var
marks: 1 .. 100;
grade: 'A' .. 'E';

begin
   writeln( 'Enter your marks(1 - 100): ');
   readln(marks);
   
   writeln( 'Enter your grade(A - E): ');
   readln(grade);
   
   writeln('Marks: ' , marks, ' Grade: ', grade);
end.

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

Enter your marks(1 - 100): 
100
Enter your grade(A - E):
A
Marks: 100 Grade: A