PHP da break operatori
Faraz qilaylik, bizda massiv elementlarini ekranga chiqaruvchi quyidagi tsikl bor:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
echo $elem;
}
?>
Faraz qilaylik, bizning vazifamiz massivda 3 soni bor-yo‘qligini aniqlash. Agar bo‘lsa, ekranga +++ chiqaramiz (agar bo‘lmasa, hech narsa qilmaymiz).
Bu muammoni hal qilamiz:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
}
}
?>
Vazifa hal qilindi, biroq muammo bor: 3 soni topilgandan keyin ham massiv befoda aylanib chiqiladi, bu esa protsessor resurslarini behuda sarflashga va skriptning ishlashini sekinlashtirishga olib keladi.
Optimal yechim – son 3 topilgan zahoti tsiklni to‘xtatish. Buni siklni muddatidan oldin tugatishga imkon beruvchi break operatori yordamida amalga oshirish mumkin.
Xo‘sh, keling, 3 soni uchragan zahoti tsiklni to‘xtatamiz:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
break; // tsikldan chiqamiz
}
}
?>
break operatori har qanday tsiklni tugatishi mumkin: foreach, for, while.
№1
Raqamlar massivi berilgan. Ushbu massivning elementlarini konsolga birma-bir bosib chiqaradigan siklni bajaring, u 0 qiymatiga ega elementga duch kelmaguncha. Shundan so'ng, tsikl tugashi kerak.
№2
Raqamlar massivi berilgan. Massiv boshidan birinchi manfiy songacha joylashgan elementlar yig‘indisini toping.
№3
Raqamlar massivi berilgan. Ushbu massivdagi birinchi 3 raqamining o'rnini toping (biz bu raqam massivda bo'lishi kerak deb hisoblaymiz).
№4
Yig'indi 100 dan katta bo'lishi uchun 1 raqamidan boshlab qancha butun son qo'shish kerakligini aniqlang.