Кіріспе

Компьютерлік бағдарламалауда, күзетші мән (сонымен қатар, флаг мәні, тоқтату мәні, бұрыс мән, сигнал мәні немесе жалған деректер деп аталады) – алгоритмнің ішіндегі арнайы мән, оның болуы аяқталу шарты ретінде қолданылады, әдетте цикл немесе рекурсивті алгоритмде. Күзетші мән – бұл деректердің ішінде берілген мән, ол деректердің сыртындағы мәліметтер берілмеген кезде (мысалы, нақты өлшем көрсетілмегенде) деректердің соңына жеткенін анықтауға мүмкіндік береді. Мәннің барлық қолданылатын деректерден ерекшеленетініне кепілдік беру керек, әйтпесе мұндай мәндердің болуы деректердің соңына ертерек жеткенін көрсетеді (жартылай болжамдау мәселесі). Күзетші мән кейде "Каирдегі піл" деп аталады, себебі бұл физикалық күзетші ретінде қолданылатын әзілге байланысты. Қауіпсіз тілдерде, көптеген күзетші мәндерді ерекше жағдайды нақты өңдеуді талап ететін опция түрлерімен алмастыруға болады.

Нұсқалар

Сәл өзге жағдайларда қолданылатын ұқсас тәжірибе – кейбір өңдеу циклында аяқталуға қатысты нақты тесттің қажеттілігін жою үшін деректердің соңына белгілі бір мәнді қою, себебі бұл мән басқа себептерге байланысты жасалған тесттер арқылы аяқталуға себеп болады. Жоғарыда айтылған қолданылудан ерекшелігі, бұл деректердің табиғи түрде сақталуы немесе өңделуі емес, аяқталуын тексеруге арналған қарапайым алгоритммен салыстырғанда оптимизация болып табылады. Бұл көбінесе іздеу кезінде қолданылады. Мысалы, реттелмеген тізімде белгілі бір мәнді іздегенде, әрбір элемент осы мәнмен салыстырылады және теңдік табылғанда цикл аяқталады. Алайда, ізделінетін мән тізімде болмаған жағдайда, әр қадамнан кейін іздеу сәтсіз аяқталды ма, жоқ па, соны тексеру қажет. Ізделінетін мәнді тізімнің соңына қосу арқылы сәтсіз іздеу мүмкін болмайды және ішкі циклде нақты аяқтау тесттерін жүргізудің қажеті болмайды. Іздеуден кейін нақты сәйкестік табылды ма, жоқ па, соны анықтау керек, бірақ бұл тестті әрбір итерацияда емес, бір рет ғана орындау жеткілікті. Кнут мұндай деректердің соңына қосылған мәнді күзетші емес, фиктивті мән деп атайды.