我一直在寻找可以在单元格B1中输入的Google表格应用程序脚本功能,以检查单元格A1是否包含素数。到目前为止,我找不到任何东西。
我有Excel的VBA代码,但希望将我的电子表格移植到Google表格。
非常感谢任何帮助。
答案 0 :(得分:1)
您可以在https://en.wikipedia.org/wiki/Primality_test上获取代码并将其转换为应用脚本 - 添加一些额外的检查以查看n是否真的是有效数字。
function isprime(n) {
if(typeof n !== "number") return false;
if(Math.floor(n) !== n) return false;
if(n <= 1) return false;
if(n <= 3) return true;
if(n % 2 === 0 || n % 3 === 0) return false;
for(var i = 5; i*i <= n; i += 6) {
if(n % i === 0 || n % (i + 2) === 0) return false;
}
return true;
}