return-ის გამოყენება ციკლში PHP-ში
ის, რომ return მდებარეობს ციკლის შიგნით,
ყოველთვის არ უნდა იყოს შეცდომა.
შემდეგ მაგალითში შექმნილია ფუნქცია, რომელიც
განსაზღვრავს, რამდენი პირველი ელემენტი მასივიდან
უნდა დაემატოს, რომ ჯამი გახდეს მეტი ან
ტოლი 10-ის:
<?php
function func($arr) {
$length = count($arr);
$sum = 0;
for ($i = 0; $i < $length; $i++) {
$sum += $arr[$i];
// თუ ჯამი მეტია ან ტოლია 10-ის:
if ($sum >= 10) {
return $i + 1; // ვწყვეტთ ციკლს და ფუნქციას
}
}
}
$res = func([1, 2, 3, 4, 5]);
echo $res;
?>
შემდეგ მაგალითში კი შექმნილია ფუნქცია, რომელიც
ითვლის, რამდენი მთელი რიცხვი, დაწყებული
1-დან, უნდა დაემატოს, რომ შედეგი
იყოს 100-ზე მეტი:
<?php
function func() {
$sum = 0;
$i = 1;
while (true) { // უსასრულო ციკლი
$sum += $i;
if ($sum >= 100) {
return $i; // ციკლი მუშაობს მანამ, სანამ აქ არ გამოვა
}
$i++;
}
}
echo func();
?>
დაწერეთ ფუნქცია, რომელიც პარამეტრად მიიღებს
რიცხვს და გაყოფს მას 2-ზე
იმდენჯერ, სანამ შედეგი არ გახდება
10-ზე ნაკლები.
ფუნქციამ უნდა დააბრუნოს იმ იტერაციების რაოდენობა,
რაც შედეგის მისაღწევად დასჭირდა.