Loading...
gkolev_chess avatar gkolev_chess 2 Точки

C# OOP Retake Exam - 18 April 2019 2.Business logic

Здравейте колеги,

Имам проблем с бизнес логиката от изпита C# OOP Retake Exam 18 April 2019. https://judge.softuni.bg/Contests/Practice/Index/1644#1

Кодът ми: https://dox.abv.bg/download?id=f9eb3c84f1#

Когато изпратя решението си в judge, ми дава compile time error, обаче отдолу няма описание на грешката.

Благодаря предварително!

Тагове:
0
Module: C# Advanced
nsavov avatar nsavov 68 Точки
Best Answer

Провери много хубаво в ManagerController ретърн съобщенията. На мен ми гърмеше заради AddCard защото ми връщаше "MagicCardCard".

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

0
12/12/2019 00:24:49
gkolev_chess avatar gkolev_chess 2 Точки

Не се компилира дори и когато го сменя и с твоя контролер. Изглежда грешката е някъде в другите файлове.

Благодаря, все пак)

0
nsavov avatar nsavov 68 Точки

Прегледах ти файловете, съмнявах се дали някъде си изпуснал public конструктор, изглеждат ок...

 

В CardFactory правиш Magic вместо Trap

В Card не сетваш damagePoints = value

 

Заради тези двете не ти се компилира... Сега обаче дава само 64 точки.

 

https://dox.abv.bg/download?id=220b9da5ce# - Линк за сваляне

Това е моето решение, доста по-кратко от това на упражнението. Не сме длъжни да работим със стриймове на тази задача на изпита.

 

Виж и авторското решение. Успех!

0
13/12/2019 07:38:08
gkolev_chess avatar gkolev_chess 2 Точки

Оправих нещата, които ми каза и също в класа Player:

 public void TakeDamage(int damagePoints)
        {
            if(damagePoints < 0)
            {
                throw new ArgumentException("Damage points cannot be less than zero.");
            }
            this.Health = Math.Max(this.Health - damagePoints, 0);
        }

Използвах полето health, вместо пропърти Health

Благодаря)

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