alwazer is an Arabic minister forum with topics منتديات الوزير العامة  
التعليمية الأدبية العامة الدليل أدلة فيديو صوتيات جوال بطاقات العاب برامج مقالات استضافة قصص القرآن هاكات بروكسيات مسجات تفسير الأحلام الأسرة المسلمة
فلاشات قبائل جافا الدروس الترجمة ابتسامات ستالايت الصحة تحميل دراسات النكت المطبخ شعر أزياء صور بحث ماسنجريات سكربتات عالم حواء إحداثيات المناطق
أخبار اسلام تصميم مطويات شات استايلات مكتبة أسهم مدونات برمجة دردشة قضايا رياضه هكر حماية تصوير سير فرات بلوتوث رفع الملفات الثقافة الجنسية

يالله حيه عسى ما شر يقولون انك غير مشترك معنا. حلفت عليك اشترك بالضغط هنــا
قديم 09 Sep 2005, 08:33 AM رقم المشاركة : 1
معلومات العضو
المفقوش
مستشــار الوزارة العــامة وكبير المصرقعين

الصورة الرمزية المفقوش

Mf (41) ال functions في لغه السي!!!!

السلام عليكم

ساحاول قدر المستطاع ان اختصر الموضوع واقول المهم .

ال Functions او كما تسمى بالعربي (دوال) , فائدتها الاساسيه هي توفير الجهد وتقسيم البرنامج بحيث يسهل على المبرمج تطويره.

عادة تكتب الداله بهذه الصيغه:

كود:
data type + function name (parameter1, parameter2, etc)
{
...
some code here
....
return (value)
}


حتى اوضح اكثر , سأقوم بكتابه مثال عملي والمثال سيكون بسيط جدا وهو عباره عن داله تقوم بحساب متغيرين ثم تعطيك الناتج.


كود:
int func ( int x, int y)
{

int sum;

sum = x + y;

return (sum);
}

في البدايه قمنا بتعريف نوع الداله وهي int , ثم قمنا بكتابه اسم للداله وانا اخترت الاسم func, ثم كتبت الباراميترز التي سأستخدمها بالاضافه الى التعريف بنوعهم وكتبتها كما شاهدت هكذا ( int x, int y) ثم قمت بكتابه قوس البدايه لاكتب كود الداله . ثم قمت بتعريف المتغير sum لاضع فيه ناتج جمع x و y. ثم كتبت sum = x + y; لان هذا ما اريد ان تقوم به الداله. ثم في السطر القبل الاخير قمت بأعاده ناتج sum (كل داله يجب ان تعود بقيمه معينه). ثم انهيت عمل الداله بكتابه }


الان قد تتسائل , ما الفائده من هذا كله ؟؟؟؟ الفائده هي كالتالي :


كود:
#include <stdio.h>
int func ( int x, int y)
{

int sum;

sum = x + y;

return (sum);
}

int main()
{
	printf("number 5 + number 6 = %d", func(5, 6));
	return 0;
}


قمنا بكتابه الداله مره واحده ثم قمنا بأستدعائها ونستطيع ان نستدعي الداله التي قمنا بكتابتها في اي مكان بالبرنامج. سأقوم بشرح بعض النقاط التي قد تبدو غامضه للمبتدئين.

1. نقوم بكتابه الدوال قبل الداله الرئيسيه وهي main()
2.عندما نريد استعمال داله نقوم فقط بكتابه اسمها في داخل البرنامج وهي ستقوم بالباقي كما في البرنامج السابق.


===========

توجد functions لا تحتاج لأعاده اي قيمه , هذا مثال بسيط عنها :

كود:
void simple (void)
{
printf("hello, this is a simple function");
}

دائما نقوم بتعريف الدوال التي لا تعيد قيمه ب كلمه void اي ان الداله لا تعيد اي قيمه.




والان هذا برنامج يشمل درس اليوم.

كود:
#include <stdio.h>
float perimeter (float x, float y)
{
	float sum;
	sum = (x + y) * 2;
	return (sum);
}

void success (void)
{
printf("it was a simple exampel :)");
}

 int main()
{
	printf("the perimeter of a rectangle is:%f\n", perimeter (4.3, 2.4));

	success();
  return (0);
} 

في بعض الاحيان ترى انه يتم تعريف الداله ثم استخدامها ثم كتابه اجزائها. حتى اوضح اكثر شوف البرنامج البسيط اللي كتبناه بالاخير كيف رح يصير

كود PHP:
#include <stdio.h>
float perimeter (float xfloat y);

void success (void)
{
printf("it was a simple exampel :)");
}

int main()
{
printf("the perimeter of a rectangle is:%f\n"perimeter (4.32.4));

success();
 return (
0);
}

