fishing boat - Javascript
здравейте,
условието на задачата:
Тони и приятели много обичали да ходят за риба, те са толкова запалени по риболова, че решават да отидат на риболов с кораб. Цената за наема на кораба зависи от сезона и броя рибари.
Цената зависи от сезона:
- Цената за наем на кораба през пролетта е 3000 лв.
- Цената за наем на кораба през лятото и есента е 4200 лв.
- Цената за наем на кораба през зимата е 2600 лв.
В зависимост от броя си групата ползва отстъпка:
- Ако групата е до 6 човека включително – отстъпка от 10%.
- Ако групата е от 7 до 11 човека включително – отстъпка от 15%.
- Ако групата е от 12 нагоре – отстъпка от 25%.
Рибарите ползват допълнително 5% отстъпка ако са четен брой освен ако не е есен - тогава нямат допълнителна отстъпка.
Напишете програма, която да пресмята дали рибарите ще съберат достатъчно пари.
кодът ми е :
function boat(input){
let budget = Number(input.shift());
let season = input.shift();
let fisherCount = Number(input.shift());
let discount = 0;
let finalPrice = 0;
switch(season){
case 'Spring': boatPrice = 3000;
break;
case 'Summer': boatPrice = 4200;
break;
case 'Autumn': boatPrice = 4200;
break;
case 'Winter': boatPrice= 2600;
break;
default: '';
}
if(fisherCount <= 6){
discount = 0.10;
}else if(fisherCount <= 11){
discount = 0.15;
}else {
discount = 0.25;
}
if(fisherCount % 2 == 0 && season !== 'Autumn'){
discount = discount + 0.05;
}
finalPrice = boatPrice - (boatPrice * discount);
if(budget >= finalPrice){
console.log(`Yes! You have ${(budget - finalPrice).toFixed(2)} leva left.`)
}else{
console.log(`Not enough money! You need ${Math.abs(budget - finalPrice).toFixed(2)} leva.`)
}}
boat(['3000', 'Summer', '11']);
boat(['3600', 'Autumn', '6']);
boat(['2000', 'Winter', '13']);
Judge ми оценява кода на 60/100.
много благодаря!