테스트 사이트 - 개발 중인 베타 버전입니다

1에서 45까지 랜덤이면서 연속 숫자도 가능한 소스

· 2년 전 · 1488 · 3

만약에 연속 숫자도 가능하면서 1 ~ 45 까지 랜덤한 6자리를 10번씩 뽑고자 한다면

[code]

<?php
for ($i = 0; $i < 10; $i++) {
  $selected_numbers = array();
  while (count($selected_numbers) < 6) {
    $number = rand(1, 45); // generate a random number between 1 and 45
    if (!in_array($number, $selected_numbers)) { // check if number is already selected
      if (count($selected_numbers) > 0 && $number == $selected_numbers[count($selected_numbers) - 1] + 1) {
        $selected_numbers[] = $number; // add number to selected numbers if consecutive
      } else {
        $selected_numbers = array(); // reset the array if non-consecutive number is found
      }
    }
  }
  // Print the selected numbers for this set
  echo "Set " . ($i + 1) . ": " . implode(" ", $selected_numbers) . "<br>";
}
?>
[/code]

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 3개

2년 전
처음 숫자가 44쯤 되면 무한 루프가 되지 않을까요
@엑스엠엘 이게 제가 곰곰하게 생각한 것이 아니라 인공지능을 가미해서 만들려다 랜덤으로 했습니다.10번찍고 빠져나오죠.
2년 전
$number = rand(1, 45);
for( $i=0; $i<6; $i)
$selected_numbers[]=$number+$i;
이런 결과를 말씀하시는 건가요?

게시글 목록

번호 제목
16893
16890
16889
16888
16887
16886
16885
16884
16883
16882
16881
16880
16871
16870
16868
16863
16861
16856
16852
16834
16833
16829
16827
16826
16823
16822
16819
16818
16817
16806