دستورالعمل حل مسئله که چهار شرط زیر را داشته باشد:
1- شروع و پایان آن مشخص باشد: کامپیوترها هوش ندارند. اگر به یک ربات بگین برو نون بگیر، تا قیامت میره نون میگیره. باید بگین وقتی یکی خریدی، متوقف شو.
2- ترتیب اجرای مراحل مشخص باشد: تا وقتی که توی تلفن کارتی، کارت رو نگذاشته باشین، نمیتونین شمارهگیری کنین.
3- به زبان دقیق و بدون ابهام بیان شود: از یه دستور نشه دو برداشت مختلف داشته باشیم. معمولاً از زبان ریاضی و نمادهای خاص الگوریتم و فلوچارت برای الگوریتمها استفاده میشه.
4- تمام شرایط حل مسئله را در بر بگیرد: هیچ فرضی درمورد دانش اجراکنندهی الگوریتم نباید قائل بشین. اگه قراره برنامهی شما روی ماشینی اجرا بشه که شک دارین فرمول توان رو میدونه یا نه، باید خودتون فرمول محاسبهی توان رو هم در الگوریتم قرار بدین.