Софтуерно Инженерство
Loading...
+ Нов въпрос
rado84 avatar rado84 1 Точки

Проблем с Fruit Shop

Условието:

Моето решение:

http://pastebin.com/QbUPrLnF
 

Проблемът: когато, въведа "banana, Tuesday, 3", показва 7.5, а не 7.50, както би трябвало и според плейсхолдъра. Ако въведа количество 3.4, тогава показва цената както трябва. Единственият начин 7.5 да стане 7.50 е да ползвам плейсхолдъра за валута - {0:C}, но пък така не знам дали Judge ще приеме задачата за решена. Та въпросът ми е как да го накарам да покаже 7.5 като 7.50?

 

0
Основи на програмирането 09/06/2016 16:41:19
naskodaskalov avatar naskodaskalov 32 Точки
Best Answer

Използвай с плейсхолдър {0:F2}, като 2-ката е броят символи след десетичната запетая.

1
rado84 avatar rado84 1 Точки

Мерси, така стана.

А плейсхолдърът, който бях сложил има ли някакви специфични случаи, в които се ползва? Опитвам се да разбера защо с онзи ПХ не става закръглянето.

-1
gabi.ivanova avatar gabi.ivanova 370 Точки

Защото # визуализира цифра, само ако я има. Ако в резултата на тази позиция липсва цифра, не отпечатва нищо.

1.234 -> {0:0.##} -> 1.23
1.2     -> {0:0.##} -> 1.2
1.2     -> {0:F2} -> 1.20
1.234 -> {0:F4} -> 1.2340

 

1
09/06/2016 16:48:50
gabi.ivanova avatar gabi.ivanova 370 Точки

Липсва ти деня Thursday, а имаш 2 пъти Tuesday и последният else -> else { Console.WriteLine("error"); } трябва да е извън проверката за почивните дни. 

1
09/06/2016 16:39:33
rado84 avatar rado84 1 Точки

Точно се чудех защо се дъни в Джъдж (83/100) и щях да питам ментора. :) Изобщо не бях забелязал, че имам два вторника.

-1
gabi.ivanova avatar gabi.ivanova 370 Точки

Тествах го с поправени дни и else извън предишното условие и дава 100

0
rado84 avatar rado84 1 Точки

Да, аз вече го тествах с поправките, които ти спомена и ми даде 100 точки, но реших да не пиша излишни постове, потвърждавайки, че дава 100. Иначе благодаря за ценната информация за плейсхолдърите. Това за # не го знаех и твоето обяснение си го пейстнах като note в една таблица, където съм събрал всички плейсхолдъри, които успях да намеря. :)

-1
09/06/2016 17:01:45
Kuncavia avatar Kuncavia 1 Точки

Здравейте,

Реших да потърся решението по малко по-различен начин и почти успях: http://pastebin.com/7mVdXRX7

За съжаление, обаче кода дава 2 грешки при orange. Всъщност в момента в който се позлва orange винаги дава грешка тъй като неговата стойност е 0.** Не мога да измисля как да я оправя, без да променям голяма част от кода...

Някакъв съвет?  

0
fbinnzhivko avatar fbinnzhivko 1582 Точки

oragne != orange

0
Kuncavia avatar Kuncavia 1 Точки

Майко мила... специално го проверих поне 3 пъти, дали не съм изял/разместил някоя буква... Май е време да си лягам. Благодаря за отговора. 

0