Вечный вопрос


#1

Объясните пож-та почему код не работает?

var initialAmount = 50000;
var duration = 12;
var simplePercent = 7;
var complexPercent = 6;
var recommendedType;
var finalAmount;

var simpleDeposit = function(initialAmount, duration, simplePercent, complexPercent) {

var totalPercent=(simplePercent/12*duration)*initialAmount/100;
var easy = initialAmount + totalPercent;

for ( var i = 0; i <= periodDeposit ; i++) {
var currentdeposit = initialAmount;
percente = (complexPercent*0.01/12)*currentdeposit;
initialAmount += percente;
}
if (currentdeposit>easy) {
finalAmount =currentdeposit; }
}


#2

А где условие выбора recommendedType?


#3

Не все скопировалось ,вот :
var initialAmount = 50000;
var duration = 12;
var simplePercent = 7;
var complexPercent = 6;
var recommendedType;
var finalAmount;
var recomended;

var simpleDeposit = function(initialAmount, duration, simplePercent, complexPercent) {

var totalPercent=(simplePercent/12*duration)*initialAmount/100;
var easy = initialAmount + totalPercent;

for ( var i = 0; i <= periodDeposit ; i++) {
var currentdeposit = initialAmount;
percente = (complexPercent*0.01/12)*currentdeposit;
initialAmount += percente;
}
if (currentdeposit>easy) {
return finalAmount =currentdeposit, recommendedType = ‘complex’;
} else {
return finalAmount = easy,recommendedType = ‘simple’;
}
}


#4

а какая ошибка выводится?

я тут как минимум вижу ReferenceError: periodDeposit is not defined


#5

“Переменная recommendedType не определена.”
“Переменная finalAmount не определена.”


#6

хм, странно.

а periodDeposit заменили на duration, все равно такие же ошибки?


#7

Да. Сейчас я еще обнаружила, что на мои кавычки в слове ‘complex’ и ‘simple’ запуск (не проверка) ругается, говорит что это синтаксическая ошибка… Попробовала их удалить - всеравно - переменные не определены…


#8

кавычки да, тоже заметил, что не те кавычки стоят, но подумал что здесь движок форума их подменил

они здесь в любом случае нужны, т.к. возвращается строка

Попробуйте присвоить в момент определения переменной finalAmount = 0, а recommendedType = ‘’;


#9

Сделала. Теперь другая ошибка -
Ваше значение recommendedType равное “” не совпадает с ожидаемым значением “simple”.
Ваше значение finalAmount равное 0 не совпадает с ожидаемым значением 10525.


#10

В общем, я так понял их надо объявлять внутри функции и все заработает:)
Если не получится, будем дальше думать)