Последовательность Фибоначчи с использованием javascript, введите 1-е и 2-е числа. Затем мне нужно отобразить выходные данные на веб-странице. Не консоль

#javascript

#javascript

Вопрос:

Добрый день! Мне нужна помощь.

Я не могу получить правильный цикл для последовательности Фибоначчи. Мне нужно ввести первое и второе число, затем добавить их, чтобы получить третье число. Чтобы получить четвертое число, мне нужно добавить второе и третье. Проблема в том, что числа не складываются, 0 1 должно быть 1, но отображается 01.

Я надеюсь, что кто-нибудь мог бы мне помочь. Заранее спасибо!

 <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Fibonacci
    </title>
</head>
<body>

    <p>Enter first number: <input id="first" type="number"></p>
    <p>Enter second number: <input id="second" type="number"></p>
    <button onClick="fibonacci()">Submit</button>
    <p>Output: <p id="output"></p></p>

    <script type="text/javascript">
        function fibonacci(){
            num1 = document.getElementById('first').value;
            num2 = document.getElementById('second').value;
            next = 0;
            limit = 10;

            document.write(num1 ', ');
            document.write(num2 ', ');

            for(var i = 3; i <= limit; i  ){
                next = num1   num2;
                num1 = num2;
                num2 = next;

                document.write(next ', ');
            }
        }
    </script>
</body>
</html>
  

Комментарии:

1. 0 1 должно быть 1, но оно отображает 01 , не заглядывая в ваш код, это должна быть конкатенация строк, а не добавление чисел, поэтому вам нужно преобразовать строку в число перед добавлением

Ответ №1:

Проблема в том, что числа не складываются, 0 1 должно быть 1, но отображается 01.

причина в том, что 0 и 1 являются строкой, а не числом. итак, у вас есть 01

 next = Number(num1)   Number(num2) 

  

Комментарии:

1. Простая проблема, но сложная для меня. Хе-хе

Ответ №2:

Вам нужно преобразовать переменные в тип number, добавить знак перед num1 и num2

 for(var i = 3; i <= limit; i  ){
                next =  num1    num2;
                num1 = num2;
                num2 = next;

                document.write(next ', ');
            }  

Комментарии:

1. спасибо!, я носитель испанского языка, и у меня всегда одна и та же ошибка