Random Non-Repeating Numbers

 Introduction

In an assignment, you may need to use a series of random non-repeating numbers. This is an example of how you can generate such a series. The numbers are stored in an ArrayList object:

```using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1
{
class Numbers
{
public ArrayList RandomNumbers(int max)
{
// Create an ArrayList object that will hold the numbers
ArrayList lstNumbers = new ArrayList();
// The Random class will be used to generate numbers
Random rndNumber = new Random();

// Generate a random number between 1 and the Max
int number = rndNumber.Next(1, max + 1);
// Add this first random number to the list
// Set a count of numbers to 0 to start
int count = 0;

do // Repeatedly...
{
// ... generate a random number between 1 and the Max
number = rndNumber.Next(1, max + 1);

// If the newly generated number in not yet in the list...
if (!lstNumbers.Contains(number))
{
}

// Increase the count
count++;
} while (count <= 10 * max); // Do that again

// Once the list is built, return it
return lstNumbers;
}
}

public partial class Exercise : Form
{
public Exercise()
{
InitializeComponent();
}

private void btnGenerate1_Click(object sender, EventArgs e)
{
Numbers nbs = new Numbers();
const int Total = 25;
ArrayList lstNumbers = nbs.RandomNumbers(Total);

for (int i = 0; i < lstNumbers.Count; i++)
}

private void btnGenerate2_Click(object sender, EventArgs e)
{
Numbers nbs = new Numbers();
const int Total = 25;
ArrayList lstNumbers = nbs.RandomNumbers(Total);

for (int i = 0; i < lstNumbers.Count; i++)
}

private void btnGenerate3_Click(object sender, EventArgs e)
{
Numbers nbs = new Numbers();
const int Total = 25;
ArrayList lstNumbers = nbs.RandomNumbers(Total);

for (int i = 0; i < lstNumbers.Count; i++)
}

private void btnGenerate4_Click(object sender, EventArgs e)
{
Numbers nbs = new Numbers();
const int Total = 25;
ArrayList lstNumbers = nbs.RandomNumbers(Total);

for (int i = 0; i < lstNumbers.Count; i++)