تعلم برمجة Pascal الدرس الثالث - المتغيرات و الثوابت
الدرس الثالث - المتغيرات و الثوابت
ماهي المتغيرات؟
المتغيرات عباره عن اسماء تخزّن في ذاكرة الحاسوب . هذا الاسم يستخدم لتخزين المعلومات في الذاكره .
يمكننا استخدام انواع مختلفه من المعلومات في المتغيرات , مثلاً الارقام و السلال و غيره .
استخدام المتغيرات :
يجب دائماً ان نعلن عن المتغيرات قبل استخدامها . نستخدم الكلمه الاساسيه var لعمل ذلك . دائماً يجب اختيار نوع البيانات للمتغير . وهذه هي انواع المتغيرات المختلفه .
Byte :
من 0 إلى 255
Word :
من 0 إلى 65535
ShortInt :
من -128 إلى 127
Integer :
من -32768 إلى 32767
LongInt :
من -4228250000 إلى 4228249000
Real :
قيم النّقطة المتغيّرة
Char :
حرفاً واحداً
String :
فوق 255 حرف
Boolean :
true او false
في هذا المثال سوف نتعرف على طريقة الاعلان عن متغير من نوع intger اسمه i :
|
لإعطاء قيمه للمتغير يتم استخدام عامل الاسناد :=
program Variables;
var
i: Integer;
begin
i := 5;
end.
|
يمكنك انشاء متغيرين او اكثر من نفس النوع إذا وضعت الفاصله بعد المتغير الاول و قمت بكتابة اسم المتغير الثاني بعدها . كذلك يمكنك انشاء متغيرات مختلفه بدون الحاجه إلى استخدام الجمله الاساسيه var اكثر من مره :
program Variables;
var
i, j: Integer;
s: String;
begin
end.
|
اذا كنت تريد ادراج سلسله في متغير يجب استخدام علامة الاقتباس الفرديه ' , النوع Boolean فقط يمكن اسناد قيمتين له و هم True و False :
program Variables;
var
i: Integer;
s: String;
b: Boolean;
begin
i := -3;
s := 'Hello';
b := True;
end.
|
الحسابات مع المتغيرات :
يمكن استخدام المتغيرات في العمليات الحسابيه . على سبيل المثال يمكن أن تسند القيمة بمتغيّر ثمّ تضيف الرقم 1 له .
العمليات الحسابيه التي يمكن استخدامها :
+ : اضافه (زائد)
- : طرح
* : ضرب
/ : قسمه
div : قسمة عدد صحيح
mod : باقي قسمة العدد الصحيح
المثال التالي يقوم ببعض العمليات الحسابيه :
program Variables;
var
Num1, Num2, Ans: Integer;
begin
Ans := 1 + 1;
Num1 := 5;
Ans := Num1 + 3;
Num2 := 2;
Ans := Num1 - Num2;
Ans := Ans * Num1;
end.
|
يستخدم النوع Strings في تخزين السلاسل مثل الحروف والارقام المختلفه و غيره , و يمكنك استخدام العمليات الحسابيه مع هذا النوع من المتغيرات حيث لا يتم جمع الرقمين المخزنين على صيغة String بمعنى جمع , مثلاً اذا قمت بإضافة السلسله التي قيمتها 1 إلى السلسله التي قيمتها 1 سوف يكون الناتج 11 و ليس 2 .
program Variables;
var
s: String;
begin
s := '1' + '1';
end.
|
يمكنك قراءة محتوى المتغيرات بإستخدام Readln و ReadKey . الامر الثاني و هو ReadKey من الوحده crt و هي تقرأ حرف واحد فقط . سوف ترى ان طريقة عمل ReadKey مختلفه عن Readln .
program Variables;
uses
crt;
var
i: Integer;
s: String;
c: Char;
begin
Readln(i);
Readln(s);
c := ReadKey;
end.
|
طباعة المتغيرات على الشاشه طريقه سهله . اذا كنت تريد طباعة المتغيرات على الشاشه يمكنك استخدام الامر Writeln :
program Variables;
var
i: Integer;
s: String;
begin
i := 24;
s := 'Hello';
Writeln(i);
Writeln(s,' world');
end.
|
الثوابت :
الثوابت لا تختلف عن المتغيرات إلا انه قيمتها لا يمكن ان تتغير أي قيمه ثابته . يمكن اسناد القيمه إلى الثابت عند الاعلان عن الثابت . const هي الكلمه الاساسيه للاعلان عن الثوابت .
const
pi: Real = 3.14;
var
c, d: Real;
begin
d := 5;
c := pi * d;
end.
|
لو أردنا تعريف بيانات تكون قيمتها ثابته طوال عمل البرنامج فإننا نستخدم لتعريفها
نوع جديد داخل الأمر Const وتكون على الشكل التالي
Const
A = 30 ;
B = 9.6 ;
C = “Name”;
|
- طوال عمل البرنامج سيسند للثابت A القيمة 30 ولا يمكن تغيير هذه القيمة خلال البرنامج أبدا
- نلاحظ أن هناك علامة مساواة = بين إسم الثابت وقيمته بينما في تعريف Var المتغيرات هناك علامة : بين إسم المتغير ونوعه
- الثابت المعرف يعامل في البرنامج على أنه كلمة محجوزة Reserved Word
Program Circle(input,output);
Const
Pi=3.14;
Var
Radius : integer ;
Circum , area : real ;
Begin
Writeln ( ‘Enter Radius’);
Read ( radius);
Circum := 2*pi* radius ;
Area := pi * radius * radius ;
Writeln (‘The value of circum is’,circum);
Writeln (‘The value of area is’,area);
End.
|
في البرنامج السابق قمنا بتعريف ثابت في البرنامج بالإسم pi وهو يتخذ دائما القيمة 3.14
إستخدام الثوابت في البرنامج يسهل عمل البرنامج ويسهل تعديل القيم بسهولة بخاصة في البرامج الكبيرة
لو أردنا تنفيذ البرنامج السابق ولكن بدون الإعتماد على الثوابت فسيكون البرنامج على الشكل
Program Circle(input,output);
Var
Pi : real ;
Radius : integer ;
Circum , area : real ;
Begin
Write (‘Enter Value of pi :’);
Readln (pi);
Writeln ( ‘Enter Radius’);
Read ( radius);
Circum := 2*pi* radius ;
Area := pi * radius * radius ;
Writeln (‘The value of circum is’,circum);
Writeln (‘The value of area is’,area);
End;
|
هذا فيما يخص الثوابت والمتغيرات في لغة الباسكال
ارجو لكم التوفيق والسلام عليكم ورحمة الله وبركاته
لا تنسونا من ذعائكم
تعليقات
إرسال تعليق