الإجراءات :
الإجراءات يعتبر برنامج فرعي . يمكن ان يستدعى من الجزء الرئيسي للبرنامج . يتم الإعلان عن الاجراء خارج الجسم الرئيسي للبرنامج بإستخدام الكلمه procedure . يجب ان تعطي الاجراء اسم مميز . الاجراءات لها بدايه و نهايه خاصه بها . في هذا المثال سوف نتعرف على طريقة الاعلان و الاستدعاء لاجراء اسمه Hello يطبع الكلمه "Hello" على الشاشه .
شيفره برمجيه :
program Procedures;
procedure Hello;
begin
Writeln('Hello');
end;
begin
end.
لإستخدام الاجراء يجب ان نقوم بإستدعاءه من خلال اسمه المميز في جسم البرنامج (مكان كتابة شيفره البرنامج)
شيفره برمجيه :
program Procedures;
procedure Hello;
begin
Writeln('Hello');
end;
begin
Hello;
end.
الاجراءات يجب ان تكون دائماً فوق المكان الذي يتم استدعاءه اي يجب ان تقوم بالاعلان عن الاجراء ثم استدعاءه ولا يجوز استدعاء الاجراء قبل الاعلان عنه . في المثال التالي سوف يتم استدعاء اجراء داخل اجراء آخر .
شيفره برمجيه :
program Procedures;
procedure Hello;
begin
Writeln('Hello');
end;
procedure HelloCall;
begin
Hello;
end;
begin
HelloCall;
end.
يمكن ان تكون للاجراءات بارامترات مثل اي امر تستخدمه . يجب ان تعطي اسم البارامتر و نوعه و سوف يتم استخدامه مثل اي متغير . اذا كنت تريد ان تستخدم اكثر من بارامتر في اجراء واحد يجب ان تكون الفاصله المنقوطه ; هي التي تفصل بينهم
شيفره برمجيه :
program Procedures;
procedure Print(s: String; i: Integer);
begin
Writeln(s);
Writeln(i);
end;
begin
Print('Hello',3);
end.
المتغيرات العامّه و المحليه :
المتغيرات التي نستخدمها حاليّاً تعتبر متغيرات عامه , اي يمكننها استخدامها في اي وقت و في اي مكان في البرنامج . المتغيرات المحليه يمكن استخدامها فقط بداخل الاجراء و المتغيرات المحليه لا تأخذ مكانها من الذاكره إذا لم يبدأ الاجراء . يتم الاعلان عن المتغيرات المحليه تحت إعلان اسم الاجراء .
شيفره برمجيه :
program Procedures;
procedure Print(s: String);
var
i: Integer;
begin
for i := 1 to 3 do
Writeln(s);
end;
begin
Print('Hello');
end.
الدوال :
الدوال تشبه الاجراءات بإستثناء انها تعيد قيمه . الكلمه function تستخدم بدل الكلمه procedure عند تعريف الدوال . لتعريف ما هو نوع البيانات للقيمه العائده يجب ان تستخدم النقطتين : و بعدها نوع البيانات و قبل النقطتين اسم الدالّه .
شيفره برمجيه :
program Functions;
function Add(i, j:Integer): Integer;
begin
end;
begin
end.
عند اسناد قيمة الداله لمتغير سيجعل المتغير يساوي القيمه المعاده من الداله . اذا استخدمت الداله في شئ مع مثل Writeln سوف يتم طباعة قيمة العائد . لاسناد قيمة العائد انشئ اسم الداله تساوي القيمه التي تريدها ان تكون هي العائد.
شيفره برمجيه :
program Functions;
var
Answer: Integer;
function Add(i, j:Integer): Integer;
begin
Add := i + j;
end;
begin
Answer := Add(1,2);
Writeln(Add(1,2));
end.
يمكنك الخروج من اجراء او داله في اي وقت بإستخدام الامر Exit .
شيفره برمجيه :
program Procedures;
procedure GetName;
var
Name: String;
begin
Writeln('What is your name?');
Readln(Name);
if Name = '' then
Exit;
Writeln('Your name is ',Name);
end;
begin
GetName;
end