**【程序12】
题目:判断101-200之间有多少个素数,并输出所有素数。**
package p012;
public class P012 {
public static void main(String[] arg){
int i,j;
int count = 0;
for(i = 101;i <= 200; i++){
for(j = 2;j <= Math.sqrt(i); j++){
if(i % j == 0)
break;
}
//退出循环有两个条件:1.i % j ==0;
//2.j >= Math.sqrt(i);
if(j >= Math.sqrt(i)){
System.out.print(i + " ");
count ++;
if(count % 5 == 0){
System.out.println();
}
}
}
System.out.println();
System.out.println("101-200中的素数有" + count + "个");
}
}
运行结果:
**【程序13】
题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。**
package p013;
public class P13 {
public static void main(String[] arg){
int i,j,k,b;
long s = 1;
int count = 0;
for(s = 100; s < 1000; s++){
i = (int)(s / 100);
j = (int)((s - i*100) / 10);
k = (int)(s % 10);
if(i*i*i + j*j*j + k*k*k == s){
System.out.print(s + " ");
count ++;
if(count % 5 == 0){
System.out.println();
}
}
}
}
}
运行结果:
【程序14】
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
package p14;
import java.util.Scanner;
public class P14 {
public static void main(String[] arg){
int n;
System.out.println("请输入一个正整数:");
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
while(n !=1){
for(int i = 2;i <= n; i++){
if((n % i == 0)){
System.out.print(i +" ");
n = n / i;
}
}
}
}
}
运行结果: