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 ileLos, ile1, ile2, ile3; int[] tabLosowe; 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 losowych: "); while (!int.TryParse(Console.ReadLine(), out ileLos) || ileLos < 1) Console.Write("wartość nieprawidłowa - podaj powtórnie: "); tabLosowe = new int[ileLos]; //zapisać do tablicy "tabLosowe" for (int i = 0; i < ileLos; i++) //Console.WriteLine(genLL.Next()); tabLosowe[i] = genLL.Next(1, 6); //ile licz 1; ile liczb 2; ile liczb 3 ile1 = ile2 = ile3 = 0; for (int i = 0; i < ileLos; i++) if (tabLosowe[i] == 1) ile1++; Console.WriteLine("wartość 1 wystąpiła {0} razy", ile1); //z użyciem foreach foreach (var e in tabLosowe) if (e == 2) ile2++; Console.WriteLine("wartość 2 wystąpiła {0} razy", ile2); //ile 3 - z użyciem funkcji Console.WriteLine("wartość 3 wystąpiła {0} razy", ZliczX(tabLosowe, 3)); int inne = 5; Console.WriteLine("wartość {0} wystąpiła {1} razy", inne, ZliczX(tabLosowe, inne)); //średnia z wylosowanych wartości z tablicy "tabLosowe" double srednia = LiczSrednia(tabLosowe); Console.WriteLine("a średnia z liczb losowych= {0}", srednia); //kolejna tablica int[] kolejnaTab = new int[ileLos]; for (int i = 0; i < ileLos; i++) kolejnaTab[i] = genLL.Next(1, 26); Console.WriteLine("porównanie średnich"); if (srednia > LiczSrednia(kolejnaTab)) Console.WriteLine("wieksza średnia w pierwszej "); if (srednia < LiczSrednia(kolejnaTab)) Console.WriteLine("wieksza średnia w drugiej "); int rozstep1 = WyznaczMax(tabLosowe) - WyznaczMin(tabLosowe); int rozstep2 = WyznaczMax(kolejnaTab) - WyznaczMin(kolejnaTab); if (rozstep1 > rozstep2) Console.WriteLine("Lepiej pracować w 1 firmie"); if (rozstep1 < rozstep2) Console.WriteLine("Lepiej pracować w 2 firmie"); if (rozstep1 == rozstep2) Console.WriteLine("Wszystko jedno, gdzie..."); Console.WriteLine(" aby zakończyć - wcisnij dowolny klawisz..."); Console.ReadKey(); } static int WyznaczMax(int [] tabDanych) { int max = tabDanych[0]; foreach (var e in tabDanych) if (e > max) max = e; return max; } static int WyznaczMin(int[] tabDanych) { int min = tabDanych[0]; foreach (var e in tabDanych) if (e < min) min = e; return min; } /* static void LiczSredniaPP(int[] tabLiczb, ref double srednia) { int suma = 0; foreach (var e in tabLiczb) suma += e; return suma / tabLiczb.Length; ; */ static double LiczSrednia(int[] tabLiczb) { int suma = 0; foreach (var e in tabLiczb) suma += e; return suma / tabLiczb.Length; ; } static int ZliczX(int[] tabDanych, int x) { int ileX = 0; foreach (var e in tabDanych) if (e == x) ileX++; return ileX; } } }