写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。

这博客是对自己学习的一点点总结及记录,如果您对 Java算法 感兴趣,可以关注我的动态,我们一起学习。

用知识改变命运,让我们的家人过上更好的生活

相关文章

点此查看 【算法系列】 博客文章


求101到200之间的素数,输出并统计个数

首先弄清楚什么是素数?
素数是只能被1或本身整除的数,如:3,5,7,11,13…

判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

代码:

/**
 * 求101到200之间的素数
 * 
 */
public class PrimeNumber {
    public static void main(String[] args) {
        // 素数的个数
        int sum = 0;
        for (int i = 101; i <= 200; i++) {
            // 如果是素数,输出,sum++
            if (isPrimeNumber(i)) {
                System.out.print(i + " ");
                sum++;
                // 5个位一组,换行
                if (sum % 5 == 0) {
                    System.out.println();
                }
            }
        }
        System.out.println();
        System.out.println("素数的个数有: " + sum + "个");
    }

    /**
     * 判断是否是素数
     *
     * @param i
     * @return
     */
    private static boolean isPrimeNumber(int i) {
        for (int j = 2; j <= Math.sqrt(i); j++) {
            if (i % j == 0) {
                return false;
            }
        }
        return true;
    }
}

代码执行结果:

101 103 107 109 113 
127 131 137 139 149 
151 157 163 167 173 
179 181 191 193 197 
199 
素数的个数有: 21

本文转载:CSDN博客