文章详情页
java - 求一个范围内的素数的问题。
浏览:223日期:2024-03-23 15:23:22
问题描述
package text;
import java.util.Scanner;
public class test {
public static void main(String[] args) { Scanner in = new Scanner(System.in); int x; x = in.nextInt(); boolean isprime = true; for (int i = 2; i <= x; i++) { for(int j = 2; j < i; j++) { if(i % j == 0) { isprime = false; break; } } if(isprime) System.out.print(i + ' '); isprime = true; //这里为什么一定要重新赋值true?不赋值为什么没有运行结果? } } }
问题解答
回答1:isprime 变量你可以看成是一个标志,程序中是根据isprime的最后取值来决定是否打印i.至于你问的为什么重新赋值,这是为了下一轮的循环做准备呀。倘若不初始化isprime的值为true,之后即便i为素数也无法打印i。
标签:
java
上一条:java - 这种情况怎么设计class? 有什么设计模式吗下一条:java - C++ error C2678: 二进制“<<”: 没有找到接受“const std::ostream”类型的左操作数的运算符
相关文章:
1. mysql优化 - mysql innodb表锁问题2. mysql - 千万级数据表如何有效的变更字段?3. sqlserver - mysql如何查询多列重复的数据个数?4. php - SQL 一条语句查询出文章和对应的文章标签5. css3 - 微信前端页面遇到的transition过渡动画的bug6. python - 有什么好的可以收集货币基金的资源?7. mysql多表查询8. 如何解决tp6在zend中无代码提示9. angular.js使用$resource服务把数据存入mongodb的问题。10. 请问一下,图片上传成功,但是后台对应文件夹里面却没有图片,这是什么原因?(已部署到服务器)
排行榜

网公网安备