Random Non-Repeating Numbers |
|
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; namespace ConsoleApplication5 { 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 lstNumbers.Add(number); // 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)) { // ... add it lstNumbers.Add(number); } // Increase the count count++; } while (count <= 10 * max); // Do that again // Once the list is built, return it return lstNumbers; } } class Program { static int Main() { Numbers nbs = new Numbers(); const int Total = 30; ArrayList lstNumbers = nbs.RandomNumbers(Total); for (int i = 0; i < lstNumbers.Count; i++) Console.WriteLine("{0}", lstNumbers[i].ToString()); return 0; } } } Here is an example of running the program: 12 21 14 19 25 23 6 24 18 10 22 5 11 4 13 1 3 9 15 20 16 8 17 26 30 7 28 2 27 29 Press any key to continue . . . Here is another example of running the program: 7 12 9 3 13 4 26 11 19 16 1 20 30 24 10 5 2 27 17 28 15 23 14 6 8 29 21 22 18 25 Press any key to continue . . .
|
|
||
Home | Copyright © 2006-2016, FunctionX, Inc. | |
|