Toy Shop
Здравейте колеги,
Моля Ви да ми кажете как да дореша задачата,за да ми се получи и недостига.
Благодаря Ви предварително.
Това е кода ми: https://pastebin.com/ZhDghiHL
Това е условието.
Петя има магазин за детски играчки. Тя получава голяма поръчка, която трябва да изпълни. С парите, които ще спечели иска да отиде на екскурзия. Да се напише програма, която пресмята печалбата от поръчката.
Цени на играчките:
- Пъзел - 2.60 лв.
- Говореща кукла - 3 лв.
- Плюшено мече - 4.10 лв.
- Миньон - 8.20 лв.
- Камионче - 2 лв.
Ако поръчаните играчки са 50 или повече магазинът прави отстъпка 25% от общата цена. От спечелените пари Петя трябва да даде 10% за наема на магазина. Да се пресметне дали парите ще ѝ стигнат да отиде на екскурзия.
Вход
От конзолата се четат 6 реда:
- Цена на екскурзията - реално число в интервала [1.00 … 10000.00]
- Брой пъзели - цяло число в интервала [0… 1000]
- Брой говорещи кукли - цяло число в интервала [0 … 1000]
- Брой плюшени мечета - цяло число в интервала [0 … 1000]
- Брой миньони - цяло число в интервала [0 … 1000]
- Брой камиончета - цяло число в интервала [0 … 1000]
Изход
На конзолата се отпечатва:
- Ако парите са достатъчни се отпечатва:
- "Yes! {оставащите пари} lv left."
- Ако парите НЕ са достатъчни се отпечатва:
- "Not enough money! {недостигащите пари} lv needed."
Резултатът трябва да се форматира до втория знак след десетичната запетая.
Примерен вход и изход
Вход |
Изход |
Обяснения |
40.8 20 25 30 50 10 |
Yes! 418.20 lv left. |
Сума: 20 * 2.60 + 25 * 3 + 30 * 4.10 + 50 * 8.20 + 10 * 2 = 680 лв. Брой на играчките: 20 + 25 + 30 + 50 + 10 = 135 135 > 50 => 25% отстъпка; 25% от 680 = 170 лв. отстъпка Крайна цена: 680 – 170 = 510 лв. Наем: 10% от 510 лв. = 51 лв. Печалба: 510 – 51 = 459 лв. 459 > 40.8 => 459 – 40.8 = 418.20 лв. остават |
Вход |
Изход |
Обяснения |
320 8 2 5 5 1 |
Not enough money! 238.73 lv needed. |
Сума: 90.3 лв. Брой на играчките: 21 21 < 50 => няма отстъпка Наем: 10% от 90.3 = 9.03 лв. Печалба: 90.3 – 9.03 = 81.27 лв. 81.27 < 320 => 320 – 81.27 = 238.73 лв. не достигат |
Аз уча C# , но по логика, според мен трябва тези променливи:
double krainacena = suma - otstapka;
double naem = 0.10*krainacena;
double pechalba = krainacena - naem;
double ostavashtipari = pechalba - cenanaekskurzia;
double nedostig = cenanaekskurzia - pechalba;
да ги изнесеш след първата проверка за броя на играчките.
Също ...
double otstapka = 0.25*suma; // което е горе го дефинираи като нула.
Която нула ще се промени в проверката за боря на играчките, там трябва да дефинираш само ОТСЪПКАТА !
което значи, че в else тя трябва да е нула.