< لغات البرمجة

الباسكال هي لغة برمجة سهلة التعلم نسبيا. صياغتها مستمدة من اللغة الإنجليزية. سميت اللغة كذلك تمجيدا لذكرى عالم الرياضيات الفرنسي بليز باسكال.

تعتبر لغة الباسكال *نسبة للعالم الرياضي باسكال* من اللغات دات المستوى العالي وهي لغة تدرس في الجامعات لسهولتها. ولكتابة برنامج بلغة باسكال فانك بحاجة إلى مترجم مثل (devpascal) على سبيل المثال. الان سنقوم باول خطوة اي كتابة أول برنامج بلغة الباسكال. حيث سيقوم البرنامج بطباعة عبارة (hello world) على الشاشة.

program hello-world; 1

begin 2

write("hello world"); 3

4 .end

ملاحظة الترقيم (1-5) ليس ضمن البرنامج.

1}- رأس البرنامج: السطر الاول هو لكتابه اسم للبرنامج ، اي اسم يمكنك وضعه كيفما تريد ، لكن يحبذ ان يكون له علاقه بالبرنامج الذي تكتبه ، فمثلا برنامج اله حاسبه ، يصبح اسمه مثلا calculate ، ايضا هناك قواعد في كتابه اسماء البرامج فلا يمكن ان يحتوي على مسافات او يبدأ الاسم برقم ، ايضا في حاله ان اسم البرنامج يحتوي على كلمتين فمن الممكن ان تكتب متلاصقتين مع مراعاه تكبير الحرف الاول من كل كلمه ،مثل HelloWorld ، او من الممكن وضع علامه الشرطه – للفصل بين الاسم الاول والثاني ، hello-world .

2}- كل البرامج في الباسكال ، تبدأ بالكلمه المحجوزه (begin) . 3}- في هذا السطر كتبنا كلمة (write). دورها هو الطباعة.

ويجب على النص الذي نريد أن نقوم بطباعته أن يكون داخل قوسين (النص).ويجب أن يكون ما بداخل القوسين بين العلامتين ("النص")

وفي الاخير نقوم بختم السطر بفاصلة منطقة ;("النص") .

4}- كل البرامج في الباسكال ، تنتهي بالكلمة المحجوزة (end). ______________________________

برنامج آخر لعمليات الضرب :

Program Multiplication;

uses wincrt;

var

a,b:integer;

begin

writeln('donner a ');

readln(a);

writeln('donner b');

readln(b);

x:=a*b;

write(a,'*',b,'=',x);

end.


بعد الانتهاء من كتابة الخوارزمية التي تمثل الخطوات حل مشكل ما بطريقة آلية، ينتقل المطورون إلى ترجمة الخوارزمية إلى لغة برمجة كالباسكال. وأولى الخطوات هنا هي إحصاء كل ما يجب تعريفه حتى نحصل على برنامج مترجم إلى لغة الآلة صالح للتنفيذ.

في لغة الباسكال يطلب تعريف كل الثوابت والمتغيرات التي ستستعمل. كما يجب تعريف أنواع البيانات (DATA TYPES - Types de données) الخاصة. كما تعرف الدوال (Function) والبرمجيات الفرعية (Procedure). دون نسيان مكتبات الدوال والبرمجيات الفرعية المستعملة حتى لا يطلب تعرف المجهول منها.

أنواع البيانات والعمليات

أنواع البيانات

في الباسكال يتعامل مع خمس أنواع بسيطة وأساسية. ويمكن تعريف أنواع أخرى بسيطة أو مركبة حسب الحاجة.

الأنواع البسيطة
التعريفالفئة المعرفةملاحظات
INTEGERالقيم الصحيحة1، 12 ، +93، -6
REALالقيم الحقيقية5، 2.5، 100، 1.05E+2 (= مئة وخمسة)
BOOLEANالقيم المنطقيةTRUE - FALSE (وهما القيمتان الوحيدتان : صحيح أو خطأ)
CHARالرموزالقيمة هي رمز واحد قد يكون: حروف لاتينية (A,B,C ... a,b,c ..)، أرقام (0 1 2 3 4 5 6 7 8 9)، رموز أخرى (, ; & ! $ . :)
STRINGسلسلة حروف ورموزتحدد دائما بالرمز '. مثال : 'Hello'

العمليات

أبرز العمليات هي العمليات الحسابية : الجمع + ، الطرح - ، الضرب *، القسمة /. و تضاف إليها عمليتي القسمة الصحيحة باستعمال DIV و باقي القسمة الصحيحة باستعمال MOD. ولما كانت كتابة العمليات تتم على سطر واحد، وجب إدراك أنه يجب الإلمام بأولوية العمليات.

