| الإهداءات |
|
|||||||
![]() |
|
|
أدوات الموضوع | انواع عرض الموضوع |

|
|
#1 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
بسم الله الرحمن الرحيم جميع الدروس للاستاذ : عبدالله فران أساسيات في الباسكال إتباعها لحل المسألة بواسطة الحاسب هذه الخطوات هي ما تعرف باللوغاريتم The Algorithm بعد ذلك يمكن تحويل هذه الخطوات إلى إيعازات باسكال والتي ستتحول بدورها إلى لغة الآلة المستعملة بواسطة برنامج المصنف Compiler وبرنامج الباسكال هو مجموعه من الإيعازات بعضها منفذ Executable وبعضها غير منفذ Non-Executable وتتألف هذه الإيعازات من كلمات دليليه أو من كلمات تعريفية يجب على المبرمج تعريفها في بداية كل برنامج ولتوضيح ذلك نرى مخطط لبرنامج باسكال كود:
Program The Total (input, output);
{This program find sum of two integer number}
Var
A, B, Total: integer;
Begin
Write ('Enter two integer numbers to be add: ');
Readln (a, b);
Total: = a+b;
Writeln ('The sum of', A,'and', B,'is', Total);
End.
حيث نلاحظ : - السطر الأول هو للتعريف باسم البرنامج ووسيله الإدخال والإخراج - أن الجزء الملون بالأزرق هو عباره عن كلمات محجوزه سنتعرف عليها بالتفصيل بالدروس القادمه - الجزء الملون بالأخضر هو عباره عن إيعاز غير منفذ وهي ملاحظات خاصه بقاريء البرنامج - الكلمه الدليليه Var للتصريح عن المتغيرات وسيتم دراستها بالتفصيل - الجزء الممتد من Begin إلى End هو عباره عن جسم البرنامج والأوامر بينها - السطر الأخير يحتوي على End متبوعه بنقطه وذلك للدلاله على نهايه البرنامج وسنلاحظ أن 1- بعد كل سطر هنالك نقطه فاصلة (;) للدلالة على سطر آخر يلية 2- بعد كلمه End هنالك نقطة (.) للدلاله على أنه لا يوجد سطر بعد ذلك . |
||||
|
|||||
| اقتباس المشاركة |
|
|
#2 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس الثاني :
أنواع البيانات في الباسكال في هذا الدرس سوف نتعرف على أنواع البيانات في لغة الباسكال والقواعد الخاصه لكل منها للتمكن من جمع هذه البيانات في تعابير تشكل إيعازات البرامج في هذه اللغة يمكننا تمييز نوعين من أنواع البيانات : الأول : وهو ما تشترك فيه كل لغات البرمجه لذلك سنطلق عليه إسم البيانات القياسيه وهي: 1- الكميات الصحيحه Integer وهي الأعداد الصحيحه الكامله التي لا تحوي على كسور مثل 11 ====== 2- الكميات الحقيقيه Real وهي الأعداد الحقيقيه التي تحوي كسور فيها مثل 2.3434 ====== 3- الكميات المميزه Char وهي الحروف والأشكال المميزة مثل A,@,H,^,& ====== 4- الكميات المنطقيه Boolean ويمكن أن تأخد قيمتين هما إما صحيح True أو خطأ False الثاني : وهو البيانات التي يصرح بها عن طريق المبرمج وذلك بتعريف أنواع جديده من البيانات ليست من الأنواع الأربعة التي تكلمنا عنها وسيتم تعريفها لاحقا |
||||
|
|||||
| اقتباس المشاركة |
|
|
#3 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس الثالث :
المتغيرات في الباسكال التصريح Var ويتم في هذا القسم من البرنامج التصريح عن نوع البيانات بالبرنامج قبل إستخدامها ويتم التصريح حسب نوع البيانات إما الأنواع الأربعه Integer , Real , Boolean , Chr أو نوع قام المستخدم بتعريفه وسيتم دراسته بفصل آخر ويخضع إسم المتغير إلى شروط وهي : 1- أن يبدأ بحرف ( ولا تقبل الأسماء التي تبدأ بأرقام ) 2- يحوي الإسم حروفا وأرقاما فقط 3- لا يكون الإسم من ضمن الكلمات المحجوزه بالذاكرة 4- يفضل دائما أن يكون إسم له معنى للتسهيل أمــــثــلة كود:
A: integer; كود:
B: Real; كود:
Grade: Chr; تم تعريف مكان بالذاكره إسمه Grade وهو يقبل البيانات من النوع Chr كود:
F: Boolean; والآن لنأخذ مثال تطبيقي على إستخدام التصريح Var كود:
A:=5; كود:
A:=3.5; كود:
B:=5; كود:
B:=3.5; كود:
Grade:=`r`; كود:
Grade:=d; كود:
F:=False; كود:
F:=10; ونلاحظ مما سبق القيمه Real اعم من Integer فهي تقبل القيم الصحيحه والحقيقيه ولكنها تأخد حيز من الذاكرة أكبر . |
||||
|
|||||
| اقتباس المشاركة |
|
|
#4 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس الرابع :
الثوابت في البرنامج لقد تعرفنا على طريقة تعريف متغيرات بالبرنامج لحفظ البيانات فيها حسب نوعها وذلك داخل التعريف Var ولكن ماذا لو أردنا تعريف بيانات تكون قيمتها ثابته طوال عمل البرنامج فإننا نستخدم لتعريفها نوع جديد داخل الأمر Const وتكون على الشكل التالي كود:
Const A = 30 ; B = 9.6 ; C = "Name"; - نلاحظ أن هناك علامة مساواة = بين إسم الثابت وقيمته بينما في تعريف 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;
|
||||
|
|||||
| اقتباس المشاركة |
|
|
#5 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس الخامس ^^
أمر Write والأمر Writeln سنتعرف في هذا القسم على نوع جديد من الأوامر في الباسكال وهذا النوع من الأنواع الشائعة الإستخدام في البرنامج وهو الأمر Writeln ويستخدم هذا الأمر للطباعة وإخراج البيانات على الشاشة وله نوعان الأول : Writeln وهو يقوم بطباعة الجملة والإنتقال بعدها إلى السطر الذي يليه مثل كود:
Writeln ('This is First Line');
Writeln ('This is the second Line');
Writeln ('This is the first line','This is complete of the first line');
************************** الثاني : Write وهو مشابه للأمر Writeln ولكن الفرق الوحيد أنه لا ينتقل سطر للأسفل بعد طباعة الجملة بل يكمل بنفس السطر كود:
Write ('This is the first line ');
Writeln ('This is the complete of the first line');
Write ('This is the Second line');
Write ('This is complete of line 2');
Writeln ('This is the End');
يقرأ البرنامج السطر الأول ويطبعه وبما أنه Write فإن المؤشر لن ينتق للسطر الذي يليه بل سيقرأ السطر الآخر ويطبعه بنفس السطر وبما أن السطر الثاني من النوع Writeln فإن المؤشر بعد الإنتهاء من طباعة السطر ينتقل للسطر التالي لطباعة البيانات الأخرى لذلك سيكون ناتج السطور السابقة بعد التنفيذ This is the first line This is the complete of the first line This is the Second line This is complete of line 2 This is the End I : بعد الإنتهاء من نتفيذ الأوامر ينتقل المؤشر I إلى السطر الذي يلي آخر جمله لإنها من النوع Writeln تدريب : لو أراد منك طباعة الأسطر التالية My Name is Mahmoud o I live in Jabalia حيث يقصد دائما بالعلامة o فراغ الجواب كود:
Writeln ('My Name is Mahmoud');
Writeln ;
Writeln ('I Live in Jabalia');
كود:
Writeln ('My Name is Mahmoud');
Writeln('');
Write ('I Live in Jabalia ');
والفرق بينهما أن المؤشر في الحالة الأولى سيكون في النهاية في السطر الذي يلي آخر عبارة وفي المثال الثاني سيكون في نفس السطر الأخير لو أراد طباعة قيمة في متغير فنستخدم الأمر كما يلي في هذا المثال فلو فرضنا أن S=10 وأراد طباعة قيمتها فنكتب كود:
Writeln ('The Value of S =',s);
ويمكن أيضا طباعة أكثر من قيمة أكانت جملة أو متغير وذلك بإستخدام الفاصلة [,] بينها مثل لو عرفنا المتغيرات التالية كود:
A = 'Mahmoud';
B = '=' ;
C= '18';
Writeln ('My Name is',B,A,'and my age is',c);
My Name is =Mahmoud and my age is 18 |
||||
|
|||||
| اقتباس المشاركة |
|
|
#6 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس السادس :
أمر Read والأمر Readln سنتعرف في هذا الدرس على نوع جديد من الأوامر في الباسكال وهذا النوع من الأنواع الشائعة الإستخدام في البرنامج وهو الأمر Readln ويستخدم هذا الأمر لإدخال البيانات من المستخدم وحفظها في متغيرات تناسب نوع البيانات المدخلة وله نوعان : الأول : Readln وهو يقوم بقراءة البيانات من المستخدم وبعدها ينتقل المؤشر للسطر التالي **************** الثاني : Read وهو مشابه للأمر Readln ولكن الفرق الوحيد أنه لا ينتقل سطر للأسفل بعد قراءة البيانات بل يكمل بنفس السطر كود:
Write ('Enter Your Name :');
Readln (Name);
في السطر التاني ينتقل البرنامج لوضع إستقبال البيانات من المستخدم ومن ثم حفظها في المتغير المختار Name و يجب أن تكون البيانات المدخلة من نفس نوع المتغير وإلا سوف يولد البرنامج رسالة خطأ Enter your name : I لو أضفنا السطور التالية للمثال كود:
Writeln ('Enter your Age :');
Read (Age);
Write ('Enter your Salary :');
Readln (Salary);
بعدها سيقوم البرنامج بطباعة السطر الخامس ولن ينتقل للسطر التالي بل سيستقبل البيانات في نفس السطر لإننا إستخدمنا الأمر Write |
||||
|
|||||
| اقتباس المشاركة |
|
|
#7 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
تابع ::
يجب علينا قبل الدخول في البرمجة فهم الطريقة الرياضية للتعامل مع البيانات وطريقة تعامل المصنف مع الدوال الرياضية والأقواس و برنامج الباسكال يتعامل مع العمليات الرياضية حسب القاعدة التالية والتي تعتمد على الأسبقية بحيث : أولا : تنفيذ الدالة Not ثانيا : تنفيذ الدوال التالية AND MOD DIV / * بحيث أن الدالتين Div و Mod دوال رياضية سيتم التعرف عليها لاحقا ثالثا : تنفيذ العمليات OR - + رابعا : تنفيذ المعاملات المنطقية = <> <= >= < > عندما يكون هناك دالتين من نفس المستوى ننفذ الدالة بدءا من اليسار إلى اليمين لتتضح الرؤيا حول إستخدام قاعدة الأولويات نرى الأمثلة التالية : 1-Write a PASCAL program to find the roots of a quadratic equation (assume that b2 - 4ac >= 0) يريد في هذا المثال إيجاد جذور لمتتابعة ثنائية الحل كود:
Program Root(input,output); Var A,b,c :integer; X1,x2 : real ; وفي حالة وجود عمليات قسمة فناتجها دائما عدد حقيقي وليس صحيح كود:
Begin
Writeln ('Enter the Numbers A , B ,C');
Readln (a,b,c);
X1:= (-b+sqrt(b*b -4*a*c))/(2*a);
X2:= (-b-sqrt(b*b -4*a*c))/(2*a);
Write ('The Nunmber X1 =',x1 ,'And Number X2 =',x2);
End.
في هذا المثال نلاحظ أن الدالتين Div و / يأتيان في مرتبة واحده في أولوية التنفيذ ولكن لإن Div أتت قبل من جهة اليسار فنقوم بتنفيذها أولا لذلك 7 div 2/3 = 3 / 3 = 1.0 ( لاحظ أن العدد جوابه 1.0 وليس 1 لإنه ناتج من قسمة فلذلك يعد عدد حقيقي Real ولا يعتبر Integer) |
||||
|
|||||
| اقتباس المشاركة |
|
|
#8 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
الدرس السابع
التعابير الرياضية في هذا الدرس سوف نتعرف على العمليات الرياضية المستخدمة في الباسكال وطريقة إستخدامها أولا : العمليات - و + و * التعامل مع هذه العمليات متشابة وهي تقبل الأعداد الحقيقة والصحيحة 5 + 7 = 12 5.0 + 7 = 12.0 7 -5 =2 7*5 = 30 نلاحظ من هذا المثال أن ناتج عدد صحيح Integer + عدد صحيح Integer = Integer عدد حقيقي Real + عدد حقيقي Real = Real عدد صحيح Integer + عدد حقيقي Real = Real ثانيا : العملية / عملية القسمة دائما مهما كان نوع المدخلات أكانت أعداد حقيقة أو صحيح فجوابها دائما عدد حقيقي Real طبعا القسمة على الصفر لا تصح وتولد خطأ بالبرنامج وهو خطأ من النوع الذي يظهر عند تشغيل البرنامج فيجب الإنتباه ثالثا : العملية Div وهي عملية قسمة ولكن فقط تعطي الناتج من القسمة وتهمل الباقي من القسمة 20 Div 3 = 6 18 Div 3 = 6 (-17) Div 3 = -5 19 Div 3 = 6 3 Div 10 = 0 16 Div (-3) = -5 الدالة Div تقبل دائما مدخلات من النوع الصحيح Integer وتعطي جواب دائما Integer ولا تقبل أبدا القيم الحقيقية Real 1.4 Div 4 = X --------- نتوقف هنا رابعاً : العملية Mod وتعطي هذه العملية الباقي من قسمة عددين ولاحظ دائما عند قسمة عدد على أكبر منه فناتجها العدد نفسه 20 Mod 3 = 2 18 Mod 3 = 0 19 Mod 3 =1 3 Mod 10 = 3 الدالة Mod تقبل دائما مدخلات من النوع الصحيح Integer وتعطي جواب دائما Integer ولا تقبل أبدا القيم الحقيقية Real 1.4 Mod 4 = X |
||||
|
|||||
| اقتباس المشاركة |
|
|
#9 | |
|
قوة السمعة: 6
![]() |
شكرا كتير يا admin محمود والله نشيط يا عم
مشكور كتير وتسلم عيونك |
|
|
|
||
| اقتباس المشاركة |
|
|
#10 | ||||
|
قوة السمعة: 50
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
انت تسلملي والله ^^
|
||||
|
|||||
| اقتباس المشاركة |
![]() |
| الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1) | |
|
|
المواضيع المتشابهه
|
||||
| الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
| دروس فوتوشوب صوت+صورة المجموعه الاول | احمد سعد! | ريــشــة فنــآن | 6 | 01-23-2006 11:41 AM |
| تعلم اساسيات Pascal بسهولة | A s h i q o h a | مُتعلقات التقنية | 2 | 12-14-2005 06:04 PM |
| دروس في الفوتشوب والتعديل والتحمي | Abu Shadi | ريــشــة فنــآن | 9 | 11-20-2005 11:52 AM |
| دروس امنية للمجاهدين فى الأعتقال والتحقيق | ابومهدي | الــوآحــة الـعــآمّــة | 4 | 10-27-2005 12:07 PM |
| دروس امنية للمجاهدين فى الأعتقال والتحقيق | ابومهدي | الــوآحــة الـعــآمّــة | 2 | 10-17-2005 12:12 PM |