Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

milen.stefanov avatar milen.stefanov 40 Точки

За банката някой да поясни за interest rate и interest (лихвата)

А = money * (1 + interest rate * months) какво трябва да бъде - проценти, крайна сума или ...?

money -> това текущия баланс ли е или е независима променлива?

1
Filkolev avatar Filkolev 4482 Точки

Гледайки формулата interest rate трябва да е подадено като процент, т.е. 7% == 0.07. money е текущия баланс, а A е баланса с начислена лихва.

4
RoYaL avatar RoYaL Trainer 6849 Точки

Струва ми се, че твоите клиенти ще започнат да теглят заеми от минус 5000, и в сметките им магически парите ще започнат да се увеличават :)

 

 

0
denitsa.dobreva avatar denitsa.dobreva 5 Точки

В решението ти на първа задача си писал класа Circle като child class на BasicShape. Така ли трябва да четем условието на задачата? Аз реших, че Circle е отделен клас, който просто имплементира IShape, понеже не е експлицитно указано, че е subclass на BasicShape...

3
Filkolev avatar Filkolev 4482 Точки

Точно така, кръга няма ширина или някакви други дивотии, той не е BasicShape, но е IShape. Стандартна грешка, която всички випуски са правили до момента в тази задача.

0
pataroka avatar pataroka 319 Точки

Аз го направих да не наследява BasicShape обаче после като натъпках всичките формички в масив от обекти ришарпъра взе да реве, че трябвало да ползвам as за кастване и да правя и null проверка като цикля масива. Тва кво значи да създам една променлива, дето да каствам текущия обект към BasicShape и ако е null да правя друга променлива дето да каствам текущия обект към Circle и ако и там не е null да си печатам резултата, така ли?

Иначе програмата работи.

04.OOP-Encapsulation-and-Polymorphism-Homework/01.Shapes/Shapes.cs

0
D.Kostadinov avatar D.Kostadinov 30 Точки

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

Относно втора задача и конкретно метода CalculateInterest(). При Loan accounts се иска да се сметне лихвата, като се вземе на предвид, че при индивидуален клиент първите 3 месеца са без лихва, а при корпоративни първите 2 месеца са без лихва. В твоя случай, ти правиш проверка, че ако месеците са по-малко от 3, да се връща 0, което е вярно, но мисля че ти трябва още една проверка, която да е за по-дълъг период от време. Като същото се отнася и за Моrtgage accounts.

Пример:

 if (months > 3 && this.Customers == Customers.Individual)
{
     return this.InterestRate = this.Balance * (1 + (this.InterestRate * (months - 3)));
}

else if (months > 2 && this.Customers == Customers.Company)
 {
     return this.InterestRate = this.Balance * (1 + (this.InterestRate * (months - 2)));
 }

 

 

0
13/06/2015 14:08:03
RoYaL avatar RoYaL Trainer 6849 Точки

Това със сигурност не трябва да става със if/else/switch, на 20тия вид клиент ще резултираш с някакъв огромен чаршаф if/else... Това е нарушение на така наречение Open/Closed principle

В конкретния случай, може да се симплифицира като тези месеци се изнесат в customer-а, съответно ще е само един IF - if(months > this.Customer.Requiredmonths) { /// }

Имам чувството и че погрешно си кръстил пропъртито в множествено число, не става ли въпрос за един клиент? Ако става въпрос за множество такива, едва ли можеш да използваш оператора за сравнение ==

0
onefen avatar onefen 27 Точки

https://github.com/onefen/Homework-EncapsulationAndPolymorphism/tree/master/EncapsulationAndPolymorphism

Първите две задачи. Третата е To Do дет се вика

0
onefen avatar onefen 27 Точки

Въпреки всичко не можах добре да схвана каква е ползата от интерфейсите. Така или иначе методите ги пишеш вътре в съответния клас, ако си декларираш един метод като абстрактен в абстрактния клас си длъжен да го овъррайднеш в класа наследник. Какъв е смисъла да ги изброяваш методите и в интерфейса?

2
pataroka avatar pataroka 319 Точки

Аз се позаиграх малко повече от необходимото с втора задача, поне като гледам решенията на колегите. Не съм имплементирал капитализиране на лихва и тем подобни(макар че има някакъв жалък опит), но поне се опитах да обвържа всякакви банкови операции с конкретни дати, на които са извършени. Със сигурност има пропуски и недомислици, ама нямах време да обмислям и структурирам нещата като хората.

ЦЪК!!! за който има интерес.

0
IvayloHristov avatar IvayloHristov 33 Точки

Здравей Сашо, 

на задача 3.Game Engine, класа Healer нещо ми се струва недовършен.

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

1
WindWallk avatar WindWallk 95 Точки

Да, пропуснал съм ToString() метода, благодаря :) Инаяе го разгледах и нищо друго не съм пропуснал(или поне на мен така ми изглеьда)

1
antonp1p2 avatar antonp1p2 17 Точки

Здравейте, аз имам едно въпросче относно Mortgage класа в 2-ра...

Тъй като малко се оплетох с тоя Рейт, това като вариант на метода CalculateInterests правилен ли е ?

 

  public override double CalculateInterest(int months)
        {
            double interests = this.Balance * (1 + this.Rate * months);

            if (months < 6 && this.CustomerType == Customer.Individuals)
            {
                this.Rate = 0;
            }

            else if (months < 12 && this.CustomerType == Customer.Companies)
            {
                this.Rate = interests / 2;
            }

            else
            {
                this.Rate = interests;
            }

            return this.Rate;
        }

0
Piggov avatar Piggov 27 Точки

Хубаво е функциите да правят само едно нещо. Имаш метод CreateCharacter(), койо също добавя играча. Според мен е по-добре само да връщаш инстанция от този играч и в ExecuteCommand() да го добавиш. При AddItem() също.

Също е добре CreateCharacter() да не знае колко трябва да е Health-a и другите пропъртита на играчите, а те сами да си знаят. Можеш да си направиш константи с default-ните пропъртита и да ги слагаш директно в конструктура, без да приемаш параметри за съответните prop.

Ето ти моите Mage и CustomEngine

0
G.nikolovv avatar G.nikolovv 5 Точки

Имам едно питане. Не трябва ли пропъртито Balance да е абстрактно, тъй като Balance за Deposit може да е само положителен или 0(при откриването на такав акаунт баланса ти е 0. Депозираш си някви пари в банката и после си ги теглиш когато ти трябват, а банката ти дава лихва за времето за което парите ти стоят в нея) Също така метода CalculateInterest() мисля, че трябва да е virtual тъй като има различни условия за различните акаунти кога има и кога нямат лихва и трябва да се ovvertite в отделните класове. 

Или бъркам?

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