蓝蓝计算机考研算法-day01判断素数和计算完全数

97 阅读1分钟

Day01 2023/02/27

题目1

从键盘输入一个整数,判断该数是否为素数(质数)。素数是指再大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

思路

for循环判断从2开始的数字是否能被2~num的数字整除(num % i == 0),若能则返回false,不能返回true。

java实现

image.png

结果

image.png

题目2

求解从2到20000的所有完全数,完全数是指它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。 例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。

思路

暴力算法:for循环求所有真因子的和(num % i == 0 , tureFactorSum += i),再与num进行对比。

java实现

image.png

结果

image.png