Ошибка условия

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Ошибка условия

Сообщение Asdshka 14 май 2022, 15:32

Почему иногда не попадает внутрь ни одного из условий?
Синтаксис:
Используется csharp
    private void MethodName()
    {
        if (GetRandomRoute() == true)
        {
            //иногда сюда и ниже не попадает вообще
        }
        else if (GetRandomRoute() == false)
        {
            //иногда сюда и ниже не попадает вообще
        }
    }

    private bool GetRandomRoute()
    {
                int randomNumber = Random.Range(0, 2);
                if (randomNumber == 0) return true;
                else return false;
        }
Asdshka
UNец
 
Сообщения: 44
Зарегистрирован: 30 янв 2016, 15:13

Re: Ошибка условия

Сообщение Alkos26Rus 14 май 2022, 15:58

Вот так я думаю тебе нужно, потому как в втоем случае может быть так что ни одно условие не будет выполнено
Синтаксис:
Используется csharp

        if (GetRandomRoute() == true)
        {
            //иногда сюда и ниже не попадает вообще
        }
        else
        {
            //иногда сюда и ниже не попадает вообще
        }
 
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1642
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: Ошибка условия

Сообщение 1max1 14 май 2022, 16:12

return Random.Range(0, 2) > 0; :-*
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Ошибка условия

Сообщение Alkos26Rus 14 май 2022, 16:55

1max1 писал(а):return Random.Range(0, 2) > 0; :-*

А разница? Random.Range(0, 2) > 0 и Random.Range(0, 2) == 0 будут выдавать одинаковую вероятность
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1642
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: Ошибка условия

Сообщение 1max1 14 май 2022, 17:07

Это к тому что можно сделать запись короче.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Ошибка условия

Сообщение Asdshka 14 май 2022, 18:06

Alkos26Rus писал(а):Вот так я думаю тебе нужно, потому как в втоем случае может быть так что ни одно условие не будет выполнено
Синтаксис:
Используется csharp

        if (GetRandomRoute() == true)
        {
            //иногда сюда и ниже не попадает вообще
        }
        else
        {
            //иногда сюда и ниже не попадает вообще
        }
 

Вопрос в этом и заключается. Почему может быть такое, что ни одно условие не выполняется? Ведь на выходе из GetRandomRoute может быть либо true либо false
Asdshka
UNец
 
Сообщения: 44
Зарегистрирован: 30 янв 2016, 15:13

Re: Ошибка условия

Сообщение 1max1 14 май 2022, 20:03

Потому что ты вызываешь метод второй раз и он вполне себе может выдать не то что было в предыдущий раз.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot] и гости: 29


cron