continue, break операторлары жайында

Бағдарламалау
Циклдер тақырыбын түсіндіріп жатқанда, continue операторын да айтып кеткен орынды.
continue — өзі тиесілі циклдың(while,do-while,for,foreach) орындалып жатқан айналымын үзіп, келесі айналымына өткізіп жібереді, циклдан тұтастай шығарып тастай алмайды,
керісінше, бұл оператордың қажеттілігі циклдың өзінен тұтас шығып кетпей, бір айналымын ғана өткізіп жіберу керек болған тұстарда туындайды.
Мысалға көшелік…
— 5-тен + 5-ке дейінгі сандарды тізіп шығайық. Енді 10 санын сол сандарға бөліп және консолға жазып шығуымыз керек делік. Оған жетудің бір мысалы төмендегідей:

         double x = -6;
         double y;
            while (x < 6)
            {
                x++;
                y =  10/x;
                Console.WriteLine("10/"+x +" = " + y);
            }
            Console.ReadKey();


Нәтижесінде мынадай жауап шығуы тиіс:
continue
«10/0=бесконечность» деген тұсы математикалық сауаттылық тарапынан қате болып табылады. Сандарды 0-ге болуге болмайды. Демек, ол қатардан арылуымыз қажет.
Егер де break; операторын қолдансақ:

        double x = -6;
        double y;
            while (x < 6)
            {
                x++;
                if (x == 0)
                    break;
                y =  10/x;
                Console.WriteLine("10/"+x +" = " + y);
            }
     
            Console.ReadKey();

«10/1»,«10/2», «10/3»… деген тұстарымен де бірге қош айтысамыз, себебі, break орындалғанда циклден тұтастай шығып кетеді.continue
Бір ғана айналымды өткізіп жіберу үшін көмекке continue келеді:

        double x = -6;
        double y;
            while (x < 6)
            {
                x++;
                if (x == 0)
                    continue;
                y =  10/x;
                Console.WriteLine("10/"+x +" = " + y);
            }
     
            Console.ReadKey();

continue
Нәтижесінде тек қана 0-ді ғана өткізіп жіберіп әрі қарай өз жұмысымызды жалғастыра береміз.

Айта кетерлік жай: continue қай айналымда орындалса сол айналымды тұтастай ескерусіз қалдырады деп ұғып қалмаңыздар! continue қай тұста орындалса, сол тұстан бастап циклдың соңына дейінгі кодтардың ескерусіз қалуын қамтамасыз етеді:
циклдың continue іске асқан айналымы:
{

осы жерде орындалған операциялар сақталады.

continue;

бұл жердегі кодтар орындалмайды
}
Мысалға оралайық:
continue

8 пікір

avatar
Қателеспесем, бұларды switch casе конструкциясында да қолдануға болады. Және return дегені де бар.
avatar
Қайда қолдануға болады деген емес, қалай және не үшін қолдануға болады деген сұраққа жауап ретінде жазған едім.
Төбеде бір мысалы ғана екені рас ) Жалпы осы оператордың қызметін түсіндіре алсам болды деп шештім.
Ал, return болса continue-ні айырбастай алмайды, себебі ол да циклден толықтай шығарып жібереді(әлде, қателесіп тұрмын ба?)
avatar
ия, return break-ке ұқсас, циклдан шығарып жібереді. Көбіне функцияларда қолданылады.
avatar
Негізінде, мен жазбаны тек «continue» тақырыбымен ұсынған едім. Админдердің шешімімен, ішінде break-тың да қызметі де суреттелгесін, «continue,break операторлары жайлы» деп өзгертіліп кетіпті(ол үшін тек қана раҚмет), «бір оқпен екі қоян»:) ).
Тақырыптың ауысқанынан хабарсыз кезімде сіздің «return-ды да қолдануға болады» деген пікіріңізді оқып, continue-ge аналог ретінде ұсынып отыр деп ұғып қалдым. Әйтпесе, сіздікі де дұрыс!

Қазір, сіздің ойыңызды толықтап жіберейін тағы бір қысқаша жазбамен ;)
avatar
return совсем баска нарсе гой, ол циклден гана емес, тугел методтан шыгып кетеди.
avatar
ия. Оны да циклда колдануға болады ғой.
avatar
ия, егер циклден кейин ешкандай (код) операция болмаса.
avatar
Дұрыс айтасыз, Даулет) Сол туралы жазып жатырмын, сәл күтіңіз.
Тек қана тіркелген және авторизациядан өткен қолданушылар пікір қалдыра алады.