من ظن أنه علم فقد جهل – Recursion Method

بسم الله
السلام عليكم
أصل الموضوع أنه في أحد محاضرات البرمجيات أستدعى الدكتور الميثود داخل نفسها وعندها قلت أنها أحدى أختراعاته لأنه مازال جديد في الجافا فهو يدرسها منذ عام وشهرين – أي بدأ معنا المهم أني فوجئت أن هذه الطريقة موجودة بالفعل ليس في الجافا فحسب بل في السي++ أيضاً -غفر الله لنا ظننا السيئ–ارجو ان يتقبل أستاذي أعتذاري- هذه الطريقة تشبه الحلقة التكرارية loop أن لم تكن تقوم بنفس الوظيفة
وسنشرح اليوم كيفية أستخدامها للمبتدئين
الامر بسيط نقوم بعمل ميثود ونضع داخلها شرط أن تحقق نقوم بأستدعاء الميثود التي نبنيها داخل نفسها وأن لم يتحقق يتم تنفيذ أمر آخر وتنتنهي الحلقة
الأكواد ستوضح أكتر
public static int factorial(int x){
int y;
if (x==0)
y=0;
else if(x==1)
y=1;
else{
y=x*factorial(x-1);
}
return y;
}

هذه ميثود تستقبل رقم وتقوم بإرجاع مضروبه
هناك مثال آخر لميثود تستقبل رقم وترجع ال Fibonacci المقابل له

public static int fibon(int x){
int flage=0;
if (x==0)
flage= 0;
else if(x==1)
flage= 1;
else{
flage=fibon(x-1)+fibon(x-2);
}
return flage;
}
لو هناك من يعرف معني كلمة Fibonacci بالعربي فليخبرني بها وجزاه الله خير
للعلم هناك في السي++ نقوم بنفس الطريقة
#include
using std::cout;
using std::endl;

#include
using std::setw;

unsigned long factorial( unsigned long ); // function prototype

int main()
{
// calculate the factorials of 0 through 10
for ( int counter = 0; counter <= 10; counter++ )
cout <
<

return 0; // indicates successful termination
} // end main

// recursive definition of function factorial
unsigned long factorial( unsigned long number )
{
if ( number <= 1 ) // test for base case
return 1; // base cases: 0! = 1 and 1! = 1
else // recursion step
return number * factorial( number – 1 );
} // end function factorial
—————————————————————————-
#include
using std::cout;
using std::cin;
using std::endl;

unsigned long fibonacci( unsigned long ); // function prototype

int main()
{
// calculate the fibonacci values of 0 through 10
for ( int counter = 0; counter <= 10; counter++ ) cout << "fibonacci( " <

لو هناك من لم يفهم معني هذا الكلام فليخبرني وان شاء الله نقدر نوضح اكثر
أهم حاجة نصيحة ما تتغر بنفسك
-أكواد السي++ منقولة من how to program c++ ني مازلت مبتدا بها حديثاً-
دمتم في رعاية الله

أضف تعليقاً

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s

%d مدونون معجبون بهذه: