Получить рандомное значение и проверить условие

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28
Ребят можно объединить данные действия в один C#?

нужно получить значение радомного числа 0-100
и выполнить проверку меньше 30 или выше, если выше закрыть по красной ветке.
 

Вложения

ankur

Client
Регистрация
19.05.2012
Сообщения
83
Благодарностей
48
Баллы
18
Ребят можно объединить данные действия в один C#?

нужно получить значение радомного числа 0-100
и выполнить проверку меньше 30 или выше, если выше закрыть по красной ветке.
C#:
//Создаём объект для генерации чисел
Random rnd = new Random();
//Получаем рандомное число от 0 до 100 и ложим его в переменную number
int number = rnd.Next(0, 100);
//Провреяем переменная number больше ли 30, если больше выходим по красной ветке
if (number < 30) return null;
 
Последнее редактирование:
  • Спасибо
Реакции: xDESTROYx

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 789
Благодарностей
5 721
Баллы
113
выскажу сомнение что return null хороший вариант для выхода по красной. сегодня оно выходит, а в следующей версии разработчики возьмут и изменят реакцию на null и код перестанет работать. ну чисто теоретически это возможно. как по мне так лучше генерировать явное исключение
if (number > 30) throw new Exception();
 
  • Спасибо
Реакции: ankur и xDESTROYx

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 246
Благодарностей
1 820
Баллы
113
выскажу сомнение что return null хороший вариант для выхода по красной. сегодня оно выходит, а в следующей версии разработчики возьмут и изменят реакцию на null и код перестанет работать. ну чисто теоретически это возможно. как по мне так лучше генерировать явное исключение
if (number > 30) throw new Exception();
А я стараюсь делать выход только по зелёной, а из экшена возвращать какое-то значение и уже на основании этого значения строить дальнейшую логику. А выход по красной только в случае ошибок.

В противном случае можно попасть в неприятную ситуацию - в коде закрадётся баг, из-за которого будет валиться ошибка, выход будет по красной. А мы и не будем знать, что у нас проблемы.
 
  • Спасибо
Реакции: xDESTROYx

ankur

Client
Регистрация
19.05.2012
Сообщения
83
Благодарностей
48
Баллы
18
  • Спасибо
Реакции: xDESTROYx

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28
А можно реализовать проверку 2 условий типа; или больше 30 и наличия текста в переменой?
вроде такого
C#:
Random rnd = new Random();
int number = rnd.Next(0, 100);
if (number > 0 ||file_audio!='') throw new Exception();
 

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28
C#:
//Создаём объект для генерации чисел
Random rnd = new Random();
//Получаем рандомное число от 0 до 100 и ложим его в переменную number
int number = rnd.Next(0, 100);
//Провреяем переменная number больше ли 30, если больше выходим по красной ветке
if (number < 30) return null;
если в проекте таких 2 с разными значениями начинают тупить. так что, не подходит
 

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28

xDESTROYx

Client
Регистрация
21.09.2019
Сообщения
224
Благодарностей
36
Баллы
28
А можно реализовать проверку 2 условий типа; или больше 30 и наличия текста в переменой?
вроде такого
C#:
Random rnd = new Random();
int number = rnd.Next(0, 100);
if (number > 0 ||file_audio!='') throw new Exception();
остался только этот вопрос)
 

ankur

Client
Регистрация
19.05.2012
Сообщения
83
Благодарностей
48
Баллы
18
  • Спасибо
Реакции: xDESTROYx

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)