Loading...
icowwww avatar icowwww 2803 Точки

Здравей,

Като погледнах решението видях няколко неща(не всички засягат резултата):

1. Използваш лист за да пазиш какво трябва да се изпише като резултат. Класа StringBuilder върши точно тази работа.

2. Създаваш нов отбор като правиш нова инстанция на клас Teams. Името на класа е в множествено число, което е малко объркващо. Всяка инстанция на този клас е отделен отбор, а не списък от отбори.

3. Класа ти от тип Team пази информация в public fields. Това не е препоръчително. Прави метода AddMember ненужен, защото дори извън класа може да се направи манипулация на листа Members. Field-овете се правят private или protected. В зависимост какво се изисква, се създават методи вадещи информация или манипулиращи тези field-ове. 

4. Въртиш ненужен брой пъти цикъла за да провериш дали съществува такъв отбор или създателя вече има отбор.

5. Въртиш for цикъл върху лист teams, като при всяка итерация въртиш отново цикъл върху същия лист с метод Any. Така се губи смисъла от for цикъла.

6. С for цикъл проверяваш и добавяш отборите с 0 играчи към лист, който пази изходните данни. Заедно с това премахваш такива отбори и връщаш итератора. Не ги сортираш както се изисква. Може да филтрираш тези с нула играчи, след това да ги сортираш и да ги добавиш към изхода на един ред.

7. Създаваш нова променлива, която да пази сортирания(сортиран грешно) лист. Така имаш две променливи от тип лист с еднакви отбори. Може да сортираш в самото условие на foreach-a.

8. Въпреки че, използваш лист за да ограничиш използването на клас Console, имаш на няколко места използване на Console.WriteLine.

9 . При изписването на информация за Име, създател и членове на всеки отбор въртиш цикъл по сортираните отбори, като директно достъпваш field-ве на класа. Тук е по-добре да създадеш овъррайд на метод ToString в класа с отбора, който връща тази информация..

Въпреки големия брой от проблеми на пръв поглед, реших да променя решението ти.

Използвах максимално малко промени, с които да го направя достатъчно четимо и да не се загуби връзката с твоето решение.

Направих промени само за StringBuilder, смених част от условията да използват Any и промених сортиранията. 

https://pastebin.com/U3r8fEHV

 

 

1
Narunu avatar Narunu 0 Точки

Благодаря ти за поправките по кода! Сега ми дава 100/100.Доста тъпи грешки като се загледам

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.