不一定能写出来的求素数问题详解编程语言

闲来没事,写一个经典的java题目,求素数。

以为很简单,其实不然。

public class SuShu { 
	public static void main(String[] args) { 
		int i, j; 
		for (i = 1; i <= 100; i++) { 
			for (j = 2; j <= i / 2; j++) { 
				if (i % j == 0) { 
					break; 
				} 
			} 
			if (j > i / 2) { 
				System.out.println("素数:" + i); 
			} 
		} 
	} 
} 

容易出错的地方:

1、循环j的时候 如果是j<i/2  会有不同结果

2、if(j>i/2)也应放在遍历 j 之外 所以要把 j 定义为全局变量

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/14262.html

(0)
上一篇 2021年7月19日 16:44
下一篇 2021年7月19日 16:44

相关推荐

发表回复

登录后才能评论