CodeGym /وبلاگ جاوا /Random-FA /سری فیبوناچی در جاوا
John Squirrels
مرحله
San Francisco

سری فیبوناچی در جاوا

در گروه منتشر شد
قبل از بررسی برنامه سری فیبوناچی در جاوا، بیایید بررسی کنیم که روش ریاضی محاسبه اعداد فیبوناچی چیست.
سری فیبوناچی زمانی تشکیل می شود که دو عدد متوالی آخر دنباله ای را که با 0 و 1 شروع می شوند جمع کنیم.
به عبارت دیگر می توان گفت در یک دنباله فیبوناچی عدد بعدی برابر است با مجموع دو عدد آخر. به عنوان مثال، 0، 1، 1، 2، 3، 5، 8، 13، 21، 34... اگر به سری بالا نگاه کنیم، محاسبه آن در ریاضیات بسیار ساده به نظر می رسد. شما فقط دو عدد فیبوناچی آخر را بگیرید، آنها را جمع کنید و در آنجا هستید. نتیجه آخرین عدد این سری است. بنابراین عدد بعدی در دنباله فیبوناچی 21 + 34 = 55 خواهد بود. با این حال، در جاوا الگوریتم های مختلفی برای انجام این کار وجود دارد. بیایید نگاهی به راه های ممکن خود بیندازیم.

سری فیبوناچی در جاوا [روش تکراری]

اولین و اساسی ترین راه ما برای محاسبه یک برنامه سری فیبوناچی در جاوا استفاده از روش تکراری است. همانطور که از نام پیداست، سری را با استفاده از یک حلقه تکرار می کنیم. بیایید در مثال زیر عمیق تر کاوش کنیم.

مثال

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 شروع می شود، زیرا اعداد فیبوناچی اول و دوم قبلاً چاپ شده اند. در هر تکرار، شماره اول و دوم برای ادامه سری به روز می شوند. حلقه به پایان می رسد، با نزدیک شدن به حد MAX یعنی; i < MAX.

سری فیبوناچی با استفاده از بازگشت در جاوا

از آنجایی که با روش تکراری آشنا هستید، بیایید سری فیبوناچی را با استفاده از بازگشت در جاوا محاسبه کنیم.

مثال

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) + " ");
		}
	}
}

خروجی

چاپ سری فیبوناچی با استفاده از بازگشت در جاوا 0 1 1 2 3 5 8 13 21 34

توضیح

ابتدا MAX تعداد ارقام را برای سری فیبوناچی بازگشتی در جاوا تعریف می کنیم. سپس تابع بازگشتی به نام " فیبوناچی " را فراخوانی می کنیم. همانطور که می دانید برای استفاده از Recursion در جاوا باید 2 مورد تعریف کرده و به آن بپردازیم. اولی حالت پایه و دیگری حالت بازگشتی است. در حالت پایه، بررسی می کنیم که آیا مقدار MAX کمتر یا مساوی 1 است. اگر درست باشد، همان عدد برگردانده می شود (دو رقم اول فیبوناچی 0 و 1 را تصور کنید). به این ترتیب اعداد پایه محاسبه می شوند. در تماس بازگشتی، دو عدد آخر سری را با کاهش یک و دو از MAX محاسبه می کنیم. روش فیبوناچی به فراخوانی خود ادامه می دهد تا زمانی که به دو رقم آخر (0 و 1) برسد، آنها را اضافه کنید و سپس دو رقم آخر را تا رسیدن به MAX ادامه دهید.

نتیجه

امیدواریم تا کنون دو روش مختلف محاسبه فیبوناچی در جاوا را درک کرده باشید. شما همچنین می توانید از برنامه نویسی پویا برای به چالش کشیدن خود استفاده کنید. مثل همیشه، از شما انتظار داریم که هر روز تمرین کنید و بهتر شوید. به یادگیری ادامه دهید و به رشد خود ادامه دهید!
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION