Matlab
Matlab
لحل أي مسالة حسابية او منطقية عبر استخدام الحاسبة البد ان يتم تعريف المسالة ثم تحديد
معالمها وتحليل عناصرها ،بالتالي يجب مراعاة ما يلي:
-1تحديد البيانات المعطاة.
-2توضيح الهدف او الغاية من حل المسالة.
-3تحديد النتائج المطلوبة.
-4وضع طريقة للحل على شكل مجموعة من الخطوات المتسلسلة والمتعاقبة.
ان مجموعة الخطوات المتسلسلة التي يتم وضعها لحل المسالة تدعى الخوارزمية Algorithm
ويمكن تمثيل هذه الخطوات باستخدام اشكال رمزية لها معاني محددة ومترابطة فيما بينها
بشكل مخطط وصفي تسلسلي يدعى المخطط االنسيابي (.)Flow Chart
الخوارزميات ()Algorithms
-8قد نستخدم في الخوارزمية الرمز(*) كعالمة للضرب ،والرمز ( )/كعالمة للقسمة ،
والرمز ( )+للجمع ،والرمز( )-للطرح.
-9غالبا نستخدم في الخوارزمية األمر (اطبع) إلخراج المطلوب حسابه.
تؤدي العمليات بمجملها إلى حل المسالة الحل الصحيح. -11
جامعة بابل -كلية التربية للعلوم اإلنسانية -المرحلة األولى -الخوارزميات والمخططات االنسيابية
مثال رقم ( : )1اكتب برنامج يقوم باستقبال درجة الحرارة بالنظام المئوي ( )Celsiusويحولها
الى النظام الفهرنهايتي ( ، )Fahrenheitعلما بان معادلة التحوبل هي :
Fahrenheit= 9/5 *Celsius -32
الحل :
المعطيات :درجة الحرارة بالنظام المئوي ،ومعادلة التحويل.
المطلوب :درجة الحرارة بالنظام الفهرنهايتي.
-1البداية
-2اقرا درجة الحرارة بالنظام المئوي (. )Celsius
-3احسب درجة الحرارة بالنظام الفهرنهايتي ()Fahrenheit= 9/5 * Celsius -32
-4اطبع قيم Celsiusو . Fahrenheit
-5النهاية
البداية -1
اقرا العدد االول (س) -2
اقرا العدد الثاني (ص) -3
احسب م= س+ص -4
اطبع (م) -5
النهاية -6
هو عبارة عن مجموعة من األشكال الهندسية بينها أسهم لتوضيح عمل الخوارزمية،ويمتاز هذا
المخطط بوضوح اكثر من الخوارزمية وخاصة في توضيح عمل الحلقات والشروط المنطقية.
-5الدائرة :تستخدم لتوضيح نقاط توصيل المخطط االنسيابي ،وغالبا في حالة المخططات
ذات االحجام الكبيرة.
-6السهم يستخدم للتوصيل بين األشكال الهندسية السابقة ولالنتقال من خطوة إلى أخرى
وتوضيح مسار المخطط .
مثال رقم ( : )3اكتب خوارزمية الحل وارسم المخطط االنسيابي لقراءة طول وعرض مستطيل
وحساب مساحته ؟
الحل :
المعطيات :طول المستطيل ( ، )Lعرض المستطيل (.)W
المخطط االنسيابي المطلوب :مساحة المستطيل Area=L*W
PRINT Area
END
جامعة بابل -كلية التربية للعلوم اإلنسانية -المرحلة األولى -الخوارزميات والمخططات االنسيابية
مثال رقم (: )4اكتب خوارزمية الحل وارسم المخطط االنسيابي لبرنامج يقوم بطباعة معدل ثالث
درجات ؟
المعطيات :قراءة ثالثة درجات ()A,B,C
المطلوب :جمع األعداد الثالثة ثم تقسيم المجموع على 3
الحل :
المخطط االنسيابي الخوارزمية
CALC Sum=A+B+C
CALC Average=sum/3
PRINT Average
END
مثال رقم : 5اكتب خوارزمية الحل وارسم المخطط االنسيابي لبرنامج يقوم بقراءة عدد واحد
فقط في كل مرة ويقوم بمقارنة العدد مع الرقم 1111فاذا كان العدد اقل من 1111يقوم بإعادة
القراءة مرة أخرى لعدد آخر وإال فانه يقوم بطباعة العدد ؟
IF
No yes
A<1000
PRINT A
END
جامعة بابل -كلية التربية للعلوم اإلنسانية -المرحلة األولى -الخوارزميات والمخططات االنسيابية
مثال رقم : 6اكتب خوارزمية الحل وارسم المخطط االنسيابي لبرنامج يقوم بإيجاد وطباعة
مساحة الشكل الغامق في الشكل التالي؟
علما أن:
2
مساحة المربع = طول الضلع R
R
W مساحة المستطيل = الطول ( * )Hالعرض ()W
READ R,H,W
END
جامعة بابل -كلية التربية للعلوم اإلنسانية -المرحلة األولى -الخوارزميات والمخططات االنسيابية
مثال رقم : 7اكتب خوارزمية الحل وارسم المخطط االنسيابي لبرنامج يقوم بطباعة األعداد
المحصورة بين ( )11-1؟
المعطيات :اجعل X=1
المخطط االنسيابي المطلوب :طباعة األعداد من 1إلى 11
START
الخوارزمية :
-1البداية
-2اجعل X=1
-3إذا كان X<10
MAKE X=1 -4فاطبع X
{ -5فاحسب X=X+1
-6فانتقل للخطوة 3
-7وإال فانتقل للخطوة 8
No Yes
IF -8النهاية
X<=10
PRINT X
CALC X=X+1
END
جامعة بابل -كلية التربية للعلوم اإلنسانية -المرحلة األولى -الخوارزميات والمخططات االنسيابية
تمارين إضافية :التمارين التالية مطلوب حلها كواجب بيتي ويناقش الحل داخل المحاضرة .
تمرين رقم :1اكتب الخوارزمية وارسم المخطط االنسيابي لبرنامج يقوم بقراءة ثالثة أعداد
( )A,B,Cومعرفة العدد األكبر بينها؟
تمرين رقم : 2اكتب الخوارزمية وارسم المخطط االنسيابي لبرنامج يقوم بقراءة عدد وطباعة
كلمة Positiveإذا كانت قيمة العدد اكبر من أو تساوي صفر ،وكلمة Negativeإذا كان
العدد اقل من الصفر ؟
تمرين رقم :3اكتب الخوارزمية وارسم المخطط االنسيابي لبرنامج يقوم بطباعة األعداد
الزوجية المحصورة بين ( )111 -2 1؟
تمرين رقم : 4اكتب الخوارزمية وارسم المخطط االنسيابي لبرنامج يقوم بطباعة األعداد الفردية
بين ( )22-11؟
تمرين رقم : 5اكتب الخوارزمية وارسم المخطط االنسيابي لبرنامج يقوم باستقبال عددين ،
ويستبدل أماكنهما في الذاكرة ؟