Конвентиране от отрицателно в положително число
Докато решавах изпитна задача 4 от цикли се сблъсках с този проблем накрая
https://softuni.bg/downloads/svn/programming-basics/IntermediateExams/2016-06-17/Problem04-Back-To-The-Past.zip
Потърсих в интернет и попаднах на този вариант с един минус пред сумата. Judge ми дава 100/100 затова смятам че е правилно
https://pastebin.com/AL0wcshV
А вие как решихте задачата ?
Да, но когато използвам функцията Math.abs няма как да влезе в else защото резултата ще е винаги положителен. Аз съм задал условие ако е под 0 да влезе в else. Иначе го мислeх като добавя още една променлива наречена разходи и с Math.abs(money - expenses), но както вече казах така няма да влезе в else.
В други случай го ползвам, но в този не е мн подходящо
function backToThePast(input) {
let years = 18;
let yearsInThePast = 1800;
let money = Number(input[0])
let yearsMax = Number(input[1])
for (var i = yearsInThePast; i <= yearsMax; i++, years++) {
if (i % 2 == 0) {
money -= 12000
} else if (i % 2 == 1) {
money -= 12000 + (years * 50)
}
}
if (money >= 0) {
console.log(`Yes! He will live a carefree life and will have ${(money).toFixed(2)} dollars left. `)
} else {
console.log(`He will need ${Math.abs(money).toFixed(2)} dollars to survive.`)
}
}
Мерси за информацията, не знаех че работи и само с една стойност. Досега го ползвах само при събиране и изваждане.