Cvičení 4 - Konstrukce jazyka C#
Úloha 1 - Indexery, Properties
Cílem bude naimplementovat Dynamické pole celých čísel tak aby nemusely být všechny prvky pole obsazené (nullable). Třída bude splňovat následující body.
- Vytvoření pole s velikostí definovanou v konstruktoru - možnost zadat jako implicitní parametr funkce.
- Vložení prvku na jakoukoliv pozici (pole se dokáže zvětšit bude-li to nutné) a čtení z jakékoliv pozice pomocí indexeru.
- Pole bude možné vypsat do konzole tak, aby šlo rozlišit obsazená a neobsazená políčka. Přepište (override) metodu ToString()
- Pole bude obsahovat vlastnost (read/write) pro zjištění a nastavení velikosti pole. Pokus o zmenšení vyvolá vyjímku.
- Pole bude obsahovat metodu s výstupním (out) parametrem pro výpočet součtu pole.
- Pole bude obsahovat metodu, která k parametru předanému odkazem přičte hodnotu prvku na pozici předané jakjo další parametr.
- Pole bude udržovat informaci o svém stavu = Prázdné, Částečně zaplněné, Plné
Úloha 2 - Testovací aplikace
Dále vytvoříte program, otestuje Vaše pole. Bude umět:
- pomocí 2 parametrů příkazové řádky vytvoří pole, a naplní ho hodnotami (náhodné, sekvenční, nuly)
- vypíše pole do konzole a vypočítá součet prvků pole
- bude nastavovat prvky na nul a vypisoval aktualni naplněnost pole