Pascal - Tipi di variabili
Una variabile non è altro che un nome dato a un'area di memoria che i nostri programmi possono manipolare. Ogni variabile in Pascal ha un tipo specifico, che determina la dimensione e il layout della memoria della variabile; l'intervallo di valori che possono essere memorizzati all'interno di quella memoria; e l'insieme di operazioni che possono essere applicate alla variabile.
Il nome di una variabile può essere composto da lettere, cifre e il carattere di sottolineatura. Deve iniziare con una lettera o un trattino basso. Pascal ènot case-sensitive, quindi le lettere maiuscole e minuscole hanno lo stesso significato qui. Sulla base dei tipi di base spiegati nel capitolo precedente, ci saranno i seguenti tipi di variabili di base:
Variabili di base in Pascal
Suor n | Tipo e descrizione |
---|---|
1 | Character Tipicamente un singolo ottetto (un byte). Questo è un tipo intero. |
2 | Integer La dimensione più naturale del numero intero per la macchina. |
3 | Real Un valore in virgola mobile a precisione singola. |
4 | Boolean Specifica valori logici veri o falsi. Anche questo è un tipo intero. |
5 | Enumerated Specifica un elenco definito dall'utente. |
6 | Subrange Rappresenta le variabili, i cui valori rientrano in un intervallo. |
7 | String Memorizza un array di caratteri. |
Il linguaggio di programmazione Pascal permette anche di definire vari altri tipi di variabili, che tratteremo nei capitoli successivi come Pointer, Array, Records, Sets e Files, ecc. Per questo capitolo, studiamo solo i tipi di variabili di base.
Dichiarazione di variabili in Pascal
Tutte le variabili devono essere dichiarate prima di usarle nel programma Pascal. Tutte le dichiarazioni di variabili sono seguite dalla parola chiave var . Una dichiarazione specifica un elenco di variabili, seguito da due punti (:) e dal tipo. La sintassi della dichiarazione di variabile è -
var
variable_list : type;
In questo caso, il tipo deve essere un tipo di dati Pascal valido che include carattere, numero intero, reale, booleano o qualsiasi tipo di dati definito dall'utente, ecc., E variabile_elenco può essere costituito da uno o più nomi di identificatori separati da virgole. Alcune dichiarazioni di variabili valide sono mostrate qui -
var
age, weekdays : integer;
taxrate, net_income: real;
choice, isready: boolean;
initials, grade: char;
name, surname : string;
Nel tutorial precedente, abbiamo discusso del fatto che Pascal consente di dichiarare un tipo. Un tipo può essere identificato da un nome o da un identificatore. Questo tipo può essere utilizzato per definire variabili di quel tipo. Per esempio,
type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;
Ora, i tipi così definiti possono essere usati nelle dichiarazioni di variabili -
var
weekdays, holidays : days;
choice: yes;
student_name, emp_name : name;
capital: city;
cost: expenses;
Si noti la differenza tra la dichiarazione del tipo e la dichiarazione var . La dichiarazione del tipo indica la categoria o la classe dei tipi come intero, reale, ecc., Mentre la specifica della variabile indica il tipo di valori che una variabile può assumere. Puoi confrontare la dichiarazione del tipo in Pascal con typedef in C. Soprattutto, il nome della variabile si riferisce alla posizione di memoria in cui il valore della variabile verrà memorizzato. Non è così con la dichiarazione del tipo.
Inizializzazione variabile in Pascal
Alle variabili viene assegnato un valore con due punti e il segno di uguale, seguito da un'espressione costante. La forma generale di assegnazione di un valore è:
variable_name := value;
Per impostazione predefinita, le variabili in Pascal non vengono inizializzate con zero. Possono contenere valori di spazzatura. Quindi è una pratica migliore inizializzare le variabili in un programma. Le variabili possono essere inizializzate (assegnato un valore iniziale) nella loro dichiarazione. L'inizializzazione è seguita dalvar parola chiave e la sintassi di inizializzazione è la seguente:
var
variable_name : type = value;
Alcuni esempi sono:
age: integer = 15;
taxrate: real = 0.5;
grade: char = 'A';
name: string = 'John Smith';
Vediamo un esempio, che fa uso di vari tipi di variabili discusse finora:
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.
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Please enter your first name:
John
Please enter your surname:
Smith
Welcome to the world of Pascal John Smith
Variabili enumerate
Hai visto come utilizzare tipi di variabili semplici come intero, reale e booleano. Vediamo ora le variabili di tipo enumerato, che possono essere definite come -
var
var1, var2, ... : enum-identifier;
Dopo aver dichiarato un tipo enumerato, è possibile dichiarare variabili di quel tipo. Per esempio,
type
months = (January, February, March, April, May, June, July, August, September, October, November, December);
Var
m: months;
...
M := January;
L'esempio seguente illustra il concetto:
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.
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Which drink do you want?
You can drink limejuice
Variabili di subrange
Le variabili di sottointervallo sono dichiarate come -
var
subrange-name : lowerlim ... uperlim;
Esempi di variabili di sottointervallo sono:
var
marks: 1 ... 100;
grade: 'A' ... 'E';
age: 1 ... 25;
Il seguente programma illustra il concetto:
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.
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Enter your marks(1 - 100):
100
Enter your grade(A - E):
A
Marks: 100 Grade: A