Pascal-variable-types
パスカル-変数の型
変数は、プログラムが操作できるストレージ領域に付けられた名前に他なりません。 Pascalの各変数には特定のタイプがあり、変数のメモリのサイズとレイアウトを決定します。そのメモリ内に保存できる値の範囲。変数に適用できる一連の操作。
変数の名前は、文字、数字、およびアンダースコア文字で構成できます。 文字またはアンダースコアで始まる必要があります。 Pascalは大文字と小文字を区別しないため、大文字と小文字は同じ意味です。 前の章で説明した基本タイプに基づいて、次の基本変数タイプがあります-
Pascalの基本変数
Sr.No | Type & Description |
---|---|
1 |
Character 通常、単一のオクテット(1バイト)。 これは整数型です。 |
2 |
Integer マシンの整数の最も自然なサイズ。 |
3 |
Real 単精度浮動小数点値。 |
4 |
Boolean 真または偽の論理値を指定します。 これも整数型です。 |
5 |
Enumerated ユーザー定義リストを指定します。 |
6 |
Subrange 値が範囲内にある変数を表します。 |
7 |
String 文字の配列を格納します。 |
Pascalプログラミング言語では、他のさまざまなタイプの変数を定義することもできます。これについては、ポインター、配列、レコード、セット、ファイルなどの後続の章で説明します。 この章では、基本的な変数タイプのみを学習します。
Pascalの変数宣言
すべての変数は、Pascalプログラムで使用する前に宣言する必要があります。 すべての変数宣言の後に_var_キーワードが続きます。 宣言は変数のリストを指定し、その後にコロン(:)とタイプが続きます。 変数宣言の構文は-
var
variable_list : type;
ここで、typeは、文字、整数、実数、ブール、またはユーザー定義のデータ型などを含む有効なPascalデータ型である必要があり、variable_listはコンマで区切られた1つ以上の識別子名で構成されます。 いくつかの有効な変数宣言がここに示されています-
var
age, weekdays : integer;
taxrate, net_income: real;
choice, isready: boolean;
initials, grade: char;
name, surname : string;
前のチュートリアルで、Pascalで型を宣言できることを説明しました。 タイプは、名前または識別子で識別できます。 このタイプを使用して、そのタイプの変数を定義できます。 例えば、
type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;
今、そのように定義された型は変数宣言で使用することができます-
var
weekdays, holidays : days;
choice: yes;
student_name, emp_name : name;
capital: city;
cost: expenses;
_type_宣言と_var_宣言の違いに注意してください。 型宣言は、整数、実数などの型のカテゴリまたはクラスを示しますが、変数の仕様は、変数が取る値の型を示します。 Pascalの_type_宣言をCの_typedef_と比較できます。 最も重要なことは、変数名は変数の値が保存されるメモリの場所を指します。 これは型宣言ではそうではありません。
Pascalでの変数の初期化
変数には、コロンと等号が付いた値が割り当てられ、その後に定数式が続きます。 値を割り当てる一般的な形式は-
variable_name := value;
デフォルトでは、Pascalの変数はゼロで初期化されません。 ゴミの値が含まれている場合があります。 したがって、プログラム内の変数を初期化することをお勧めします。 変数は、宣言で初期化(初期値を割り当て)できます。 初期化の後に var キーワードが続き、初期化の構文は次のとおりです-
var
variable_name : type = value;
いくつかの例は-
age: integer = 15;
taxrate: real = 0.5;
grade: char = 'A';
name: string = 'John Smith';
これまでに説明したさまざまなタイプの変数を利用する例を見てみましょう-
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.
上記のコードをコンパイルして実行すると、次の結果が生成されます-
Please enter your first name:
John
Please enter your surname:
Smith
Welcome to the world of Pascal John Smith
列挙変数
整数、実数、ブールなどの単純な変数タイプの使用方法を見てきました。 さて、列挙型の変数を見てみましょう。
var
var1, var2, ... : enum-identifier;
列挙型を宣言したら、その型の変数を宣言できます。 例えば、
type
months = (January, February, March, April, May, June, July, August, September, October, November, December);
Var
m: months;
...
M := January;
次の例は、概念を示しています-
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.
上記のコードをコンパイルして実行すると、次の結果が生成されます-
Which drink do you want?
You can drink limejuice
サブレンジ変数
サブレンジ変数は次のように宣言されます-
var
subrange-name : lowerlim ... uperlim;
サブレンジ変数の例は-
var
marks: 1 ... 100;
grade: 'A' ... 'E';
age: 1 ... 25;
次のプログラムは、概念を示しています-
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.
上記のコードをコンパイルして実行すると、次の結果が生成されます-
Enter your marks(1 - 100):
100
Enter your grade(A - E):
A
Marks: 100 Grade: A