Софтуерно Инженерство
Loading...
Jordan_Dobrev12 avatar Jordan_Dobrev12 176 Точки

[Programming Basics] Квартално магазинче

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

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

В  judge ми дава 53 точки , а на конзолата работи до някъде. Пиша на конзолата 

Varna

peanuts

4

след , което ми дава "Not anvalid"

Като напиша :

coffe

sofia

3

Веднага ми връща релултата : 1.5

Моля , погледнете и кажете къде бъркам.

Ето и кода

-1
Основи на програмирането 15/06/2017 12:04:57
YavorSpassov avatar YavorSpassov 133 Точки

Можеш и да си пооптимизираш кода, за да не пишеш Console.WriteLine() на всеки ред, а само веднъж в края на програмата, когато приключат всички изчисления.

0
sis44o avatar sis44o 5 Точки

Здравейте!
Ето го моя код - 
https://pastebin.com/TfLz5CWQ

В judge ми дава 73 %.

Къде бъркам?

 

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

0
RujenaDimitrova avatar RujenaDimitrova 18 Точки

var product, трябва да ти е string product = Console.ReadLine().ToLower();

var town, трябва да ти е string town = Console.ReadLine().ToLower();

var quantity = int.Parse(Console.ReadLine());, трябва да ти е: double quantity = double.Parse(Console.ReadLine());

0
11/06/2017 00:02:38
sis44o avatar sis44o 5 Точки

Много ти благодаря!!!

0
maleksieva avatar maleksieva 0 Точки

Здравейте, бихте ли погледнали и моякод.Неразбираме защо конзолата не отпечатва цената "price"?

https://pastebin.com/4669tHWt

0
RujenaDimitrova avatar RujenaDimitrova 18 Точки
https://pastebin.com/PvrEGJAu
0
ivaylokostov87 avatar ivaylokostov87 14 Точки

Относно въпроса на maleksieva

До колкото виждам ти отпечата цената, но само с число. Предполагам, че това което очакваш е да видиш е:  Price: 1.50, например.

Записвайки  така : Console.WriteLine(price);    ,конзолата ти отпечатва само едно число , в някой случай без цифри след запетаята.

Според мен, за да ти изкара резултата, който посочих по-горе, принтирането трябва да изглежда така:

                 Console.WriteLine($"Price: {price :f2} ");
или

                Console.WriteLine("Price: {0 :f2}", price);

все едно и също е. Предполагам знаеш че   :f2   закръгля цифрите след запетаята до 2 :)

Можеш наистина да оптимизираш кода си, като променливата "price" я инициализираш най-отгоре при другите променливи, в проверките я позлваш без "var", т.е. "price = ...." и накрая на кода, след проверките слагаш едно принтиране, както по-горе :)

0
15/06/2017 03:56:11
maleksieva avatar maleksieva 0 Точки

Здравейте,

проблемът ми е, че крайната цена не севизуализира даже като цифра, не искам да се вижда Price: число, а само число, но то не севизуализира на конзолата? Не мога да си открия грешката....

 

0
ivaylokostov87 avatar ivaylokostov87 14 Точки

към maleksieva

При мен цената се принтира без проблем, но не разполагам с тестовите входове,0 които ти имаш и правя проби със стринговете, които си подала в проверките.

Единствената причина да не ти принтира резултата след натискане на ctrl + F5  във VisulaStudio според мен е - стринговете (един или повече) в проверките да не съвпадат с подадените на входа стойности, оттам да не влиза в if-овете и за това да не принтира резултат. За мен кода ти работи. Ако искаш, дай примерните входове, да тестваме с тях.

Тестово подавам: "sofia", "peanuts", 2

При мен на козолата излиза следното: 3.2

 

0
maleksieva avatar maleksieva 0 Точки

Промених кода - https://pastebin.com/rTUaz33Q, но сега judge ми дава 73% и следната грешка, при вход

sweets
Sofia
2.23:

Unhandled Exception: System.FormatException: Input string was not in a correct format.
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at _2.Program.Main(String[] args)

 

Тестовите примери са:

вход

изход

 

вход

изход

 

вход

изход

 

вход

изход

 

вход

изход

coffee

Varna

2

0.9

peanuts

Plovdiv

1

1.5

beer

Sofia

6

7.2

water

Plovdiv

3

2.1

sweets

Sofia

2.23

3.2335

0
Jeliozver avatar Jeliozver 356 Точки

Входа ти за количество трябва да се преобразува в double, a ne int. С тази малка корекция си работи на 100/100.

0
maleksieva avatar maleksieva 0 Точки

Благодаря :)

0
RalitsaZlateva avatar RalitsaZlateva 0 Точки

 

 

0
17/09/2016 22:35:50