Java50道经典习题-程序2 输出素数】的更多相关文章

题目:判断101-200之间有多少个素数,并输出所有素数 分析:判断素数的方法:用一个数分别去除2到(这个数-1)的数,如果能被整除,则表明此数不是素数,反之是素数. public class Prog2 { public static void main(String[] args) { int count=0; System.out.println("100-200之间的素数有:"); for(int i=101;i<=200;i++){ Boolean flag=true;…
题目:求100之内的素数分析:素数即除了1和它本身以外不再有其他因数,最小的素数是2 判断一个数n是否是素数的方法:将n分别与2到(n+1)/2取余,若有一个值为0,则n就不为素数,反之为素数 public class Prog27 { public static void main(String[] args) { System.out.println("100以内的素数有:"); for(int n=2;n<=100;n++) { if(isPrime(n)) { Syste…
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中. import java.io.*; public class Prog50{ //定义学生模型 String[] number = new String[5]; String[] name = new String[5]; float[][] grade = new float[5][3]; float[] sum…
题目:给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字.分析: (1)利用随机函数产生[1,99999]之间的一个正整数n (2)将n转换成字符串s,调用字符串的length()方法求得位数 (3)创建一个StringBuffer类对象,将s传入,调用StringBuffer类的reverse()方法直接逆序输出结果 import java.util.*; public class Prog24 { public static void main(String[] arg…
题目:一个偶数总能表示为两个素数之和.分析:一个偶数可能会有不止一对两个素数之和的情况 例如:20=3+17 20=7+13 import java.util.Scanner; public class Prog44 { public static void main(String[] args) { System.out.print("请输入一个偶数:"); Scanner scan = new Scanner(System.in); int n = scan.nextInt();…
题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同.分析:分别创建两个数用于判断,一个数为12321,另一个数是12341 分别取出该数的"个十百千万"位进行判断 public class Prog25 { public static void main(String[] args) { int i=12321; int j=12341; palin(i); palin(j); } //判断是否为回文数 public static void pa…
题目:两个乒乓球队进行比赛,各出三人.甲队为a,b,c三人,乙队为x,y,z三人.已抽签决定比赛名单.有人向队员打听比赛的名单. a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单.分析:如果是人经过逻辑推理可以很快的得到结论.但是计算机处理此问题,不可能立即得出结论,而必须对每一种组合一一验证,找出符合条件的组合. 假设甲队a,b,c的对手分别是i,j,k i,j,k互不相等并且分别都是乙队x,y,z中的一人 利用三重for循环保证i,j,k互不相等 再将题设条件“a说他不和x比,…
题目:输出9*9口诀.分析:利用双重for循环进行输出,分行与列考虑,共9行9列,i控制行,j控制列. public class Prog16 { public static void main(String[] args) { for(int i=1;i<10;i++) { for(int j=1;j<i+1;j++) { System.out.print(j+"*"+i+"="+(j*i)+"\t");//使用转义字符使得输出更加…
题目:输入3个数a,b,c,按大小顺序输出. import java.util.Scanner; public class Prog34 { public static void main(String[] args) { //键盘录入三个数 Scanner scan=new Scanner(System.in); System.out.println("请输入3个数:"); int a=scan.nextInt(); int b=scan.nextInt(); int c=scan.…
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 分析:假如:1月1日有1对兔子,根据题目“从出生后第3个月起每个月都生一对兔子”即3月1日这对兔子产子一对由此可推出一对兔子从出生到产子的时间为每两个月一次,从第二对兔子开始,后续兔子的产子时间相同由此可得出以下的兔子数规律    兔子的规律为1,1,2,3,5,8,13,21.... 从第3月开始,每月兔子的总数等于上两月兔子总数之和 总数量  …