В то время как цикл с несколькими условиями в PHP - PullRequest
0 голосов
/ 20 мая 2018

Генерация Случайного числа между 0 & 3 в PHP с multiple conditions.

<?php
    $answer_ll = 1;
    $ll_50_rand_1 = 2;
    $ll_50_rand_2 = $answer_ll;
    while(($ll_50_rand_2 == $answer_ll) && ($ll_50_rand_2 == $ll_50_rand_1)){
    $ll_50_rand_2 = rand(0,3);
    }
echo $ll_50_rand_2;?>

Я пробовал вышекод, но randomly generated number - это , повторяющий либо с $answer_ll, либо с $ll_50_rand_1.

Все числа написаны только для примераиначе все числа являются динамическими.(Изменяется в ситуациях)

Просмотр оператора:

Я просто хочу случайное число из определенного диапазона с условием.Условием будет то, что случайно сгенерированное число не может быть X & Y.

X & Y всегда определяется при загрузке страницы.Это означает, что они являются динамическими

Ответы [ 2 ]

0 голосов
/ 20 мая 2018

Если я правильно понимаю цель, то вам нужно случайное число, которое не может быть X или Y.

Если это так, то вы можете достичь этого, выполнив следующие действия:

function random_number_with_conditions($x, $y) {
    $random_number = rand(0,3);

    if($random_number == $x || $random_number == $y)
        return random_number_with_conditions($x, $y);

    return $random_number;
}

Эта функция генерирует случайное число, затем проверяет это случайное число на соответствие условиям, если какое-либо из условий равно случайно сгенерированному числу, то оно будет повторять попытку и будет продолжать делать это, пока не вернет числоэто не одно из двух условий.

0 голосов
/ 20 мая 2018

Ваш код имеет в вашем примере уже логические проблемы

, который вы объявляете: $ ll_50_rand_2 = $ answer_ll;и чем вы занимаетесь ($ ll_50_rand_2 == $ answer_ll)?НАСТОЯЩЕМУ?^^ это не нужно

, чем вы заполняете переменную в цикле, но делаете эхо после того, как выводится только последнее случайное число.

если я правильно понял, вы хотите потратитьв зависимости от переменной переменной $ answer может быть много случайных чисел.

<?php
    $answer_ll = 3;
    $ll_50_rand_1 = 3;

    for($i = 0; $i < $answer_ll && $anser_ll == $ll_50_rand_1; $i++){
         $ll_50_rand_2 = rand(0,3);
         echo $ll_50_rand_2 . PHP_EOL;
    }
?>

http://sandbox.onlinephpfunctions.com/code/23cbff911e01114e3711d272fde4b0c2d9d6c2c0

, может быть, этот пример может вам помочь:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...