قبل از بررسی برنامه سری فیبوناچی در جاوا، بیایید بررسی کنیم که روش ریاضی محاسبه اعداد فیبوناچی چیست.
سری فیبوناچی زمانی تشکیل می شود که دو عدد متوالی آخر دنباله ای را که با 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
GO TO FULL VERSION