انت هنا الان : شبكة جامعة بابل > موقع الكلية > نظام التعليم الالكتروني > مشاهدة المحاضرة
الكلية كلية العلوم للبنات
القسم قسم الحاسبات
المرحلة 4
أستاذ المادة نور كاظم ايوب مهدي المهدي
14/11/2015 12:34:12
مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 1 1 بناء دالة -3 تستخدم الصيغة العامة الاتية في بناء برنامج فرعي في لغة الماتلاب : function [var1,var2,…,varn]= اسم الدالة (i1,i2,…,in)
statements
حيث: تمثل معاملات الأخراج. var1,var2,…,varn معاملات الأدخال . i1,i2,…,in ان ابسط طريقة لأستدعاء الدالة المبنية يتم حسب الصيغة العامة [var1,var2,…,varn]= اسم الدالة (i1,i2,…,in) تعطى قيم لكي تستخدمها i1 ,i2,…,in عند الأستدعاء ف?نّ ف?نّها var1,var2,…,varn الدالة لتوليد المخرجات،ام ا تكتب بشكل متغيرات. 2 احذر عند التعامل مع دوال ماتلاب!! -3 عند كتابة دالة يجب التقي د بالقواعد الآتية : برنامج عادي ). )script /M-File 1-الدالة تكتب في في ?ايتها. end 2-لايمكن ان تتضمن الدالة عبارة مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 2 3-اذا كانت الدالة تستدعي دوالا اخرى ف?نّ تلك الدوال (المستدعاة) تبنى بعد الدالة المستدعية. و التي تقطع return 4-يمكن الدالة ان تتضمن عبارة command التنفيذ و تعيد السيطرة الى شاشة (عادةً تستخدم فقط في الدالة الرئيسية ). 5-يجب ان يخزن البرنامج بأسم اول دالة تظهر فيه.عند الخزن نلاحظ انّ ماتلاب يختار (اسم الدالة كأسم تلقائي للبرنامج. (m. 6-اذا كان هناك معامل اخراج واحد لاداعي لوضعه بين القوسين []. برنامج 1.3 : برنامج تعليمي يحوي على الإجراءات الآتية :- يحوي على x التي تقوم بقراءة متجه reading 1- الدالة من الأعداد. n التي تقوم ب?يجاد مجموع الأعداد الفردية في fun 2- الدالة .x المتجه الشكل التالي يوض ح البرنامج مع تنفيذه:- مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 3 يتم من خلالها main في البداية تم كَّتابة دالة رئيسية . fun و reading استدعاء الدالتين وتقرأ قيم n تقوم بقراءة عدد الأعداد reading الدالة تستفيد من المتغيرات التي fun اما الدالة x المصفوفة بأستعمالها كمعاملات (x,n) reading استحصلتها الدالة لأختبار العدد فأذا كان mod ادخال،الدالة تستخدم الذي k ناتج الأختبار واحد فهو فردي و يضاف الى ا? مع تم تصفيره في بداية الدالة ليأخذ قيم صحيحة في كل تنفيذ. تمرين:- هل تستطيع حل البرنامج السابق بأستخدام دالتين فقط ؟ تمرين:- قم بحل البرنامج السابق بدون استخدام دالة ؟mod مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 4 برنامج 2.3 دمج متجهين البرنامج يقوم بقراءة متجهين متساويين في الحجم ثمَّ ينفذ واحد من الإجراءات الآتية فقط في كل مرة ينفذ فيها البرنامج ( حسب رغبة المستخدم )،الإجراءات هي : .c يقوم بدمج المتجهين لانتاج المتجه : con -1 التي حجمها مساوي d يقوم بانتاج المتجه : uni -2 لحجم المتجهين بحيث أ?ن : d = [ a1 b2 a3 b4 ….] هي الدالة الرئيسية في البرنامج وفيها begin الدالة من القيم لكل n يتم قراءة عدد القيم في المتجهين وهو متجه ( لأنَّ الحجم متساوي ) ، تعريف وتصفير المتجهات ، و سؤال المستخدم عن الأجراء b وa قراءة قيم المتجهين con الذي يرغب بأستخدامه وبالتأكيد استدعاء الدالتين التي تمنحنا حق تنفيذ switch وذلك بأستخدام uni و choice اجراء واحد بالأعتماد على اختيار المستخدم عن c كمعاملات ادخال و تنتج b و a تأخذ con الدالة طريق دمج المتجهين بصيغة مختصرة كالآتي : c = [a b] متجه عناصره جاءت من عناصر c انَّ هذه العبارة تعني ان .b متبوعة بعناصر a بشرط :ا?ن الموقع الفردي فيها يأخذ d تكو ن uni الدالة ام ا الموقع الزوجي a قيمته من الموقع المناظر له في .b يأخذ قيمته من الموقع الناظر له في الشكل الآتي يوض ح البرنامج مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 5 تنفيذ البرنامج .( con يختار ) choice= أ- في حالة ادخال المستخدم 1 .( uni يختار ) choice= ب -في حالة ادخال المستخدم 2 و لنفس بيانات المتجهين. مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 6 بأستخدام دوارات con تمرين:- هل تستطيع حل دالة ؟ for ؟mod بدون استخدام دالة uni تمرين:- قم بحل دالة 3.3 دوال مكتبية مفيدة الجدول الاتي يوضح مجموعة من الدوال المكتبية المفيدة : الدالة الوظيفة مثال char(ASCII) تحويل رقم يمثّل الى ASCII شفرة الرمز المقابل لتلك الشفرة char(65) ans= A Double(X) تعيد شفرة الاسكي x للرمز fix(x) تعيد الجزء الصحيح(ما قبل الفارزة) اذا عدد عشري x كان fix(3.5) ans=3 مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 7 round (x) الى x تقر ب العدد اقرب عدد صحيح round(3,5) ans = 4 Rand/randint تقوم : Rand بتوليد عدد عشري بين الصفر و الواحد. تولد :Randint رقم ثنائي عشوائي (اما 0 ( او 1 اذا اضيف معامل ادخال واحد فان هذه الدوال تكون مصفوفة مربعة من الارقام العشوائية، اما اذا اضيف معاملان لها فان هذه الدوال تولد مصفوفة ابعادها مطابقة لابعاد المعاملات المدخلة. rand*(maxmin)+ min تول د عدد عشري عشوائي ضمن [min الفترة و لتوليد max] عدد صحيح توضع هذه الصيغة كمعامل للدالة round rand*(9-2)+2 ans= 8.6509 مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 8 eye(m,n) تول د مصفوفة صف ا m وحدة تحوي عمودا n و eye(3,3) Length(x) تعيد عدد العناصر في المتجه x [r,c]=size(x) تعيد ابعاد حيث x المصفوفة يخزن عدد الصفوف و يخزن r في المتغير عدد الاعمدة في c المتغير برنامج 3.3 ازالة التكرار بصورة عشوائية حيث تتراوح قيم a دالة تقوم تولد متجه الذي يحوي b هذا المتجه بين ( 0) الى ( 9) وتنشأ المتجه بدون تكرار. a عناصر بمعنى لو ادخل المستخدم متجه مكون من 7 عناصر: A= [9 6 0 8 8 6 7] الذي يحوي b فان المتجه فان الدالة ستعييد المتجه العناصر بدون تكرار وهو ما يتضح من الشكل الاتي : مدخل الى البرمجة بلغة ماتلاب الدرس الرابع : البرامج الفرعية في ماتلاب 9 الشكل الاتي يوضح البرنامج :
المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .
|