مثال 

العبارة الرياضية التالية :

تكتب a - ( b + c ) /2 وليس a - b + c / 2 لأن هذه الأخيرة توافق


المتغيرات

أنواع البيانات الخاصة

الدوال

الدالة الخطية و الدالة التألفية


الفصل الأول: تقديم لـلغة باسكال

كغيرها من لغات البرمجة الحاسوبية، فهي تستعمل مجموعة من الكلمات الخاصة وتخضع البرامج المكتوبة بهاته اللغة لمجموعة من القواعد.

الكلمات الخاصة

كل الكلمات الخاصة مستوحاة من اللغة الإنجليزية. ولكل منها استعمال خاص ولا يجوز استعمال أسماء هذه الكلمات لتسمية المتغيرات وغيرها.

الكلمةالاستعمال الكلمةالاستعمال
ABSOLUTE ANDوصل منطقي
ARRAYتعريف الجداول والمصفوفات ASM
BEGINتحديد بداية CASEاختيار حسب الحالات
CONSTتعريف الثوابت CONSTRUCTOR
DESTRUCTOR EXTERNAL
DIVقسمة طبيعية تامة DOللتنفيذ
DOWNTO ELSE
ENDتحديد نهاية FILE
FOR FORWARD
FUNCTIONتعريف دالة GOTOقفزة غير مشروطة
IFاختيار مشروط IMPLEMENTATION
IN INLINE
INTERFACE INTERRUPT
LABELتعريف اللافتات MODباقي القسمة الطبيعية
NIL NOTنفي منطقي
OBJECT OFمستعملة في تعريف الجداول
ORفصل منطقي PACKED
PRIVATE PROCEDUREتعريف برنامج فرعي
PROGRAM RECORDتعريف تسجيل
REPEAT SET
SHL SHR
STRING THEN
TO TYPEتعريف أنواع جديدة
UNIT UNTIL
USES VARتعريف المتغيرات
VIRTUAL WHILE
WITH XOR

الأدوات

لإنشاء برامج باستعمال لغة باسكال، فالمطور بحاجة إلى مترجم (Compiler). ويوجد الكثير من الأدوات التي تسمح لمطوري البرامج باعتماد لغة باسكال لإنشاء برامجهم. منها ما يوفر مترجما فقط ومنها ما يوفر منظومة متكاملة من أداة تحرير تسهل كتابة البرامج وحتى الترجمة ومتابعة الأخطاء.

الأمثلة

يمكننا سرد أشهر الأدوات هنا :

  • توربو باسكال Turbo PASCAL: نظام متكامل لشركة بورلند يضم محرر ومترجم ومتابع للتنفيذ (DEBUGGER). اشتهر كثيرا في الفترة ثمانينيات القرن 20 وبداية التسعينيات. وهو أداة بسيطة سهلة للمتعلمين ويمكن العثور عليه على النت.
  • فري باسكال : كما يظهر من اسمه فهو مترجم من البرامج المفتوحة يعمل على أنظمة متعددة. متوافق مع توربو باسكال.
  • جنو باسكال : مترجم للغة باسكال يقبل صياغة حسب معيار ANSI/ISO ويتوافق جزئيا مع البرامج المكتوبة حسب صياغة توربو باسكال.

اضافة إلى مجموعة أخرى من البرمجيات أخرى مثل دلفي وكيلكس وديف باسكال وغيرهم.

هيكل البرامج

أي برنامج مكتوب بلغة الباسكال فهو مكون من 3 أجزاء :

  • ترويسة : تحمل تسمية البرنامج
  • تعريفات : وفي هذا الجزء يتم تعريف كل ما يستعمله البرنامج من متغيرات وثوابت وأنواع بيانات جديدة ودوال وغيرها.
  • بدن البرنامج : ويضم سلسلة التعليمات والتي بتنفيذها تسلسليا ويؤدي البرنامج المطلوب منه.

مثال

(* الترويسة في سطر واحد وتحمل اسم البرنامج *)
Program test;
(* مجموعة من التعريفات *)
var a: real;
b:integer;
(* نهاية التعريفات وبداية مجموعة التعليمات *)
begin

b := 3;
a:= b/2;

Write(a);

end.

(* نهاية التعليمات والبرنامج *)

ملاحظة
استعمال (* --------- *) يهدف منه وضع تعليقات تفيد المبرمج ولا تأثر على البرنامج حيث أن المجمع يتجاهلها. وكما يلاحظ فهي تبدأ بـ (* أو { لتعليم نقطة بداية التعليق، وبالمقابل فإن *) أو } فهي علامة نهاية التعليق.


This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.