Loading...
DimiTVP avatar DimiTVP 54 Точки

[Judge] C# Basics - Problem 01 - Cake Tycoon - Не разбирам защо не ми приема задачата като вярна.

На изпита в неделя изгубих доста време да се чудя защо системата ни ми дава пълния брой точки, а само 75. Сега след като разгледах авторското решени и направих няколко теста, установих, че единствената разлика е в това, че съм написал Условната конструкция (if - else) в обърната версия на тази от авторското. Не разбирам защото това е грешка след като всички Output-и си излизат верни? В същото време мисля че в авторското решение не са спазени напълно Constraints, но си получава 100-те точни. Просто не разбирам грешката си?

Това ми е условната конструкция:

if (amountOfCaks > amountOfCakesWants)
        {
            decimal cakePrice = (trufflesCost / amountOfCakesWants) * 1.25M;
            Console.WriteLine("All products available, price of a cake: {0:F2}", cakePrice);
        }
        else
        {
            decimal flourForAllCakes = (amountOfCakesWants * kgOfFlourNeeded) - kgOfFlourAvailable;
            Console.WriteLine("Can make only {0} cakes, need {1:F2} kg more flour", Math.Floor(amountOfCaks), flourForAllCakes);
        }

 

Тагове:
1
Programming Basics
Radul avatar Radul 8 Точки

Здравей, ето го моето решение което дава 100 точки. Не е най-доброто ама върши работа ;)

мисля, че авторското решение не е много коректно има uint, double, ulong - по-добре е да има 1 тип данни за пари(decimal) като се работи или само decimal или само double.

Мод едит: Моля прочетете правилата на форума.

0
20/01/2016 14:38:48
DimiTVP avatar DimiTVP 54 Точки

Здравей, 
1. Нарушаваш 12-та точка от правилата на форума за код над 15 реда и сигурно ще ти направят забележка.
2. Моя код си работи и го направих да си изкарва 100-те точки. Просто не разбирам какъв е проблема със условната ми конструкция и защо системата не я приема в обърната и версия. А това е важно да се разбере защото това са едни 25 точки, който аз изгубих на изпита.

1
raging avatar raging 92 Точки

99.9% съм убеден, че трябва да е >= :)

1
DimiTVP avatar DimiTVP 54 Точки

Супер, разбрах, мерси

0
Alex0101 avatar Alex0101 374 Точки

Здравей,

 

Според мен проблемът идва от факта, че когато amountOfCaks=amountOfCakesWants при твоето решение влизааш в else, а в

авторското решение, при равествно влизаш отново в "All products available". Намали строгостта на проверката с => и би следвало да няма проблеми.

 

Поздрави

 

1
DimiTVP avatar DimiTVP 54 Точки

Супер, разбрах, мерси

1
a.beshovishki avatar a.beshovishki 79 Точки

amountOfCaks >= amountOfCakesWants

1
dakh93 avatar dakh93 53 Точки

Здравейте колеги,след като изреших всичките изпити от секцията Exams, се хванах да и с Old Exams,но там се изисква използването на по-специфични променливи, които не са споменати в Basics.Имам проблем с тази задача judge ми дава само 62/100.Ето го решението : http://pastebin.com/mERJ2KnT

0
krasi1105 avatar krasi1105 380 Точки

Промени truffleTotal на double и при принтирането на цената на торта добави ":f2" и ще даде 100/100.

При аритметични задачи ако не стават тестовете, вероятна грешка е да не са правилни типовете данни. Ако не стане от първия път пробвай да промениш всичко на decimal, така можеш да разбереш дали грешката е в алгоритъма или променливите.

0
MorganFreeFarm avatar MorganFreeFarm 51 Точки

Здравей, заради теб се върнах да пиша на C# : ))

Ето твоето решение малко променено, за да дава 100/100, но първите два теста не минават, помисли как да го оправиш,ако не се справиш, пиши, ще ти пратя пълно решение.

http://pastebin.com/cmJMupRK

0
26/02/2017 12:07:20
dakh93 avatar dakh93 53 Точки

Благодаря Краси,освен жокера, който ми даде се наложи да променя и типа при входа за трюфела от uint na ulong.Judge ми даде 100/100.

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