یک خطای منطقی (یا خطای منطقی) یک اشتباه در کد منبع (Source Code) برنامه است که منجر به رفتار نادرست یا غیرمنتظره می شود. این یک نوع خطای زمان اجرا (Runtime Error) است که ممکن است به سادگی خروجی (Output) اشتباه را ایجاد کند یا ممکن است باعث از کار افتادن برنامه در حین اجرا شود.
انواع مختلف اشتباهات برنامه نویسی می توانند باعث شوند. خطاهای منطقی به عنوان مثال، اختصاص یک مقدار به متغیر اشتباه ممکن است باعث ایجاد یک سری خطاهای غیرمنتظره برنامه شود. ضرب دو عدد به جای جمع کردن آنها با هم ممکن است نتایج ناخواسته ای ایجاد کند. حتی اشتباهات تایپی کوچکی که خطاهای نحو (Syntax) ایجاد نمی کنند ممکن است باعث خطاهای منطقی شوند. در مثال کد پیش پردازشگر فرامتن (PHP) زیر، عبارت if ممکن است باعث خطای منطقی از علامت مساوی منفرد شود (=) باید دو علامت مساوی باشد (==).
نادرست است: اگر ($i=1) { ... }
درست: if ($i==1) { ... }
در PHP، "==" به معنای "برابر است" است، در حالی که "=" به معنای "شدن" است. بنابراین، عبارت نادرست if همیشه TRUE را برمی گرداند، زیرا با اختصاص 1 به متغیر $i مقدار TRUE برمی گردد. در کد صحیح، عبارت if فقط در صورتی TRUE را برمیگرداند که $i برابر با 1 باشد. با این حال، از آنجایی که نحو کد نادرست قابل قبول است، خطای نحوی ایجاد نخواهد کرد. و کد با موفقیت کامپایل می شود. خطای منطقی ممکن است فقط در طول زمان اجرا (Runtime) مشاهده شود. از آنجایی که خطاهای منطقی اغلب در کد منبع پنهان هستند، یافتن آنها معمولا سخت تر و اشکال زدایی (Debug) از اشتباه نوشتاری (Syntax Error) است.
تعریف خطای منطقی (Logic Error) در این صفحه یک تعریف پایه نگاشته شده توسط تک بورد است. اگر مایل به ارجاع به این صفحه یا استناد به این تعریف هستید، با شرط درج لینک به این صفحه می توانید از این محتوا استفاده کنید.
هدف تک بورد توضیح اصطلاحات کامپیوتری به روشی است که به راحتی قابل درک باشد. ما برای سادگی و دقت با هر تعریفی که منتشر می کنیم تلاش می کنیم. اگر بازخوردی درباره تعریف خطای منطقی (Logic Error) دارید یا میخواهید یک اصطلاح فنی جدید پیشنهاد کنید، لطفاً با ما تماس بگیرید.
آیا می خواهید اصطلاحات فنی بیشتری یاد بگیرید؟ در خبرنامه روزانه یا هفتگی مشترک شوید و شرایط و آزمون های ویژه را در ایمیل خود تحویل بگیرید.