Project Euler Q3 JavaScript

Project Euler Q3 JavaScript

本文关键字:JavaScript Q3 Euler Project      更新时间:2023-09-26

我的代码如下:

function is_prime(num) {
    for(i=2; i < num; i++) {
        if(num % i === 0) {
            return false;
        } else {
            return true;
        }
    }

};
var total = 600851475143,
    b = 2,
    storemax = 0;
function max_prime(total) {
    if(total % b === 0) {
        storemax = total / b;
        if (is_prime(storemax) = true) {
            console.log(storemax);
        } else {
            b += 1;
            max_prime(total);
        }
    }
};

我做错了什么?我已经被这件事困扰了一段时间。。。尝试做odin项目的web编程课程。

max_prime函数中发现问题

if (is_prime(storemax) = true) {

在这里,当你应该使用比较运算符时,你使用的是赋值运算符

将其更改为

if (is_prime(storemax === true) {

这将检查is_prime(storemax)的值是否等于true

此外,JavaScript函数遵循lowerCamelCase约定。将is_prime更改为isPrime,将max_prime更改为maxPrime