float perimeter (float xfloat y)
{
float sum;
sum = (y) * 2;
return (
sum);


لاحظ اننا قمنا بكتابه اسم الداله فقط بالبدايه float perimeter (float x, float y);

وبعد نهايه البرنامج الرئيسي قمنا بكتابه عمل اللداله, لاحظ الاختلاف بين طريقه كتابه البرنامجين, ولاحظ اننا اضفنا ; بعد اسم الداله float perimeter (float x, float y).

الطريقه الثانيه انا لا احبذها ابدا لكني ذكرتها لان فيه كثير مبرمجين يكتبوها بهالطريقه.

هناك function تسمى بال recursion functions لكني لن اتطرق الى شرحها , لانها لا تستعمل بكثره وتسبب ارباك للمبتدئين بالاضافه الى انه لا ينصح بأستعمالها بكثره لان تؤثر سلبيا على عمل البرنامج. ونقل لزيادة المعرفة..


في حال وجود خطأ ارجوا تصحيحه :)

والسلام عليكم
__________________

تستطيع أن ترى الصورة بحجمها الطبيعي بعد الضغط عليها

المفقوش غير متواجد حالياً   رد مع اقتباس
إعلانـات تــجـــاريـــة
قديم 31 Mar 2007, 06:18 PM رقم المشاركة : 2
معلومات العضو
بن عبدالرحيم

نائب الوزير مالك الشبكة


الصورة الرمزية بن عبدالرحيم

إحصائية العضو











آخر مواضيعي

بن عبدالرحيم غير متواجد حالياً


الرعيل الاول: وسام الوزير للرعيل الأول المميز - السبب: تجده في كل مكان وأقرب الناس إليكوسام الوزير الخاص: يمنح لنواب الوزير فقط ومن هم في مرتبة الوزير في كل شي في الشبكة ويملكون خصائص الكنترول - السبب: الرجل الثاني الذي تستطيع الرجوع إليه بعد الوزير في الشبكة

افتراضي

السلام عليكم ورحمة الله وبركاته
الله يعطيك العافيه على الموضوع
تمنياتي لك بالتوفيق
بن عبدالرحيم غير متواجد حالياً   رد مع اقتباس
إعلانـات تــجـــاريـــة
قديم 31 Mar 2007, 09:02 PM رقم المشاركة : 3
معلومات العضو
ABUSMGR
نـــــائــــــب الـــــــوزيــــــر
افتراضي

[align=center]
السلام عليكم ورحـمة الله وبركاته
أخـي الغالي المفقوش
الله يعطيك العافية على هذا الموضوع
تمنياتي لك من الله بالتوفيق
دمت من الله بكل خير


أخـوك
ABUSMGR
[/align]
__________________

ABUSMGR غير متواجد حالياً   رد مع اقتباس
إعلانـات تــجـــاريـــة
قديم 25 Jul 2007, 12:01 PM رقم المشاركة : 4
معلومات العضو
محمد مختار
وزيــر مـــــــاســـي وبكل جدارة

الصورة الرمزية محمد مختار

افتراضي

السلام عليكم ورحمة الله وبركاته
الله يعطيك العافيه على الموضوع
تمنياتي لك بالتوفيق
__________________

محمد مختار

محمد مختار متواجد حالياً   رد مع اقتباس
إعلانـات تــجـــاريـــة
رد



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 
أدوات الموضوع
طرق مشاهدة الموضوع

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

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
تينوريو يقود السد مجددا لإحراز كأس ولي العهد القطري لودى شموخ عزي وزارة الرياضة العامة وكرة القدم Sport and football 0 19 Apr 2008 03:47 AM
- الشد العضلي بالساق(نظرة شاملة على جميع الحالات) لودى شموخ عزي عيادة العظام Bone 1 12 Mar 2008 01:24 PM
الشد العضلي..أسبابه وعلاجه نانا22 وزارة العيادات الطبية Medical Clinics 2 20 Nov 2007 11:40 AM
نستكمل صيانه السى دى روم خطوة بخطوة المفقوش وزارة الكمبيوتر والانترنت العامة Computer Hardware, Internet 1 01 Nov 2007 11:00 PM
صيانه السى دى روم خطوة بخطوة المفقوش وزارة الكمبيوتر والانترنت العامة Computer Hardware, Internet 0 06 Oct 2007 08:06 AM


الساعة الآن: 08:38 PM

بحث مخصص
sitemap sitemap Powered by MyPagerank.Net

Powered by vBulletin® Version 3.6.7, Copyright ©2000 - 2008, Tranz By Almuhajir
جميع الحقوق محفوظة ل شبكة الوزير العالمية

SEO by vBSEO 3.1.0 ©2007, Crawlability, Inc.