توالی فیبوناچی - در پایتون ، جاوا اسکریپت ، C ++ ، جاوا و سوئیفت توضیح داده شده است

ساخت وبلاگ

The Fibonacci Sequence – Explained in Python, JavaScript, C++, Java, and Swift

توالی فیبوناچی ، به طور تعریف ، توالی عدد صحیح است که در آن هر عدد بعد از دو نفر اول مجموع دو عدد قبلی است. برای ساده کردن:

0 ، 1 ، 1 ، 2 ، 3 ، 5 ، 8 ، 13 ، 21 ، 34 ، 55 ، 89 ، 144 ،…

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

توابع بازگشتی آن کارکردهایی هستند که اساساً خودشان را صدا می کنند.

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

همه ، برای اهداف این آموزش ، شروع می کنیم.

اول از همه ، بیایید در مورد اینکه کد چگونه به نظر می رسد فکر کنیم. شامل:

· یک تابع بازگشتی F (F برای فیبوناچی): برای محاسبه مقدار اصطلاح بعدی.

هیچ چیز دیگری: من به شما هشدار دادم که کاملاً اساسی بود.

عملکرد ما N را به عنوان یک ورودی می برد ، که به اصطلاح N از دنباله ای که می خواهیم محاسبه کنیم اشاره خواهد کرد. بنابراین ، F (4) باید دوره چهارم دنباله را برگرداند.

بیایید آن را برنامه ریزی کنیمکد باید بدون در نظر گرفتن زبان ، چیزی شبیه به این باشد:

توجه: اصطلاح 0 دنباله 0 در نظر گرفته می شود ، بنابراین دوره اول 1 خواهد بود. دوم ، 1 ؛سوم ، 2 ؛و غیرهشما آن را دریافت می کنید

بیایید یک لحظه عملکرد را تجزیه و تحلیل کنیم. اگر به عنوان ورودی 0 شود ، 0. اگر 1 شود ، باز می گردد ، 1. اگر 2 شود ... خوب ، در این حالت در بیانیه دیگری قرار می گیرد ، که دوباره این عملکرد را برای اصطلاحات 2-1 (() فراخوانی می کند ((1) و 2-2 (0). این 1 و 0 باز می گردد و دو نتیجه اضافه می شود ، و باز می گردد.

اکنون می بینید که چرا عملکردهای بازگشتی در بعضی موارد مشکل دارند. تصور کنید که شما صدمین دوره دنباله را می خواستید. این عملکرد خود را برای 99 و 98 می خواند ، که خودشان دوباره این عملکرد را برای اصطلاحات 98 و 97 و 97 و 96 و 96 می نامند ... و غیره. واقعاً کند خواهد بود

اما خبر خوب این است که در واقع کار می کند!

بنابراین بیایید با زبانهای مختلف شروع کنیم. من جزئیات زیادی را ارائه نمی دهم (در واقع ، به هیچ وجه جزئیات) برای بهتر شدن تجربه خواندن شما. به هر حال چیزهای زیادی برای جزئیات وجود ندارد.

بیایید به آن پرش کنیم:

پیتون

سریع

اسکریپت

جاوا

C++

و این استمن این زبانها را فقط بر اساس محبوبیت انتخاب کردم - یا حداقل به این دلیل که این 5 رایج ترین مواردی هستند که من از آنها استفاده می کنم به ترتیب خاصی. به نظر من می توان آنها را با دشواری نحو طبقه بندی کرد ، از پایتون (ساده ترین) تا C ++ (سخت ترین). اما این به نظر شخصی و تجربه شما با هر زبان بستگی دارد.

امیدوارم این مقاله را دوست داشته باشید و اگر سؤال/توصیه دارید یا فقط می خواهید سلام کنید ، در زیر نظر دهید!

تبلیغ تبلیغ تبلیغ

اگر این مقاله مفید بود ، آن را صدای جیر جیر کنید.

یاد بگیرید که به صورت رایگان کد کنید. برنامه درسی منبع باز FreecodeCamp به بیش از 40،000 نفر کمک کرده است تا به عنوان توسعه دهنده شغل خود را بدست آورند. شروع کردن

تبلیغ

FreecodeCamp یک سازمان خیریه از معاف از مالیات 501 (ج) (3) پشتیبانی از مالیات است (شماره شناسایی مالیات فدرال ایالات متحده: 82-0779546)

مأموریت ما: برای کمک به مردم برای یادگیری کد به صورت رایگان. ما این کار را با ایجاد هزاران فیلم ، مقاله و درس برنامه نویسی تعاملی انجام می دهیم - همه آزادانه در دسترس عموم هستند. ما همچنین هزاران گروه مطالعه FreecodeCamp در سراسر جهان داریم.

کمکهای مالی به FreecodeCamp به سمت ابتکارات آموزش و پرورش ما می رود و به پرداخت سرورها ، خدمات و کارمندان کمک می کند.

آموزش تحلیل گری...
ما را در سایت آموزش تحلیل گری دنبال می کنید

برچسب : نویسنده : ملیکا زارعی بازدید : 33 تاريخ : سه شنبه 3 مرداد 1402 ساعت: 21:28