Visual Basic
Module Module1 Sub Main() Dim x, i, y(48) As Integer For i = 0 To 48 y(i) = 0 Next For i = 1 To 6 Randomize() x = Rnd() * 48 If y(x) = 0 Then Console.Write(x + 1 & " ") y(x) = 1 Else i = i - 1 End If Next Console.ReadKey() End Sub End Module
C#
private void button1_Click(object sender, EventArgs e) { int[] array = new int[6]; Random x = new Random(); int y = x.Next(48); int n = 0, m = 0; do { for (m = 0; m < n; m++) { if (y== array[m]) { y = x.Next(48); m = -1; } } array[n] = y; n++; } while (n < 6); textBox1.Text = (array[0]+1).ToString(); textBox2.Text = (array[1]+1).ToString(); textBox3.Text = (array[2]+1).ToString(); textBox4.Text = (array[3]+1).ToString(); textBox5.Text = (array[4]+1).ToString(); textBox5.Text = (array[5]+1).ToString(); }
48取6不重複。Visual Basic是利用陣列達成;C#是用do while,需先建置6個textBox,再將程式碼寫入button1中。可自行依需要調整變數的大小。
全站熱搜