3.4 KiB
3.4 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
587d7b86367417b2b2512b3d | Prevent Infinite Loops with a Valid Terminal Condition | 1 | منع حلقات لا نهائية مع شرط محطة صالح |
Description
while
حلقة داخل loopy()
. لا ندعو هذه الوظيفة! function loopy () {إنها وظيفة المبرمج لضمان أن يتم الوصول في نهاية المطاف إلى حالة المحطة الطرفية ، التي تخبر البرنامج عند الخروج من شفرة التكرار. خطأ واحد هو زيادة أو إنقاص متغير عداد في الاتجاه الخاطئ من حالة المحطة الطرفية. واحد آخر هو بطريق الخطأ إعادة تعيين عداد أو فهرس متغير داخل رمز التكرار ، بدلاً من زيادة أو إنقاصه.
احيانا صحيح) {
console.log ("Hello، world!")؛
}
}
Instructions
myFunc()
على حلقة لانهائية نظرًا لأن حالة المحطة الطرفية i != 4
لن يتم تقييمها أبداً إلى false
(وكسر الحلقات) - سوف i
بزيادة 2 لكل مسار ، والقفز مباشرة فوق 4 لأن i
هو أمر غريب للبدء. إصلاح عامل مقارنة في حالة محطة حتى الحلقة يعمل فقط ل i
أقل من أو يساوي 4. Tests
tests:
- text: التعليمات البرمجية يجب أن تتغير عامل مقارنة في حالة الطرفية (الجزء الأوسط) من <code>for</code> حلقة.
testString: 'assert(code.match(/i\s*?<=\s*?4;/g).length == 1, "Your code should change the comparison operator in the terminal condition (the middle part) of the <code>for</code> loop.");'
- text: يجب أن تقوم التعليمات البرمجية الخاصة بك بإصلاح عامل المقارنة في حالة طرفية الحلقة.
testString: 'assert(!code.match(/i\s*?!=\s*?4;/g), "Your code should fix the comparison operator in the terminal condition of the loop.");'
Challenge Seed
function myFunc() {
for (let i = 1; i != 4; i += 2) {
console.log("Still going!");
}
}
Solution
// solution required