PHP에서 루프 내 return 사용

return이 루프 내부에 위치하는 것이 항상 오류는 아닙니다.

다음 예제는 배열의 처음 몇 개 요소를 더해야 합이 10 이상이 되는지를 확인하는 함수입니다:

php<?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;
?>

다음 예제는 결과가 100을 초과하기 위해 1부터 시작하여 몇 개의 정수를 더해야 하는지 계산하는 함수입니다:

php<?php
  function func() {
    $sum = 0;
    $i = 1;
    
    while (true) { // 무한 루프
      $sum += $i;
      
      if ($sum >= 100) {
        return $i; // 여기서 나올 때까지 루프를 실행합니다
      }
      
      $i++;
    }
  }
  
  echo func();
?>
Задание 1

숫자를 매개변수로 받아 결과가 10 미만이 될 때까지 2로 나누는 함수를 작성하세요. 함수는 결과를 달성하는 데 필요한 반복 횟수를 반환해야 합니다.