#define wersjaOstatecznaxxx using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace apka { class Program { static void Main(string[] args) { Console.WriteLine("*** SuperSoft Co. 2018 ver. 1.0 ***"); Console.WriteLine("---------------------------------------------------"); Console.WriteLine(" Komis Samochodowy "); Console.WriteLine(); int n, ileSrednichOcen, iluGorszych, iluLepszych; double suma, srednia, sumaKwadratów, ocenaMax, ocenaMin, sumaSrednichOcen; double[] tabOcen; string[] tabNazwisk; #if(wersjaOstateczna) Console.Write("liczba ocen= "); while (!int.TryParse(Console.ReadLine(), out n) || n <= 0) Console.Write("wartość nieprawidłowa - podaj powtórnie: "); tabOcen = new double[n]; tabNazwisk = new string[n]; #endif sumaSrednichOcen = sumaKwadratów = suma = 0; iluLepszych = iluGorszych = 0; ocenaMin = 5; ocenaMax = 0; #if (!wersjaOstateczna) //tu dane w kodzie - do testowania tabOcen = new double[] { 3000,3500 , 30000, 22000, 5000, 4400, 4800, 35000, 5300, 25000, 45000, 14000 }; tabNazwisk = new string[] { "Adamski", "Adamowski", "Adamczyk", "Kowal", "Kowalski", "Kowalczykowski", "Nowak", "Nowaczyk", "Nowacki", "Nowakowski", "Rak", "Rakowski" }; n = tabOcen.Length; //koniec danych testowych #endif #if(wersjaOstateczna) //czytanie danych z konsoli for (int i = 1; i <= n; i++) { Console.Write("nazwa auta: "); tabNazwisk[i - 1] = Console.ReadLine(); double oc; Console.Write("cena= "); while (!double.TryParse(Console.ReadLine(), out oc) || oc < 0) Console.Write("wartość nieprawidłowa - podaj powtórnie: "); tabOcen[i - 1] = oc; } #endif //operacje na danych ocenaMin = ocenaMax = tabOcen[0]; for (int i = 1; i <= n; i++) { double oc = tabOcen[i - 1]; suma += oc; sumaKwadratów += oc * oc; //if(oc>2&&oc<5) //if (oc != 2 && oc != 5) if (oc >= 3 && oc <= 4.5) { sumaSrednichOcen += oc; ileSrednichOcen++; } if (oc < ocenaMin) ocenaMin = oc; if (oc > ocenaMax) ocenaMax = oc; } srednia = suma / n; Console.WriteLine($"średnia cena: {srednia:F2} z wariancją= {sumaKwadratów / n - srednia * srednia:F2}"); Console.WriteLine($"rozstęp cena: {ocenaMax - ocenaMin}"); //ile ocen poniżej średniej Console.WriteLine("teraz lista aut z ocenami poniżej średniej"); for (int i = 0; i < n; i++) { double oc = tabOcen[i]; if (oc < srednia) { iluGorszych++; Console.WriteLine("auto: {0} w cenie {1}", tabNazwisk[i], oc); } if (oc > srednia) iluLepszych++; } Console.WriteLine("---------------------------------------"); Console.Write("więcej było aut w grupie samochodów: "); if (iluLepszych > iluGorszych) Console.WriteLine("lepszych"); if (iluLepszych < iluGorszych) Console.WriteLine("gorszych"); if (iluLepszych == iluGorszych) Console.WriteLine("bez różnicy"); Console.WriteLine("teraz lista aut z cenami powyżej średniej"); for (int i = 0; i < n; i++) { double oc = tabOcen[i]; if (oc > srednia) { Console.WriteLine("auto: {0} w cenie {1}", tabNazwisk[i], oc); } } Console.WriteLine("---------------------------------------"); Console.WriteLine(); Console.WriteLine("aby zakończyć - wcisnij dowolny klawisz..."); Console.ReadKey(); } } }