اهلا وسهلا بك فى بوابة الثانوية العامة ... سجل الان

العودة   بوابة الثانوية العامة المصرية > الجامعات والمعاهد المصرية > كليات المجموعة الرياضية

كليات المجموعة الرياضية (الهندسة - الحاسبات والمعلومات - التجارة & التجارة إنجلش - الفنون التطبيقية والجميلة)

 
 
أدوات الموضوع انواع عرض الموضوع
Prev المشاركة السابقة   المشاركة التالية Next
  #1  
قديم 28-09-2008, 07:19 PM
الصورة الرمزية همس
همس همس غير متواجد حالياً
عضو قدوة
 
تاريخ التسجيل: Sep 2006
المشاركات: 1,337
معدل تقييم المستوى: 0
همس is an unknown quantity at this point
New الدرس الحادي عشر من دروس البرمجة للباشمهندس محمد نزل يا جماعة

السلام عليكم ورحمة الله وبركاته

الدرس الحادي عشر في كورس البرمجة للباشمهندس محمد نزل يا جماعة

واللينك اهو


الدرس في آآآخر الصفحة المشاركة رقم 184


بالتوفيق جميعا


ان شاء الله هجدد عنوان الموضوع واللينك كل ما ينزل درس جديد


عشان الناس تآخد بالها وتتابع معانا


او الدرس فقط مباشر

اقتباس:
المشاركة الأصلية كتبت بواسطة msamido مشاهدة المشاركة
بسم الله الرحمن الرحيم

