شبه کد Pseudocode

شبه کد یا Pseudocode چیست؟

شبه کد یا سودوکد (Pseudocode) توصیفی سطح بالا از عملکرد یک برنامه یا الگوریتم رایانه ای می‌باشد. این توصیفات اغلب با هدف خوانده شدن توسط انسان‌ها شکل می‌گیرند و همانطور که از نام آن‌ها برمی‌آید برخلاف کدهای نوشته شده به یک زبان برنامه نویسی لزوما از یک نحوه نگارش کاملا قانونمند پیروی نمی‌کنند.

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

نحوه نگارش شبه کد

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

استاندارد خاصی برای نحوه نوشتن سودوکدها وجود ندارد اما معمولا در آن‌ها از برخی سینتکس های اصلی زبان های برنامه نویسی نظیر حلقه‌ها، دستورات شرطی، نحوه تعریف توابع و … پیروی می‌شود. این بخش ها بنا به سلیقه یا ترجیح متخصص معمولا مبتنی بر زبان‌های برنامه نویسی رایجی نظیر بیسیک، C، پاسکال، C++ و جاوا نوشته می‌شوند.

به عنوان نمونه شبه کد زیر به فرم زبان C++ تابعی را نشان می‌دهد که اعداد 1 تا 100 را مرور کرده و برای اعداد زوج عبارت “Even” و برای اعداد فرد عبارت “Odd” را در خروجی چاپ می‌کند. همان‌طور که مشاهده می‌کنید در این مثال نحوه نگارش توابع، حلقه‌ها و … مشابه با زبان C++ است.

void evenodd()
{
    For (i=1;i<=100;i++)
        if i is divisible by 2
            print "Even";
        else
            print "Odd";
}

به عنوان مثالی دیگر در سودوکد ساده زیر، شیوه بررسی نمره دانشجویان و تعیین وضعیت قبولی یا عدم قبولی آن‌ها نمایش داده شده است.

شبه کد - سودوکد Pseudocode
نمونه ای از یک شبه کد برای تعیین وضعیت نمره دانشجویان

کاربردها و روش های جایگزین

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

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

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

امیرحسین شهسواری

عاشق دنیای رایانه و فناوری به خصوص برنامه نویسی هستم؛ یادگرفتن و البته یاد دادن چیزای جالبی که یاد گرفتم باعث خوشحالیم میشه و از اولویت‌های اصلی زندگیم به حساب میاد. از مدیریت و نوشتن در تک دیک هم واقعا لذت می‌برم :)

2 thoughts on “شبه کد Pseudocode

  • فروردین ۱۲, ۱۴۰۰ در t ۶:۵۷ ب٫ظ
    Permalink

    سلام
    من باید بازی سودوکو رو طراحی کنم. اما هیچ جا الگوریتم یا شبه کد اون رو پیدا نمیکنم. ممکنه راهنماییم کنید؟
    متشکرم.

    پاسخ دادن
    • فروردین ۱۴, ۱۴۰۰ در t ۳:۵۶ ب٫ظ
      Permalink

      سلام.
      معمولا نمیشه انتظار داشت پروژه های کامل و مفصلی مثل بازی سودوکو رو بتونید به شکل الگوریتم یا شبه کد پیدا کنید. شما باید قطعه به قطعه بازی رو با توجه به نحوه عملکردش و همین طور قوانین و … طراحی کنید. البته که احتمالا می تونید نسخه های منبع باز (Open source) و معتبر این بازی رو هم پیدا کنید که برای یادگیری قطعا می تونه مطالعه کدهای حرفه ای اون ها بهتون کمک کنه.

      پاسخ دادن

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

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