أخطاء منطقية
على عكس الأخطاء النحوية ، أخطاء منطقية لا تمنع البرنامج النصي من العمل. سيتم تشغيل البرنامج النصي ، لكنه لن ينتج النتيجة المرجوة ، بسبب مشكلة في منطقه. هناك عدد لا يحصى من الأخطاء المنطقية المحتملة ، ولكن فيما يلي بعض الأنواع الأكثر شيوعًا الموجودة في البرامج النصية:
1. تعبيرات شرطية غير صحيحة. من السهل ترميز if / then / else بشكل غير صحيح وتنفيذ المنطق الخاطئ. في بعض الأحيان يتم عكس المنطق ، أو سيكون غير مكتمل.
2. أخطاء "إيقاف واحد". عند حلقات الترميز التي تستخدم عدادات ، من الممكن التغاضي عن أن الحلقة قد تتطلب أن يبدأ العد بصفر ، بدلاً من واحد ، حتى ينتهي العد عند النقطة الصحيحة. ينتج عن هذه الأنواع من الأخطاء إما حلقة "تنطلق من النهاية" عن طريق العد بعيدًا جدًا ، أو فقدان آخر تكرار للحلقة بإنهاء تكرار واحد في وقت قريب جدًا.
3. مواقف غير متوقعة. تنتج معظم الأخطاء المنطقية من برنامج يواجه بيانات أو مواقف لم يتوقعها المبرمج. كما رأينا ، يمكن أن يشمل هذا أيضًا توسعات غير متوقعة ، مثل اسم الملف الذي يحتوي على مسافات ممتلئة تتوسع إلى وسيطات أوامر متعددة بدلاً من اسم ملف واحد.