بداية أهلا ومرحبا بكم أعزائى واتمنى تكونوا انهيتم الترم الأول على خير الحمد لله وأهلا بكم فى النصف الثانى من العام الأول وإليكم الدرس الجديد ....
دلوقتى بعد ما كنا اتكلمنا عن الـ variables, conditional statements & loops بأنواع كل الحاجات دى مفروض دلوقتى هنتكلم عن درس جديد اسمه الـ functions وهنتكلم ازاى نعملها وازاى نستخدمها .. واحنا بالفعل استخدمنا نوع منها بيتمثل فى شكل الـ main واحنا قولنا قبل كده إن الـ main دى هى الـ function الرئيسية فى البرنامج اللى بيبدأ منها ... طيب إيه بقى function دى ؟؟؟
عامة بنعرف الـ functions على إنها block of code أو جزء كده من الكود على بعضه (هو يعنى إيه block بالعربى؟؟) عبارة عن مجموعة commands بتنفذ هدف معين. طيب شكلها إيه بقى طنط function دى ؟؟؟ أقولكم أنا شكلها إيه ؟؟ هى حلوة ولذيذة كده وبنت حلال وبتتكون من جزئين :
1- Prototype
2- Body
مصدقنا خلصنا من function يطلعلنا بـ prototype و body ؟؟؟
هنقول كل ده إن شاء الله حالاً .... بصوا بقى إحنا نمسك كل حاجه لوحدها أولا نشوف الـ prototype ده هو تعريف الـ function اللى الـ compiler هيبص عليه ويعرف الـ function دى بيه طيب عبارة عن إيه الـ prototype ده ولا يبقى ازاى ولا شكله إيه ؟؟
نقول بردوه .... هو عبارة عن 3 أجزاء ... أول جزء مهمته بيقول للـ compiler الـ function دى هترجع إيه ؟؟ أو إيه النوع اللى هترجعه أو إيه ال datatype اللى هترجعه . وده واحد من الـ datatypes اللى خدناها قبل كده ولو مش عايزينها ترجع حاجه بنقوله keyword اسمها void والأخت void دى معناها إن الـ function دى هتنفذ الكود اللى جواها بس مش هترجع حاجه تمام كده ؟؟؟
طيب هو يعنى ايه اصلا الـ function بترجع حاجه ؟؟
ده معناه إن الـ function دى هتنفذ كود وتكون نتيجة الـ function دى كلها variable من الـ data type اللى احنا قولناله انها هترجعه أو ممكن نقول بكل بساطه إن مجمل الـ function دى هيساوى قيمة المتغير اللى راجع ومن نوعه كمان. هنشوف كل ده بالتوضيح مع الأمثلة إن شاء الله.
الجزء التانى بقى .. هو إسم الـ function دى وبنسميها زى ما احنا عايزين بس يفضل يكون اسم معبر عنها يعنى اسم لما اقراه كده افهم هى عايزه ايه أو بتعمل ايه بس طبعا ليك مطلق الحرية تسميها زى ما انت عايز بس الإسم مفيش فيه مسافات بس ... حلو الجزء التانى مش كده ؟؟
طيب الجزء التالت بقى بيقول إيه ؟؟ بيقول ايه الـ arguments أو (مش عارف يعنى ايه بالعربى بردوه) المهم دى القيم اللى ممكن نباصيها للـ function دى أو نبعتهالها تنفذ عليها الكود بتاعها وترجعلنا نتيجة أو مترجعش هى حرة بقى حسب الجزء الأول ما قالها
تمام كده ؟؟ ده الـ prototype
أما بقى الـ Body فهو بنفتح قوسين مجموعة وبنكتب بينهم أى شوية code وكده تبقى خلصت الـ function كلام جميل ؟؟
طيب ناخد مثال بسيط جدا ونقول إننا عايزين نعمل function بتضرب رقمين صحيحين فى بعض وبترجع الناتج ونشوف شكلها هيبقى ازاى
كود:
#include <iostream.h> #include <conio.h> Int Multiply(int firstno, int secondno) { Int result = firstno * secondno; Return result; } Void main(void) { Int x; Cout<<”enter the first no. : “; Cin<<x; Int y; Cout<<”enter the second no. : “; Cin<<y; Int z = Multiply(x,y); Cout<<”the result is : “<<z; Getch(); }
طيب تعالوا بقى نشوف الموضوع ده ايه ونتكلم واحده واحده, طبعاً أول سطرين احنا عارفين بتوع ايه ندخل فى اللى بعد كده وده هيبقى أول جزء فى الـ function بتاعتنا وهو الـ prototype وقلنا إن الـ prototype بيتكون من 3 اجزاء وهى أول حاجه الـ return datatype أو هى الـ function دى هترجع ايه ؟ وزى ما قلنا إننا عايزين نعمل function بتضرب رقمين صحيحين فى بعض فالنتيجة هتكون أيضا رقم صحيح ولذلك قلنا إن الـ function دى هترجع حاجه من نوع int أو إن الـ datatype اللى راجع هيبقى int . طيب ولو مش عايزين الـ function دى ترجع حاجه قولنا نعمل ايه ؟؟ نكتب مكان الـ int datatype كلمة void ودى معناها إن الـ function مش هترجع حاجه.
ده كان أول جزء فى الـ prototype طيب تانى جزء للـfunction ايه ؟؟ قلنا هو اسم الـ function وده اللى احنا هناديها بيه فى أى مكان واحنا هنا سميناها Multiply .... تمام ؟؟
طيب الجزء الثالث إيه هو بقى ؟؟
قلنا إنه ايه هى الـ arguments اللى هنباصيها للـ function دى أو إيه المتغيرات اللى محتاجاها الـ function دى , وبما إننا عايزينها ترجع لنا حاصل ضرب رقمين صحيحين يبقى لازم نباصيلها الرقمين الصحيحين دول وإلا هى هتجيبهم منين؟
وبنكتب الـ arguments دى بالشكل اللى شوفناه وهو بنفتح قوس بعد اسم الـ function ونكتب الـ datatype ومسافه واسم الـ variable وبعدين "," وهكذا الـ argument الثانى والثالث وأى عدد .... طيب لو مش عايزين نباصى للـ function دى حاجه نعمل ايه ؟؟؟ نفتح القوس ونقفله وخلاص وكده يبقى الـ prototype انتهى ... تمام؟؟
نيجى بقى للجزء الثانى من الـ function وهو الـ body .... وقلنا بنفتح قوسين مجموعة وبينهما الكود اللى عايزينه يتنفذ ... وهنا المثال واضح جدا بيعرف variable اسمه result وبيساويه بحاصل ضرب الأرقام اللى جاياله وبكون يكون عندنا حاصل ضرب الرقمين المطلوبين ... طيب نرجع النتيجة دى ازاى بقى ؟؟؟ هى دى الجملة الجديدة فى الموضوع وهى إننا بنقوله return وبعدها الـ variable اللى عايزين نرجعه... كويس كده ؟؟؟
وبعدين قوس المجموعة اتقفل وده معناه إن الـ function خلصت خلاص ..
ونكمل هنلاقى بعد كده الـ main بتاعتنا ودى بردوه زى ما قلنا هى اصلا عباره عن function ولو راجعناها زى اللى فاتت هنلاقى إنها بردوه بتتكون من prototype وهو عباره عن 3 اجزاء أول جزء هى مفروض ترجع ايه وقلنا إنها مش هترجع حاجه علشان كاتبين void وبعدين اسم الـ function وهو main وبعدين مش هنباصيلها arguments زى ما شايفين القوسين الفاضيين ... وبعدين الـ body والكلام اللى جواه عادى جدا مفيش جديد غير ازاى هننادى على الـ function بتاعتنا وده كان بالشكل ده ... Multiply(x,y) .... وساوينا النتيجة بالمتغير z اللى هو من نفس نوع الـ return type .... يعنى زى ما قلنا هنا الـfunction كلها على بعضها حلت محل قيمة للمتغير z ...
إذن احنا علشان ننادى الـ function بنكتب اسمها ونفتح قوسين وبينهم نباصى الـ arguments بتاعتها ولاحظوا إنها لازم تكون من نفس نوع الـ arguments اللى احنا معرفينها فى الـ function فوق ...
طيب السؤال دلوقتى بقى ؟؟؟ يا ترى خط سير البرنامج ده هيبقى ازاى ؟؟؟ أو ازاى الـ compiler هينفذ البرنامج ده ؟؟؟؟
إحنا قولنا قبل كده إن الـ compiler علشان ينفذ اي برنامج بيدور على الـ main function بتاعته ويبدأ ينفذ من عندها واللى هيحصل فى حالتنا إنه هيوصل للـ main ويعرف المتغير x ويطلبه من اليوزر وهكذا الـ y وبعدين يعرف z وينادى الـ multiply function بتاعتنا وهنا ينتقل للـ function ويبدأ ينفذ وياخد معاه قيمة الـ arguments اللى الـ function محتاجاها وهى قيمة x,y ويبدأ ينفذها فهياخد قيمة x يحطها فى الـ firstno وياخد قيمة y يحطها فى الـ secondno وبعدين يعرف result ويساويه بحاصل ضرب القيمتين ويرجع النتيجة وأول الـ compiler ما يقابل return ياخد علطول الناتج وينهى الـ function ويرجع من مكان ما جه وهو عند السطر اللى كان بينادى فيه عليها ويكون معاه النتيجة يساوى بيها المتغير z وينتقل للسطر اللى بعده , فيطبع z على الشاشه ويستنى امر علشان يقفل وكده انتهى البرنامج ..... حد فاهم حاجه ؟؟؟؟؟؟؟؟ يارب يكون حد فهم....
طيب بكده انا انتهيت من الكلام النهارده ومستنيكم تقولولى فهمتم حاجه ولا لأ علشان هنشوف بقى اشكال تانيه للـ function واختلافات اخرى وملاحظات وهكذا .. إلخ إلخ إلخ...

شكرا وإلى لقاء فى حلقة قادمة إن شاء الله....
__________________
ThE...EnD.. SorrY
أستودعكم الله الذي .. لا تضيع عنده الودائع .. احبكم جميعا في الله

آخر تعديل بواسطة همس ، 16-02-2009 الساعة 06:41 PM
 

العلامات المرجعية


ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع


جميع الأوقات بتوقيت GMT +2. الساعة الآن 11:22 PM.