الگوریتم Algorithm

معنی واژه‌ی الگوریتم Algorithm چیست؟

الگوریتم (Algorithm) به مجموعه‌ای متناهی از اعمال گام به گام اطلاق می‌شود که هدفی معین را دنبال می‌کنند.

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

به طور کلی می‌توان تفاوت یک برنامه (Program) و الگوریتم را در این موضوع دانست که ممکن است یک برنامه هیچ نقطه‌ی پایانی نداشته باشد.

لازم به ذکر است این واژه از نام الخوارزمی ریاضیدان، منجم و جغرافیدان ایرانی گرفته شده است. برای بیان یک الگوریتم، روش‌های مختلفی وجود دارد که از مهم‌ترین آن‌ها می‌توان به زبان طبیعی، شبه کد و فلوچارت اشاره نمود. در زبان‌های برنامه نویسی نیز الگوریتم‌ها به شکلی بیان می‌شوند که توسط یک رایانه قابل اجرا باشد.

به عنوان مثال، الگوریتمی را در نظر بگیرید که اعداد زوج و فرد موجود در بازه‌ی بسته 1 تا 100 را تشخیص می‌دهد. اگر به زبان طبیعی این الگوریتم را بیان کنیم می‌توانیم گام‌های زیر را برای آن در نظر بگیریم:

گام اول: اولین عدد (1) را انتخاب کن.

گام دوم: عدد انتخاب شده را بر 2 تقسیم کن.

گام سوم: اگر باقی‌مانده تقسیم برابر با صفر باشد عدد انتخاب شده زوج است در غیراینصورت عدد انتخابی فرد است.

گام چهارم: اگر عدد کنونی کمتر از 100 بود عدد بعدی را انتخاب کن و به گام دوم برو.

واژه‌های مرتبط

فلوچارت Flowchart فلوچارت یا Flowchart چیست؟ فلوچارت (Flowchart) یا روندنما نوعی دیاگرام است که برای نمایش ترتیب و نحوه‌ی عملکرد گام‌های مختلف یک الگوریتم یا فرایند به...
ASP.NET ASP.NET چیست؟ ASP.NET یک فریم‌ورک کاربردی وب است که برای توسعه‌ی صفحات پویای وب، وب اپلیکیشن‌ها و سرویس‌های وب به کار می‌رود. این محصول که ساخت شرکت ...
ایجکس Ajax ایجکس یا Ajax چیست؟ ایجکس (Ajax) مخفف عبارت Asynchronous JavaScript And XML (به معنای جاوا اسکریپت و XML ناهمگام) می‌باشد و شامل مجموعه‌ای از فناوری‌...
واحد محاسبه و منطق Arithmetic Logic Unit – A... واحد محاسبه و منطق یا Arithmetic Logic Unit چیست؟ واحد محاسبه و منطق (Arithmetic Logic Unit به اختصار ALU) یک مدار الکترونیک دیجیتال ترکیبی است که قا...
واسط برنامه نویسی کاربردی Application Programming ... واسط برنامه نویسی کاربردی یا Application Programming Interface - API چیست؟ واسط برنامه نویسی کاربردی (Application Programming Interface به اختصار API...
انتساب افزوده Augmented Assignment انتساب افزوده یا Augmented Assignment چیست؟ انتساب افزوده (Augmented Assignment) نوعی عملگر انتساب است که در برخی از زبان‌های برنامه‌نویسی برای ساده‌...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *