Главный фактор и JavaScript

Я застрял с кодом JavaScript, который я использую для решения проблемы, которая гласит:

Основными факторами 13195 являются 5, 7, 13 и 29. Какой самый большой главный фактор числа 600851475143?

(это не домашняя работа, это онлайн кодирование / математическая задача)

Итак, я придумал это решение:

<html>
    <head>
    <script type="text/javascript">

        // This function checks whether it's possible to divide the prime number
        function al(n){
            // k = 13195 is the number that I have to find the prime factor for
            var k = 13195;
            if (k%n) {
                return;
            }
            else {
                document.write(n + '   ');
            }
        }
    </script>
    </head>
    <body>
    <script type="text/javascript">

        //a and b are just for counting from the number n to 2 to find the prime numbers
        var a = 2;
        for (var n = 13194 ; n>a ; n--) {
            var b = 2;
            //if the found number is divisible, we skip it
            while(b<n) {
                if (n % b == 0) {
                    break;
                }
                else if (b = n - 1){
                    al(n);
                }
                b++;
            }
        }
    </script>
    </body>
</html>

Теперь к проблеме: это выводит эти числа: «2639 1885 1015 455 377 203 145 91 65 35 29 13 7 5». Это не простые числа. Я посмотрел на числа и обнаружил, что число 13195, деленное на 5 (последнее число), дает первое число; 2639; 13195, деленное на 7, дает 1885; и т.п.

Что именно я делаю не так?

Ответы на вопрос(2)

Ваш ответ на вопрос