ZADANIA DOMOWE 6 marca 2026: 1. Stwórz projekt aplikacji konsolowej C# dla .NET o nazwie "RozwiązywanieRównańKwadratowych" 2. Do projektu dodaj klasę "RównanieKwadratowe" z trzema polami prywatnymi o nazwach a, b i c typu double oraz konstruktorem, który pozwala zainicjować te pola. 3. W pliku Program.cs, w klasie Program, w metodzie Main utwórz instancję tej klasy (obiekt typu RównanieKwadratowe) ze współczynnikami a = 1, b = 2, c = 1. 4. Napisz test jednostkowy dla konstruktora klasy dla a = 1, b = 2, c = 1 oraz a = 1, b = 0, c = -1 oraz a = 1, b = -1, c = 1. 10 marca 2026: 1. W klasie RównanieKwadratowe zdefiniuj trzy własności A, B i C typu double tylko do odczytu pozwalające na odczytanie wartości współczynników przechowywanych w polach a, b i c. 2. Do klasy dodaj pseudokonstruktor "Wczytaj" pozwalający zainicjować obiekt na podstawie współczynników odczytanych z pliku tekstowego (format zapisu: wszystkie trzy współczynniki wymienione w jednej linii po przecinku). W razie braku pliku lub jego niepoprawnego formatu zgłoś wyjątek z odpowiednim komunikatem. 3. Do klasy dodaj metodę "Zapisz", która pozwala na zapis stanu klasy (tj. trzech współczynników a, b i c) do pliku tekstowego w takim samym formacie, jak w p. 2. 17 marca 2026: 1. W klasie RównanieKwadratowe zdefiniuj prywatną własność tylko do odczytu (posiadającą jedynie sekcję get) o nazwie "delta", która oblicza i zwraca wartość b*b-4*a*c. 2. Zdefiniuj również prywatne pola x1 i x2 oraz prywatną metodę "rozwiąż", która do tych pól zapisuje rozwiązania równania kwadratowego. Jeżeli delta jest mniejsza od zera, metodą "rozwiąż" zgłasza wyjątek. 3. Zdefiniuj własności tylko do odczytu X1 i X2 (dużymi literami), które pozwalają na odczytanie rozwiązań. Wywołuj w nich metodę rozwiąż, ale tylko, jeżeli współczynniki równania zmieniły się po poprzednim odczytaniu któregoś z rozwiązań. 24 marca 2026: 1. Przygotować program dla maszyny Turinga, który dla stanu początkowego "aABCDEFGHIJK" zapisze na taśmię Państwa imiona (każdy swoje), a resztę taśmy zapełni znakami X. 2. Zastanowić się, czy typ "RównanieKwadratowe" z wcześniejszych zadań powinna być klasą, czy strukturą. 3. Za pomocą dwóch lub trzech pętli przygotować kod realizujący następujący wydruk: 122333 223334444 333444455555 444455555666666 31 marca 2026: Przećwicz korzystanie z LINQ na prostej kolekcji. W tym celu w nowej aplikacji konsolowej zdefiniuj tablicę łańcuchów: string[] slowa = { "czereśnia", "jabłko", "borówka", "wiśnia", "jagoda", "gruszka", "śliwka", "malina" }; 1. Następnie, korzystając z metod rozszerzających LINQ, wyświetl:, wyświetl a. Znajdź największądłuższy i najmniejsząkrótszą długość słowa (użyj rozszerzeńnia Min i Max), b. średnią długość słów (Average), c. całkowitą liczbę liter we wszystkich słowach (Sum). 2. Przygotuj zapytaniae LINQ, które: a. zwraca wszystkie słowa o długości większej niż 6 liter posortowane alfabetycznie, b. zwraca wszystkie słowa o długości większej niż 6 liter posortowane według ich długości, c. zwraca wszystkie słowa kończące się na „a” posortowane według ostatniej litery, d. zwraca długości poszczególnych słów posortowane według alfabetycznej kolejności tych słów, e. jak w podpunkcie d), ale tylko dla słów, które zawierają literę „o”, f. zwraca słowa z tablicy ze literami zmienionymi literami na duże. 3. Napisz metodę CzytajZPlikuXml wczytującą kolekcję osób z pliku osoby.xml. Schemat postępowania będzie podobny, jak