CodeGym /مدونة جافا /Random-AR /سلسلة فيبوناتشي في جافا
John Squirrels
مستوى
San Francisco

سلسلة فيبوناتشي في جافا

نشرت في المجموعة
قبل أن ننظر إلى برنامج سلسلة فيبوناتشي في جافا، دعونا نستكشف ما هي الطريقة الرياضية لحساب أرقام فيبوناتشي.
"تتشكل سلسلة فيبوناتشي عندما نجمع آخر رقمين متتاليين من التسلسل الذي يبدأ بالرقم 0 و1."
بمعنى آخر يمكننا القول، في تسلسل فيبوناتشي، الرقم التالي يساوي مجموع الرقمين الأخيرين. على سبيل المثال، 0، 1، 1، 2، 3، 5، 8، 13، 21، 34... إذا نظرنا إلى السلسلة المذكورة أعلاه، يبدو من السهل جدًا حسابها في الرياضيات. كل ما عليك فعله هو أخذ آخر رقمين من أرقام فيبوناتشي، وإضافتهما وها أنت ذا. والنتيجة هي أحدث رقم في السلسلة. وبالتالي فإن الرقم التالي في تسلسل فيبوناتشي سيكون 21 + 34 = 55. ومع ذلك، في Java هناك خوارزميات مختلفة للقيام بذلك. دعونا نلقي نظرة على الطرق الممكنة لدينا.

سلسلة فيبوناتشي في جافا [ الطريقة التكرارية ]

الطريقة الأولى والأكثر أساسية لحساب برنامج سلسلة فيبوناتشي في Java هي استخدام الطريقة التكرارية. كما يوحي الاسم، سنقوم بتكرار السلسلة باستخدام حلقة. دعونا نتعمق أكثر في المثال التالي.

مثال

public class IterativeFibonacci {

	public static void fibonacci(int MAX) {

		int firstNumber = 0;
		int secondNumber = 1;
		int fibonacci = '\0';

		System.out.print(firstNumber + " ");
		System.out.print(secondNumber + " ");

		for (int i = 2; i < MAX; i++) {

			fibonacci = firstNumber + secondNumber;
			System.out.print(fibonacci + " ");

			firstNumber = secondNumber;
			secondNumber = fibonacci;
		}
	}

	public static void main(String[] args) {

		System.out.println("Print Fibonacci Series Using Iterative Method");
		int MAX = 15;
		fibonacci(MAX);

	}
}

انتاج |

طباعة متسلسلة فيبوناتشي باستخدام الطريقة التكرارية 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377

توضيح

في المثال أعلاه، نستخدم طريقة تسمى " فيبوناتشي " لطباعة سلسلة فيبوناتشي بشكل متكرر. يقوم المتغير MAX بتخزين العدد الإجمالي لأرقام فيبوناتشي التي تريد طباعتها. يقوم المتغيران firstNumber و SecondNumber بتخزين أول رقمين فيبوناتشي على التوالي. ثم تبدأ حلقة for بـ i = 2، لأن أرقام فيبوناتشي الأولى والثانية مطبوعة بالفعل. في كل تكرار، يتم تحديث الرقم الأول والثاني للحفاظ على استمرارية السلسلة. تنتهي الحلقة عندما تقترب من الحد الأقصى، أي؛ أنا <الحد الأقصى.

سلسلة فيبوناتشي باستخدام العودية في جافا

نظرًا لأنك على دراية بالطريقة التكرارية، فلنحسب سلسلة فيبوناتشي باستخدام العودية في Java.

مثال

public class RecursiveFibonacci {

	// recursive method to return the fibonacci series
	public static int fibonacci(int MAX) {

		// base case
		if (MAX <= 1) {
			return MAX;
		}

		// recursive call
		else {
			// calculate the last two fibonacci numbers recursively
			return fibonacci(MAX - 2) + fibonacci(MAX - 1);
		}

	}

	public static void main(String[] args) {

		System.out.println("Print Fibonacci Series Using Recursion in Java");

		int MAX = 10;
		for (int i = 0; i < MAX; i++) {
		    System.out.print(fibonacci(i) + " ");
		}
	}
}

انتاج |

طباعة متسلسلة فيبوناتشي باستخدام العودية في Java 0 1 1 2 3 5 8 13 21 34

توضيح

أولاً نحدد الحد الأقصى لعدد الأرقام لسلسلة فيبوناتشي العودية في Java. ثم نسمي الدالة العودية التي تسمى " فيبوناتشي ". كما تعلم، لاستخدام العودية في Java، علينا تحديد حالتين والتعامل معهما. الأول هو الحالة الأساسية، والآخر هو الحالة العودية. في الحالة الأساسية، نتحقق مما إذا كانت قيمة MAX أقل من أو تساوي 1. إذا كانت صحيحة، فسيتم إرجاع نفس الرقم (تخيل أول رقمين من فيبوناتشي 0 و1). هذه هي الطريقة التي يتم بها حساب الأرقام الأساسية. في الاستدعاء العودي، نحسب آخر رقمين من السلسلة عن طريق تقليل واحد واثنين من MAX. ستستمر طريقة فيبوناتشي في استدعاء نفسها حتى تصل إلى آخر رقمين (0 و 1)، ثم تضيفهما ثم تستمر في إضافة الرقمين الأخيرين حتى تصل إلى MAX.

خاتمة

نأمل أن تكون قد فهمت الآن الطريقتين المختلفتين لحساب فيبوناتشي في Java. يمكنك أيضًا استخدام البرمجة الديناميكية لتحدي نفسك. كما هو الحال دائمًا، نتوقع منك التدرب والتحسن كل يوم. استمر في التعلم واستمر في النمو!
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION