کلیات الگوریتم
الگوریتم (Algorithm)الگوریتم چیست به زبان ساده و با مثال های فراواندر این مقاله به زبان بسیار ساده و با مثال های متعدد توضیح داده شده که الگوریتم چیست و چه کاربردهایی دارد در همه مسائل روزمره ما نقش دارد. الگوریتم را میتوان طرح برنامهای تعریف نمود که صفر تا صد کاری را طبق آن انجام میدهیم. مکمن است الگوریتم n ورودی داشته باشد، اما 1 خروجی دارد و شرط برقراریاش، زمان اجرای محدود آن است. الگوریتم را در علوم کامپیوترعلوم کامپیوتر یا کامپیوتر ساینس چیستدر این صفحه به بررسی و موشکافی رشته علوم کامپیوتر اعم از بررسی بازار کار، گرایشها، دروس و چارت درسی این رشته، میزان درآمد و حقوق فارغ التحصیلان این رشته و ادامه تحصیل در این رشته پرداخته شده است. به صورت مجموعهای از گامها و فرآیندهای پیدرپی برای حل مساله یا انجام محاسبات تعریف میکنند که در برنامه نویسیبرنامه نویسی کامپیوتر چیست و چطور می توانید یک برنامه نویس موفق شوید؟در عصر فعلی برنامهنویسی یکی از پرطرفدارترین شغلهای دنیاست، دغدغهای افرادی که میخواهند در مسیر برنامهنویس شدن قدم بردارند این است که نمیدانند از کجا باید شروع کنند، در این صفحه هر آن چه برای تبدیل شدن به یک برنامه نویس حرفه ای نیاز دارید در اختیارتان قرار گرفته است هم نقش بسیار پررنگی دارد. در این مطلب قصد داریم الگوریتم را به زبان ساده بررسی و برخی از الگوریتمهای ساده را تشریح کنیم.
الگوریتم و فلوچارت به زبان ساده
الگوریتم به زبان ساده
بیشک روزانه فعالیتهای گوناگونی انجام میدهید یا حتی فعالیتهایی انجام میدهید که خودتان هم خبر ندارید! یکی از سادهترینها مثل مسواک زدن را در نظر بگیرید یا فعالیتهای پیچیده سیستم نورونی مغزتان یا حتی لایههای آگاهیتان، فرقی نمیکند. همه اینها فرآیندی برای صورتپذیرفتن و تبدیلشدن به واقعیت دارند. از فعالیت تصمیمگیری برای مسواک زدن تا مالیدن خمیردندان روی آن و... تا انتهای داستان که مسواک را به حالت پیش از مسواک زدن در میآورید، گامهای این فرآیند هستند. الگوریتم (Algorithm) در نگاه کلی به هر «مسئله»ای، مجموعهای از همین گامهاست و نقطه پایان هم جایی است که مسئله حل شود. در فضای علوم کامپیوتر و برنامه نویسی هم تعریف کلی همین است: الگوریتم فرآیند حل مسئله است و از یکسری گام پیاپی تشکیل شده است.
ویژگیهای الگوریتم به زبان ساده
مسلما حل مسائل مختلف، شیوهها (الگوریتم ها)ی متفاوتی هم میطلبد و راه حل همه مسائل یکسان نیست. البته وقتی در مورد مسألهای خاص صحبت میکنیم (که آن هم ممکن است راه حلهای مختلفی داشته باشد)، احتمال دارد بتوان راه حلی پیدا کرد که از دیگر راه حلها بهتر باشد؛ یعنی راهی پیدا کنیم که در زمان کمتری ما را به حل مسأله برساند یا انرژی کمتری برای نیل به این نقطه نیاز داشته باشد. چون فضای اینجا بیشتر به علوم کامپیوتر اختصاص دارد و بیشک شما هم به دنبال مفهوم الگوریتم در چنین فضایی هستید، اجازه دهید بحث را بیشتر به علوم کامپیوتر و البته برنامه نویسی اختصاص دهیم، اما در نظر داشته باشید که میتوان این موارد را تعمیم داد. میدانید که کامپیوترکامپیوتر چیست؟ ⚡️ کامپیوتر چیست به زبان سادهاین مقاله عالی توضیح داده که کامپیوتر چیست و چه کاربردی دارد و همه چیز درباره کامپیوتر از جمله فواید کامپیوتر و تعریف کامپیوتر و اجزای آن را بیان کرده است ها چندان هم هوشمند نیستند و با فرمانهایی عمل میکنند که انسانها به آنها میدهند، یعنی انسانها را برایشان انجام میدهند.
الگوریتمهای برنامه نویسی میتوانند تعدادی ورودی داشته باشند و یک خروجی دارند یعنی برای حل مسئله، انواع مختلفی از دادهها (ورودی) را به کامپیوتر میدهیم، سپس قدمهای الگوریتم را یکبهیک پشت سر میگذاریم (و اگر الگوریتم مناسبی برای حل مسأله انتخاب کرده باشیم که گامهایش نیز عاری از ابهام هستند) در نهایت به داده مطلوب (خروجی) میرسیم؛ همچنین مهم است الگوریتمی که انتخاب میکنیم، تا ابد ما را منتظر جواب نگذارد و در زمانی محدود مسئله را حل کند.
در عبارتهای فوق الگوریتم را به زبان ساده تشریح کردیم و ویژگیهای الگوریتم را نیز به زبان ساده گفتیم که عبارتند از:
- قطعیت
- امکانپذیری
- ورودی مناسب
- خروجی مناسب
- متناهی بودن
فلوچارت به زبان ساده
توضیح فلوچارتفلوچارت چیست؟ | آموزش الگوریتم فلوچارت | رسم فلوچارتاین مقاله عالی به آموزش رسم فلوچارت برای الگوریتم ها پرداخته و مواردی چون رسم فلوچارت، معرفی برنامه فلوچارت، نمونه سوالات الگوریتم و فلوچارت را بررسی کرده یا روندنما به زبان ساده نوعی حشو است! چون مفهوم فلوچارت اصلا پیچیده نیست. فلوچارت (Flowchart) ابزاری است که در کنار الگوریتم، ما را در حل مسائل یاری میکند و البته در برنامه نویسی هم کاربرد دارد. فلوچارت یا روندنما مراحل انجام کار را بهصورت گرافیکی و تصویری نمایش میدهد. البته الگوریتم را میتوان بهصورت شفاهی و با استفاده از زبان انسانی و به کمک شبه کد یا شبه دستور (Pseudocode) نیز نشان داد.
برخی از الگوریتمهای ساده برنامه نویسی با جواب
در ادامه قصد داریم برخی از الگوریتمهای ساده برنامه نویسی را با جواب بهعنوان نمونه بیاوریم تا مفاهیم فوق بهتر برایتان جا بیفتد. توجه کنید که بستر منطق مراحل این الگوریتمهای ساده بر دنیای کامپیوتر مبتنی است (و ممکن است با راه حلی که به ذهن خودتان میرسد، کمی تفاوت داشته باشد).
الگوریتم محاسبه جمع دو عدد
جمع دو عدد مسئله پیچیدهای نیست و قاعدتا میتوان آن را با الگوریتم ساده حل کرد. مثلا الگوریتم زیر را در نظر بگیرید:
- شروع
- اعداد A و B را بخوان
- Sum = A + B
- Sum را چاپ کن
- پایان
الگوریتم ساخت مثلث
برای اینکه بدانیم سه عدد میتوانند طول اضلاع یک مثلث باشند یا نه، میتوان از الگوریتم ساده ساخت مثلث به شکل زیر استفاده کرد:
- شروع
- A، B و C را بخوان
- اگر (A + B > C و B + C > A و A + C > B) باشد:
- چاپ کن «بله»
- در غیر این صورت:
- چاپ کن «خیر»
- پایان
الگوریتم محاسبه میانگین معدل افراد
مثال بعد جزو الگوریتمهای ساده کار و فناوری نهم است که معدل افراد را محاسبه میکند. این الگوریتم ساده را با جواب آن را در ادامه آوردهایم:
- شروع
- نمرههای فرد مورد نظر را بخوان
- Sum را برابر با جمع نمرههای فرد مورد نظر قرار بده
- Sum را بر تعداد دروس فرد تقسیم کن
- نتیجه را در Avg بریز
- Avg را چاپ کن
- پایان
جمعبندی
شناخت دقیق مفهوم الگوریتم بر ابعاد مختلف زندگی ما تأثیر زیادی دارد، چراکه فکرمان را منظم و روش حل مسألهمان را دستخوش تغییر میکند؛ همچنین اگر به دنیای کامپیوتر و برنامه نویسی علاقهمند باشید، واجب است درک صحیحی از مفهوم الگوریتم داشته باشید. در این مطلب کوشیدیم الگوریتم را به زبان ساده تشریح کنیم و برخی از الگوریتمهای ساده برنامهنویسی با جواب را در اختیارتان بگذاریم.
الگوریتم به زبان ساده چیست؟
بیشک روزانه مشغول فعالیتهای گوناگونی هستید. از سادهترین تا پیچیدهترین فعالیتها فرآیندی را طی میکنند تا به واقعیت تبدیل شوند، فرآیندی که از چندین گام پیاپی تشکیل شده است. الگوریتم (Algorithm) به زبان ساده، مجموعه همین گامهاست که ما را تا زمان حل مسأله همراهی میکند.
فلوچارت یا روندنما به زبان ساده چیست؟
الگوریتمها را میتوان به شکلهای مختلفی، از توضیح شفاهی گرفته تا شبهکد یا شبهدستور در برنامه نویسی، بیان کرد و به نمایش گذاشت. فلوچارت شیوهای تصویری برای نمایش الگوریتم است که به ما کمک میکند روند الگوریتم را خیلی سادهتر درک و دنبال کنیم.