الگوریتم چیست؟


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

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

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

برای روشن شدن این مسأله مثالی می زنیم. یک الگوریتم ساخت نرم‌افزار خیلی شبیه به دستور پخت غذا است. برای ساخت ماکارونی، ما خیلی دشواری نخواهیم داشت. ابتدا آب را جوش می آوریم، سپس بسته ی ماکارونی را داخل آن می‌ریزیم و پس از چند دقیقه مایع ماکارونی را روی آن ریخته و غذا را سرو می‌کنیم اما در عین حال، برای ساخت خورشت قیمه ما کارهای به مراتب بیشتری باید انجام دهیم!

لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
fighter
fighter
۱۳۹۶/۰۴/۰۶
ok
Computer
Computer
۱۳۹۵/۰۹/۰۲
درود بر شما :)
h.ghasemi
h.ghasemi
۱۳۹۵/۰۷/۱۵
آقا من مفهوم فلوچارت رو کامل درک نکردم. میشه لطف کنید یه بار دیگه توضیحش بدید به زبان ساده تر. ممنون
مهدی درویشی
مهدی درویشی
۱۳۹۵/۱۱/۲۳
سلام
فلوچارت یا روندنما نموداری است برای نمایش داده و روند یک الگوریتم رو بصورت نماد ها و شکل ها بهم وسط میکند. (در واقع همان الگوریتم است که توسط شکل نمایش داده میشود)

در پاسخ به

soldier
soldier
۱۳۹۶/۰۳/۰۵
بسیار خوب

در پاسخ به

FarshidEL
FarshidEL
۱۳۹۵/۰۷/۱۰
با سلام خدمت تمامی عزیزانی که برای این مجموعه با ارزش تلاش کردن و واقعا خدا قوت به تک تک شما . من به تازگی با وب سایت شما که انصافا میشه گفت یک وب سایت آموزشی با بیان بسیار شیوا و ساده که حس هر فرد آماتوری رو بر می انگیزه تا به جمع شما بزرگان این حرفه بپیونده . ممنونم از تمامی شما به خاطر همه زحماتتون . براتون آرزوی موفقیت و کامیابی رو دارم
کاربر میهمان
کاربر میهمان
۱۳۹۵/۰۴/۲۶
عالی بود اما ایکاش برای دو مبحث یک مثال کوتاه میزدید برای دوستانی که هیچ سر رشته ای از الگوریتم ندارند.
javad
javad
۱۳۹۵/۰۱/۲۱
درود بر شما بزرگواران
vahid
vahid
۱۳۹۴/۱۱/۲۵
دوستان ، برای یادگیری الگوریتم می تونن به وبسایت آموزشی گروه هیلتن مراجعه کنند!
www.heilton.com
fighter
fighter
۱۳۹۶/۰۴/۰۶
دستت درد نکنه

در پاسخ به

soldier
soldier
۱۳۹۶/۰۳/۰۵
ممنون

در پاسخ به

رضا بختیاری
رضا بختیاری
۱۳۹۴/۱۱/۲۳
اين بخش هم عالي بود مرسي
محمد رستمی
محمد رستمی
۱۳۹۴/۰۸/۲۶
سپاسگزارم
حسن مقدم
حسن مقدم
۱۳۹۴/۰۸/۰۷
سلام ممنون از آموزش های خوبتون
من الگوریتم برنامه های کوچک رو دیدم ولی دوست دارم بدونم یه برنامه حجیم الگوریتم اون به چه شکلیه چون واقعا به نظرتون برای یه برنامه حجیم داشتن الگوریتم ضروریه؟ میشه یه نمونه از این الگوریتم های حجیم رو برام ایمیل کنید؟ ممنون
ادمین سایت
ادمین سایت
۱۳۹۴/۰۸/۰۷
سلام
ممنون از اظهار لطف شما
یک برنامه ی حجیم به طور حتما از صدها و شاید هزار ها الگوریتم تشکیل شده است. در یک کلام، بدون استفاده از الگوریتم ها توسعه ی نرم افزار امکان پذیر نیست. چنین چیزی در دسترس ما نیست که برای شما ارسال کنیم

در پاسخ به

علی  میری
علی میری
۱۳۹۴/۰۸/۰۱
با تشکر بسیار عالی
ادمین سایت
ادمین سایت
۱۳۹۴/۰۸/۰۱
نظر لطف شماست

در پاسخ به

Saeed
Saeed
۱۳۹۴/۰۷/۱۹
سلام...
دوره آموزش الگوریتم نویسی ندارین؟
ادمین سایت
ادمین سایت
۱۳۹۴/۰۷/۱۹
سلام، خیر

در پاسخ به

Sina Deuxshiri
Sina Deuxshiri
۱۳۹۴/۰۷/۰۳
سلام
بد نیست بدونید که نام الگوریتم از دانشمند بزرگ ایرانی یعنی خوازمی گرفته شده.