作业帮 > 综合 > 作业

excel求素数编写函数"素数(某数)",当某数为素数时,返回"是",否则返回"否".利用该函数求1680253到168

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/10 04:47:12
excel求素数
编写函数"素数(某数)",当某数为素数时,返回"是",否则返回"否".利用该函数求1680253到1681253这些整数中哪些是素数
需要编个vba.
思路:x的平方根+1为测试数上限,2为测试数下限.x除以测试数,逐个试,如果出现余数为0的,则x是合数,否则x为素数.
代码要帮忙写吗?

不用vba,可以用公式:
=IF(AND(A2>4,INT(A2)=A2,SUMPRODUCT((MOD(A2,ROW(INDIRECT("2:"& INT(SQRT(A2)))))=0)*1)=0)+(A2=2)+(A2=3),"质数","非质数")

结果74个质数:
1680253 1680269 1680271 1680277 1680313 1680317 1680319 1680323 1680359 1680361 1680373 1680377 1680401 1680407 1680421 1680431 1680439 1680457 1680461 1680491
1680509 1680527 1680529 1680551 1680557 1680583 1680589 1680593 1680617 1680643 1680647 1680659 1680689 1680697 1680703 1680709 1680743 1680761 1680779 1680787
1680793 1680803 1680821 1680823 1680839 1680859 1680871 1680881 1680893 1680901 1680907 1680919 1680929 1680961 1680967 1680979 1680983 1681003 1681007 1681027
1681033 1681061 1681073 1681091 1681103 1681129 1681151 1681157 1681187 1681193 1681201 1681219 1681241 1681247