Loading...
KaterinaTaneva avatar KaterinaTaneva 7 Точки

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.

 

Тагове:
0
Programming Fundamentals
NikolayNeykov92 avatar NikolayNeykov92 617 Точки
Best Answer

Здравей, проблема идва от това че изчисляваш отстъпките на едно място, a отстъпката от 5% е допълнителна 

"Рибарите ползват допълнително 5% отстъпка ако са четен брой освен ако не е есен - тогава нямат допълнителна отстъпка."

т.е. ще трябва да я изчислиш отделно от основната отстъпкa. Ето кода ти с примерен начин за промяна на изчисляването на отстъпките https://pastebin.com/R7XiTe3Q (заградил съм в коментари промененият код).

0
31/01/2019 11:29:23
KaterinaTaneva avatar KaterinaTaneva 7 Точки

много благодаря!

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.