Изпитна задача магазин за играчки - от темата Условни конструкции JavaScript
Примерна изпитна задача
9. Магазин за детски играчки
Петя има магазин за детски играчки. Тя получава голяма поръчка, която трябва да изпълни. С парите, които
ще спечели иска да отиде на екскурзия. Да се напише програма, която пресмята печалбата от поръчката.
Цени на играчките:
Пъзел - 2.60 лв.
Говореща кукла - 3 лв.
Плюшено мече - 4.10 лв.
Миньон - 8.20 лв.
Камионче - 2 лв.
Ако поръчаните играчки са 50 или повече магазинът прави отстъпка 25% от общата цена. От спечелените
пари Петя трябва да даде 10% за наема на магазина. Да се пресметне, дали парите ще ѝ стигнат да отиде на
екскурзия.
Вход
От конзолата се четат 6 реда:
1. Цена на екскурзията - реално число в интервала [1.00 … 10000.00]
2. Брой пъзели - цяло число в интервала [0… 1000]
3. Брой говорещи кукли - цяло число в интервала [0 … 1000]
4. Брой плюшени мечета - цяло число в интервала [0 … 1000]
5. Брой миньони - цяло число в интервала [0 … 1000]
6. Брой камиончета - цяло число в интервала [0 … 1000]
Изход
На конзолата се отпечатва:
Ако парите са достатъчни се отпечатва:
o "Yes! {оставащите пари} lv left."
Ако парите НЕ са достатъчни се отпечатва:
o "Not enough money! {недостигащите пари} lv needed."
Резултатът трябва да се форматира до втория знак след десетичната запетая.
Пробвах следното решение в Judge, и ми дава 90т от 100 и се чудя къде е грешката:
function solve (input)
{
let tripprice= Number(input.shift());
let puzzles= Number(input.shift());
let dolls= Number(input.shift());
let teddyBears= Number(input.shift());
let minions= Number(input.shift());
let trucks= Number(input.shift());
let totalpricetoys= (puzzles*2.60 + dolls*3 + teddyBears*4.10 + minions*8.20 + trucks*2);
let totalToys= (puzzles+dolls+teddyBears+minions+trucks);
let totalincome= 0;
if ( totalToys >=50 ){
totalpricetoys = (totalpricetoys - totalpricetoys * 0.25);
totalincome = (totalpricetoys*0.90);
} else {
totalpricetoys = totalpricetoys;
totalincome = (totalpricetoys*0.90);
}
if ( totalincome > tripprice ){
console.log (`Yes! ${(Math.abs(totalincome - tripprice)).toFixed(2)} lv left.` );
}
else if (tripprice > totalincome) {
console.log ( `Not enough money! ${(Math.abs(tripprice - totalincome )).toFixed(2)} lv needed.`);
}
}
solve ([
40.8,
20,
25,
30,
50,
10,
]);
Благодаря!