- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApplication3
- {
- class Program
- {
- static void Main(string[] args)
- {
- // int ile1, ile2, ile3;
- int[] tabLosowych;
- int n;
- Random genLL = new Random(0);
- Console.WriteLine("Liczby losowe");
- Console.WriteLine("=============");
- //int losowa1 = genLL.Next(); //<0, maxInt)
- //int losowa2 = genLL.Next(50); //<0, 50)
- //int losowa3 = genLL.Next(15, 25); //<15, 25)
- //Console.WriteLine(losowa1);
- //Console.WriteLine(losowa2);
- //Console.WriteLine(losowa3);
- //Console.WriteLine(genLL.Next());
- //z klawiatury: ile liczb losowych
- //losowe na ekran
- Console.Write("ile liczb losować: ");
- while (!int.TryParse(Console.ReadLine(), out n) || n < 0)
- Console.Write("wartość nieprawidłowa - podaj powtórnie: ");
- /* int losowa;
- bool unikalna;
- do
- {
- losowa = genLL.Next(1, 50);
- unikalna = true;
- for (int ii = 0; ii < i; ii++)
- if (tabLosowe[ii] == losowa)
- {
- unikalna = false;
- break;
- }
- }
- while (!unikalna);
- tabLosowe[i] = losowa;
- }
- */
- n = 6; //zwykly lottek
- int nPlus = 10; //zwykly lotek
- int nEuro = 5; //eurojacket <1,50>, 5 liczb
- tabLosowych = new int[n];
- int[] tabLosowychPlus = new int[nPlus];
- int[] tabLosowychEuro = new int[nEuro];
- LosujUnikalne(tabLosowych, n, genLL, 1, 49);
- LosujUnikalne(tabLosowychPlus, nPlus, genLL, 1, 100);
- LosujUnikalne(tabLosowychEuro, nEuro, genLL, 1, 50);
- Console.WriteLine("wylosowane:");
- foreach (int e in tabLosowych)
- Console.Write("{0}, ", e);
- tabLosowych = new int[n];
- }
- private static void LosujUnikalne(int[] tabLosowych, int n, Random genLL, int losMin, int losMax)
- {
- for (int i = 0; i < n; i++)
- {
- tabLosowych[i] = genLL.Next(losMin, losMax+1);
- for (int ii = 0; ii < i; ii++)
- if (tabLosowych[i] == tabLosowych[ii])
- i--;
- }
- }
- }
- }