Я пытаюсь написать функцию, которая принимает целое число в качестве входных данных и определяет, сколько точек существует в пятиугольной форме вокруг центральной точки на N-й итерации.Мне удалось решить проблему, но я получал странный вывод из консоли Google Chrome при тестировании своего кода, и я не понимаю, почему.
Это был оригинальный код, который продолжал давать мне ошибку (ошибки, показанные в ссылке на изображение ниже)
function sides(num) {
total = 1;
for (let i = 2; i <= num; i++) {
top = 1;
sides = (i - 1) * 4;
bottom = i - 2;
total += top + sides + bottom;
}
return total;
}
Затем я изменил это на это, который работал нормально:
function pentagon(num) {
total = 1;
for (let i = 2; i <= num; i++) {
answer = (((i - 1) * 4) + 1) + (i - 2);
total += answer
}
return total;
}
Но я не понимаю, почему они разные.Все, что я сделал, это объединил математику верха, низа и сторон в одну строку, называемую ответом.Я не понимаю, почему первая функция сработала, а вторая - нет, и я также не понимаю вывод, который мне дала первая функция.Если бы кто-нибудь мог объяснить мне эти две вещи, я был бы очень признателен, спасибо.
![enter image description here](https://i.stack.imgur.com/lYncY.jpg)