닷넷/C#

C# 난수, 랜덤 Random 사용법 (+ 문자열 배열에서 랜덤으로 출력하기)

FreeBear 2020. 3. 9. 18:58
반응형

Random은 무작위의 숫자를 발생시키는 함수이다.

 

사용방법

1. 정수(int)


private void intRandom()
{
    Random random = new Random();
    
    int min = int.Parse(textBoxMin.Text);
    int max = int.Parse(textBoxMax.Text);

    // 음수가 아닌 임의의 정수
    iValue = random.Next();
    listBoxInt.Items.Add("Next() : " + iValue.ToString());
    
    // maxValue보다 작은 음수가 아닌 임의의 정수
    iValue = random.Next(max);
    listBoxInt.Items.Add("Next(max) : " + iValue.ToString());
    
    // minValue부터 maxValue까지의 임의의 정수    
    iValue = random.Next(min, max);
    listBoxInt.Items.Add("Next(min, max) : " + iValue.ToString());
}

 

2. 부동소수점(double)


private void doubleRandom(int number)
{
    Random random = new Randome();
    
    for (int i = 0; i < number; i++)
    {
        // 0.0보다 크거나 같고 1.0보다 작은 부동소수점 난수
        double dValue = random.NextDouble();
        listBoxDouble.Items.Add(i.ToString() + "번째 부동소수점 난수 : " + dValue.ToString());
    }
}

 

 

3. 바이트 배열(byte[])

private byte[] byteRandom(int num)
{
   Random random = new Random();
   byte[] vs = new byte[num];
   
   // 바이트 배열의 요소를 난수로 채움
   random.NextBytes(vs);
   
   return vs;
}

private void buttonByte_Click(object sender, EventArgs e)
{
    byte[] vs = byteRandom(10);
    for(int i=0; i<number;i++)
    {
        listBoxByte.Items.Add("배열 " + i.ToString() + "번째 바이트 : " + vs[i].ToString());
    }
}

 

 

결과

Random 함수 사용예

 

 

문자열 배열에서 랜덤으로 출력하기

private void stringRandom()
{
    // 문자열을 ,를 기준으로 쪼개서 문자열 배열에 담기
    string[] text = textBoxString.Text.Split(',');
    
    Random random = new Random();
    
    // 배열의 크기보다 작은 임의의 인덱스 생성
    int index = random.Next(text.Length);
    
    // 임의의 인덱스를 가진 문자열
    listBoxString.Items.Add(text[index]);
}

 

문자열 배열에서 랜덤으로 출력

 

반응형