JSFiddle - React, Tailwind, and code Playground

by samselikoff

HTML

<!doctype html>
<html>
<head>

</head>
<body>

    <input id="poopify" type="button" onclick="poopify()" value="Poopify">
    
<p id="answer">A normal paragraph.</p>
</body>
</html>

JavaScript

//The prime factors of 13195 are 5, 7, 13 and 29.
//What is the largest prime factor of the number 600851475143?

function largestPrimeFactor(number) {
    
    var originalNumber = number;
    var primeFactors = new Array();
    
    largest1:
    //i is a prime factor of 'number' if it (a) divides 'number' and (b) isn't divisible by any smaller prime factors
    for (i=2; i<=number; i++) {
        
        //check if i divides 'number'
        if (number % i != 0) {
            continue; //i does not divide 'number'. continue
        };
        
        //i dividies number. check if i is prime 
        
        //if first prime factor, check if prime manually
        if (primeFactors.length == 0) {
            if (i==2) {
                
            } else {
                for (j=2;j<i;j++) {
                    if (i % j == 0) {
                        continue largest1; //i is composite. move to next i.
                    }
                }
            }
        } else {
        
        //if not first prime factor, can just check if i is divisible by any smaller prime factors
            for (j=0; j<primeFactors.length; j++) {
                if (i % primeFactors[j] == 0) {
                    continue largest1; //i is composite. move to next i.
                };
            }
        };
        //i is a prime factor. add it to array.
        primeFactors.push(i);
        
        //divide the number by the prime factor as long as the remainder is 0
        do {
            number = number / i;
        } while (number % i == 0);
        
    }
    
    //var myElement = document.getElementById("answer");
    if (primeFactors.length == 1) {
    return "The prime factor of " + originalNumber + " is " + primeFactors.join(", ") + ".";
    } else {
    return "The prime factors of " + originalNumber + " are: " + primeFactors.join(", ") + ".";
    }


};

//alert(largestPrimeFactor(123));
function poopify() {
   ...