Referaty: 26.IV.2013 - Dorian Sobacki - UML ----- Plan i zadania: 0. Implementacja funkcji: - silnia (for, do..while, rekurencja) - NWD - ciąg Fibonacciego - podwójna pętla 1. Zaimplementować algorytm sortowania bąbelkowego. 2. Uzupełenić program tworzący "ASCII Art" z obrazu zapisanego w pliku "obraz.png". 3. Przygotować dwie metody obliczające pierwszą i drugą pochodną podanej w argumencie funkcji "double f(double x)" we wskazanym punkcie x. 4. Przygotować klasę Ulamek implementujący ułamek zwykły (licznik i mianownik typu int). Uwzględnić operacje arytmetyczne, rzutowanie na typ double, skracanie ułamka itd. 5. Przygotować klasę o nazwie AutoSumowanie o następujących cechach: - metoda Dodaj, w której podajemy jako argument liczbę typu decimal W przypadku podania ujemnej wartości zgłosić wyjątek. - własność tylko do odczytu o nazwie Suma pozwalająca na odczytanie sumy podanych metodą Dodaj wartości. - konstruktor pozwalający na ustalenie wartości początkowej oraz limitu. Przekroczenie limitu powinno być sygnalizowane (wartość zwracana przez metodę Dodaj lub wyjątek). 6. Przygotować program Windows Forms o nazwie AsystentSklepowy, który pozwala na stopniowe dopisywanie liczb typu decimal i wyświetlanie ich sumy (musi korzystać z klasy AutoSumowanie). Wywołanie metody AutoSumowanie.Dodaj otoczyć konstrukcją try..catch. W ustawieniach aplikacji przechowywać aktualną sumę (odtwarzana po zamknięciu i ponownym uruchomieniu aplikacji). 7. Przeczytaj opis z pliku "Rysowanie zbiorów Mandelbrota i Julii.pdf". Korzystając z przygotowanej na zajęciach implementacji liczb zespolonych lub ze struktury z przestrzeni nazw System.Numerics, przygotuj aplikację rysującą na płótnie formy zbiór Mandelbrota lub zbiór Julii. Praca w zesole dwusobowym. Testy wydajności w trybie Release bez środowiska (Ctrl+F5). Zadania dodatkowe: - Zmodyfikować kod w taki sposób, aby rysowany był zbiór Julii - Zmodyfikować kod tak, żeby zamiast własnej klasy Complex używał System.Numerics.Complex (lub odwrotnie) - Zamiast skali szarości użyć ciekawszej skali barw. 8. Przygotuj zbiór klas realizujący system bankowy (jeden bank). Klasy: Konto, Przelew. Minimalna funkcjonalność to wpłata i wypłata okreslonej kwoty na konto, przelew między dwoma kontami, rejestrowanie czynności, przeglądanie kont. Praca w zesole dwusobowym. 9. Przygotuj klase Kat. - możliwość inicjowania wartością wyrażoną w radianach (double), stopniach (double), stopniach (4xint d:m:s:ms), godzinach (4xint h:m:s:ms). - odczyt wartości w takich jednostkach. Redukcja do wskazanego zakresu: [0,360), [-180,180). - operatory dodawania i odejmowania, mnożenie przez liczbę double. - rozbudowana metoda string ToString(string format); 10. Przygotuj zbiór klas zarządzających automatyczną skrzynią biegów w samochodzie. Zastanów się jakie parametry musi otrzymywać z sensorów i jakie wielkości powinna obliczać i udostępniać. Uwzględnij różne tryby jazdy (spokojny, sportowy, itp.). 11. Przygotuj zbiór klas zarządzających dwoma windami w bloku. Obie windy są sterowane jednym panelem przycisków na piętro. Jak zoptymalizować zarządzanie windami, aby przyjazd windy do wezwania był jak najszybszy. Jakie przyciski powinien posiadać panel. *. Program obliczający zbiór Mandelbrot zrównoleglić za pomocą Parallel.For z biblioteki TPL. Konkurs 1: Na zajęciach ogłosiłem konkurs na najciekawsze rozwinięcie projektu Notatnika. Ważna jest elegancja wykonania i pomysłowość. Nagroda to +1 do oceny (nagrodzone będą dwie osoby). Laureaci: Aleksander Dejewski Tadeusz Brończyk ----- Konkurs 2: Błysjawiczny konkurs, który ogłosiłem na zajęcia ma następujące zasady: należy przygotować aplikację dowolnego typu (ale innego niż Windows Forms) przygotowaną w C#, na dowolną platformę (.NET, XNA, WinRT, WP7/8, Silverlight, ASP.NET itd), która będzie korzystać z klasy AutoSumowanie i będzie odtwarzała funkcjonalność aplikacji "Asystent sklepowy". Oceniana będzie funkcjonalność i wygląd. Termin - następne zajęcia. Nagroda: +1 do oceny dla dwóch osób, które wygrają. Tomasz Gańko (I tura) Paweł Tuszyński (II tura, wo.) ----- Konkurs 3: Nagroda +1 dla pierwszej osoby, która projekt obliczający zbiór Mandelbrota zrównolegli za pomocą CUDAfy.NET (obliczenia CUDA w .NET).