DEV Community

Anonymus
Anonymus

Posted on

c# because i dont understand

public class Car
{
public Car(string marka, string modell, string szin, string tipus)
{
Marka = marka;
Modell = modell;
Szin = szin;
Tipus = tipus;
}

public string Marka{ get; private set; }
public string Modell{ get; private set; }
public string Szin{ get; private set; }
public string Tipus{ get; private set; }
Enter fullscreen mode Exit fullscreen mode

}

--------------------------Another Class-----------------------

static void Main(string[] args)
{
List cars = new List();
using (StreamReader sr = new StreamReader("autok.txt"))
{
string headerline = sr.ReadLine();
string line;
while ((line = sr.ReadLine()) != null)
{
string[] adatok = line.Split(';');

        cars.Add(new Car(adatok[0], adatok[1], adatok[2], adatok[3]));
    }
}
//1.feladat
Console.WriteLine(cars.Count);

//2.feladat
Console.WriteLine("Adjon meg egy autó márkát: ");
string bekertMarka = Console.ReadLine();
var markaModellek = cars.Where(a => a.Marka.Equals(bekertMarka, StringComparison.OrdinalIgnoreCase)).Select(a => a.Modell).ToList();
if (markaModellek.Any())
{
    Console.WriteLine(string.Join(", ", markaModellek));
}
else
{
    Console.WriteLine("Nem található ilyen márka az állományban!");
}

//3.feladat
int suvDb = cars.Count(a => a.Tipus.ToLower() == "suv");
double suvSzazalek = (double)suvDb / cars.Count * 100;
Console.WriteLine($"SUV autók aránya: {suvSzazalek}%");

//4.feladat
var MarkaDb = cars.GroupBy(a => a.Marka).ToDictionary(g => g.Key, g => g.Count());
foreach (var item in MarkaDb)
{
    Console.WriteLine($"[{item.Key}: {item.Value}] db");
}

//5.feladat
var gyakoriSzin = cars.GroupBy(a => a.Szin).OrderByDescending(g => g.Count()).First().Key;
Console.WriteLine(gyakoriSzin);
Enter fullscreen mode Exit fullscreen mode

}

Top comments (0)