الگوریتم
الگوریتم یا خوارزمی مجموعهای متناهی از دستورالعمل ها است، که به ترتیب خاصی اجرا می شوند و مسئلهای را حل می کنند. به عبارت دیگر، روشی گام به گام برای حل مسئله است. شیوه محاسبه معدل در مدرسه، یکی از نمونه های آن است.
تمام آن ها باید شرایط و معیارهای زیر را دارا باشند:
ورودی:
باید هیچ یا چندین پارامتر را به عنوان ورودی بپذیرد؛
خروجی:
بایستی حداقل یک کمیت به عنوان خروجی (نتیجه عملیات) تولید کند؛
قطعیت:
دستورهای الگوریتم باید با زبانی دقیق، و بیابهام بیان شوند. هر دستورالعمل نیز باید انجامپذیر باشد. دستورهایی نظیر «مقدار ۶ یا ۷ را به x اضافه کنید» یا «حاصل تقسیم پنج بر صفر را محاسبه کنید» مجاز نیستند؛ چرا که در مورد مثال اول، معلوم نیست که بالاخره چه عددی باید انتخاب شود، و در خصوص مثال دوم هم تقسیم بر صفر در ریاضیات تعریف نشدهاست.
محدودیت:
الگوریتم باید دارای شروع و پایان مشخصی باشد، به نحوی که اگر دستورهای آن را دنبال کنیم، برای تمامی حالات، الگوریتم پس از طی مراحل، خاتمه یابد. به علاوه، زمان لازم برای خاتمه الگوریتم هم باید به گونهای معقول و کوتاه باشد.