Професионална програма
Loading...
+ Нов въпрос
yanchev.ilian avatar yanchev.ilian 7 Точки

06. Store Boxes- Objects and Classes Lab - C# Fundamentals

Здравейте,

Бихте ли ми помогнали със задачата.

Предварително благодаря!

Това е кода ми: https://pastebin.com/vh8ZQDuP

Така гърмят zero тестовете: https://ibb.co/grw3bDh

Ето го условието:

Define a class Item, which contains these properties: Name and Price.

Define a class Box, which contains these properties: Serial Number, Item, Item Quantity and Price for a Box.

Until you receive "end", you will be receiving data in the following format: {Serial Number} {Item Name} {Item Quantity} {itemPrice}

The Price of one box has to be calculated: itemQuantity * itemPrice.

Print all the boxes, ordered descending by price for a box, in the following format:

{boxSerialNumber}

-- {boxItemName} – ${boxItemPrice}: {boxItemQuantity}

-- ${boxPrice}

The price should be formatted to the 2nd digit after the decimal separator.

Examples

Input

Output

19861519 Dove 15 2.50

86757035 Butter 7 3.20

39393891 Orbit 16 1.60

37741865 Samsung 10 1000

end

37741865

-- Samsung - $1000.00: 10

-- $10000.00

19861519

-- Dove - $2.50: 15

-- $37.50

39393891

-- Orbit - $1.60: 16

-- $25.60

86757035

-- Butter - $3.20: 7

-- $22.40

48760766 Alcatel 8 100

97617240 Intel 2 500

83840873 Milka 20 2.75

35056501 SneakersXL 15 1.50

end

97617240

-- Intel - $500.00: 2

-- $1000.00

48760766

-- Alcatel - $100.00: 8

-- $800.00

83840873

-- Milka - $2.75: 20

-- $55.00

35056501

-- SneakersXL - $1.50: 15

-- $22.50

Тагове:
1
C# Fundamentals 27/02/2021 00:15:31
krum_43 avatar krum_43 488 Точки

Лонкът към кода ти не води до решението ти.

Може би си задал кратък срок на валидност.

0
yanchev.ilian avatar yanchev.ilian 7 Точки

Поправил съм го, вече е видим!

1
Elena123456 avatar Elena123456 192 Точки

Здравейте, мисля, че видях къде е проблема.

В началото още в инпута е дадена цената за един item-   double itemPrice = double.Parse(inputArr[3]);  Впоследствие вие не създавате въпросния item по зададеното в инпута име и цена, а изчислявате за него отделна цена- Price = itemPrice * itemQuantity , но това е цената на целия Box- The Price of one box has to be calculated: itemQuantity * itemPrice.

Следователно когато по дадения клас вие създавате един item, трябва да си включите първоначалната цена, която получавате наготово в инпута- ред 20. И вече когато създавате Box вие ще преизчислите цената на целия Box, като използвате количеството на itemes умножено по тяхната цена. Точно това сте и задали в класа на Box-   public double PriceForABox { get; set; }

Ще Ви бъде много лесно да създавате обекти по класа item или Box, ако първоначално си създадете констуктор в самите класове. (ctor + tab tab и автоматично ще се създаде, като ще му подадете съответните елементи, които отговарят на пропъртитата). И вече в мейн много лесно ще създадете самите обекти, като вече е лесно да се ориентирате:

var newItem= new item( itemName, itemPrice); // създаваме си нов item, както сме го дефинирали в класа и конструктора му

var priceForABox= itemQuantity*itemPrice; // намираме цената на box

var newBox= new Box(serialNumber, newItem, itemQuantity, priceForABox); // създаваме си нов box

И този новия box ще го добавим вече в листа, който ще ни пази всичките boxes.

Един съвет- добре е винаги, когато държим цени да използваме decimal.

Не съм много уверена за въпросната задача, но тествайте я.

Поздрави!

 

0
27/02/2021 23:20:41