سلام دوستام
من میخوام یک عدد رو از کاربر بگیرم و بعد بهش بگم آیا داخل سری فیبوناچی هست یا نه.می خواستم بدونم کسی میدونه باید چیکار کنم؟آیا باید به صورت بازگشتی حل بشه یا نه؟
ممنون
نیازی نیست که بصورت بازگشتی حل بشه، الگوریتم فیبوناچی که مشخصه و نمونه کد اش هم جستجو کنید در
فروم هست. الگوریتم ها طوری هستند که از اولین عدد فیبوناچی تا زمانی که شما بخواهید اعداد این سری
را محاسبه می کنند.
در کد های عادی مشخص می کنند که فلان تعداد عدد این سری اعلام بشه، فرضا n عدد ابتدای
این سری نمایش داده شه. اما شما بجای اینکه یک حلقه بسازید که فلان تعداد عدد از این سری را محاسبه کنه،
یک حلقه do لازم دارید، چون از ابتدا نمی دانید که عدد مورد نظر تان چندمین عدد این سری است. باید آنقدر
عدد از این سری محاسبه کنید تا به محدوده عدد دلخواه تان برسید.
آنقدر اعداد فیبوناچی محاسبه می کنید و در a قرار می دهید تا زمانی که عدد بدست آمده a برابر عدد مورد نظر
شما باشد یا از آن بزرگتر باشد. در اینصورت از حلقه خارج می شوید.
بعد بیرون حلقه بررسی می کنید که این عدد a بزرگتر از عدد مورد نظر شما هست یا خیر، اگر بزرگتر است،
پس آن عدد در بین اعداد فیبوناچی نبوده، و اگر مساوی است، در بین اعداد فیبوناچی قرار دارد.