Vivek VIshwas Ответов: 2

Как сгенерировать несколько случайных чисел в определенном диапазоне в ASP.NET с#


Привет,
На самом деле я хочу сгенерировать более 1 случайного значения из заданного reng od minumum и максимального значения из текстового поля при нажатии кнопки


. aspx..-------------

Минимальное значение&ЛТ;АСП:текстовое поле с ID="элемент textbox1" атрибут runat="сервер"и GT;

Максимальное значение&ЛТ;АСП:текстовое поле с ID="поле textbox2" атрибут runat="сервер"и GT;



Результат : &ЛТ;АСП:метка идентификатор="lblnumber" атрибут runat="сервер"и GT;
<asp:Button ID="Button1" runat="сервер"
Функция onclick="обработчика button1_click" текст="генерация случайных чисел в ярости" /&ГТ;





.цезий-----------
охраняемых недействительными обработчика button1_click(объект отправителя, EventArgs в электронной)
{
//------1
Случайный r1 = новый случайный();
инт Нум = Р1.Далее(
Преобразовать.ToInt32(TextBox1.Text),
Преобразовать.ToInt32(TextBox2.Text)
);
////----- 2
//Random r2 = новый случайный();
//int num2 = r2.Next(
// Преобразовать.ToInt32(TextBox1.Text),
// Преобразовать.ToInt32(TextBox2.Text)
// );
////----- 2
//Random r3 = новый случайный();
//int num3 = r3.Next(
// Преобразовать.ToInt32(TextBox1.Text),
// Преобразовать.ToInt32(TextBox2.Text)
// );
////----- 2
//Random r4 = новый случайный();
//int num4 = r4.Next(
// Преобразовать.ToInt32(TextBox1.Text),
// Преобразовать.ToInt32(TextBox2.Text)
// );
lblnumber.Текст = "первый номер" + num.ToString(); // +", 2-й номер" + num2.ToString() + ", No. 3 " + num3.ToString() + ", 4-й номер" + num4.Метод toString();
//Ответ.Напишите(числ.Метод toString());
Новый номер();
}
общественные случайный = новый случайный(); // заменить из новых случайных(типа datetime.Сейчас.Клещей.GetHashCode());
// Поскольку подобный код выполняется в конструкторе по умолчанию внутренне
общественная список<инт&ГТ; randomList = новый список<инт&ГТ;();
int MyNumber = 0;
частная пустота новый номер()
{
MyNumber = a.Next(0, 10);
если (!randomList.Содержит(MyNumber))
randomList.Add(MyNumber);
}


С помощью кода is я получаю только одно случайное число при каждом щелчке, но мне нужно минимум 4 случайных числа .
Пожалуйста, чак и решите эту проблему.

Что я уже пробовал:

Hello,
 Actually i want to generate more than 1 random  from given reng od minumum and maximum value from textbox on button click
 
 
. aspx..-------------
<div>
Minimum value<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
Maximum value<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
<br />
Result : <asp:Label ID="lblnumber" runat="server"></asp:Label>
<asp:Button ID="Button1" runat="server"
OnClick="Button1_Click" Text="Generate Random Number in a Rage" /><br />
</div>
 
 
 
.cs-----------
protected void Button1_Click(object sender, EventArgs e)
{
//------1
Random r1 = new Random();
int num = r1.Next(
Convert.ToInt32(TextBox1.Text),
Convert.ToInt32(TextBox2.Text)
);
////----- 2
//Random r2 = new Random();
//int num2 = r2.Next(
// Convert.ToInt32(TextBox1.Text),
// Convert.ToInt32(TextBox2.Text)
// );
////----- 2
//Random r3 = new Random();
//int num3 = r3.Next(
// Convert.ToInt32(TextBox1.Text),
// Convert.ToInt32(TextBox2.Text)
// );
////----- 2
//Random r4 = new Random();
//int num4 = r4.Next(
// Convert.ToInt32(TextBox1.Text),
// Convert.ToInt32(TextBox2.Text)
// );
lblnumber.Text = "First No." + num.ToString(); // +", 2nd No." + num2.ToString() + ", No.3 " + num3.ToString() + ", 4th No." + num4.ToString();
//Response.Write(num.ToString());
NewNumber();
}
public Random a = new Random(); // replace from new Random(DateTime.Now.Ticks.GetHashCode());
// Since similar code is done in default constructor internally
public List<int> randomList = new List<int>();
int MyNumber = 0;
private void NewNumber()
{
MyNumber = a.Next(0, 10);
if (!randomList.Contains(MyNumber))
randomList.Add(MyNumber);
}
 
 
With is code , i get only one random number on every click, But i want minimum 4 random number .
Please chack and resolve this problem. 

F-ES Sitecore

Используйте цикл "for" для выполнения кода, который получает случайное число необходимое количество раз.

2 Ответов

Рейтинг:
16

OriginalGriff

Во-первых, не используйте преобразование пользовательского ввода: всегда использовать метод tryparse:

int min, max;
if (!int.TryParse(textBox1.Text, out min))
   {
   // Report bad input to user
   return;
   }
if (!int.TryParse(textBox2.Text, out max))
   {
   // Report bad input to user
   return;
   }
for (int i = 0; i < 4; i++)
   {
   randomList.Add(rand.Next(min, max));
   }


CPallini

5.

Рейтинг:
1

ashwani bakshi

protected void Button1_Click(object sender, EventArgs e)
    {
        int min, max,v1,v2,v3,v4;
        min = int.Parse(TextBox1.Text);
        max = int.Parse(TextBox2.Text);
        Random r = new Random();
        v1 = r.Next(min,max);
        v2 = r.Next(min,max);
        v3 = r.Next(min, max);
        v4 = r.Next(min, max);
        Label1.Text = v1.ToString()+" "+ v2.ToString() +" "+v3.ToString()+" "+ v4.ToString();

    }

ВЫХОД:-
min value 100
max value 220
result 180 137 186 202