Java基础练习题
import java.util.Random;
public class MainHome {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 1、有 10 亿元钱每天花一半,可以花多少天?(int)
int num = 1000000000;
int day = 1;
while (num >= 1) {
num = num / 2;
day++;
}
System.out.println("10亿元可以花的天数+" + day);
// 2、随机产生 20 个10到100之间的正整数,输出这些数以及他们中的最大数
Random ran = new Random();
int max = 0;
for (int i = 0; i < 20; i++) {
int p = ran.nextInt(100 - 10 + 1) + 10;
System.out.println(p + "");
if (p > max) {
max = p;
}
}
System.out.println(" ");
System.out.println(max);
// 3、编程将所有“水仙花数”打印出来,并打印其总个数。“水仙花数”
// 是一个各个位立方之和等于该整数的三位数
int j = 0;
for (int a = 1; a < 10; a++) {
for (int b = 0; b < 10; b++) {
for (int c = 0; b < 10; c++) {
if (a * a * a + b * b * b + c * c * c == a * 100 + b * 10 + c) {
System.out.println("水仙花数为:" + a + b + c);
j++;
}
}
}
}
System.out.println("水仙花数的个数为:" + j);
// 4、求n个随机数里的最小值
Random rans = new Random();
int min = 100;
int n = 5;
for (int p = 0; p < n; p++) {
int v = rans.nextInt(100 - 10 + 1) + 10;
System.out.println(v + "");
if (v < min) {
min = v;
}
}
System.out.println("n个随机数的最小值为:" + min);
// 5、 已知 abc+cba =1333,其中 a,b,c 均为一位数,编程求出满足条件的 a,b,c
// 所有组合
for (int a = 1; a < 10; a++) {
for (int b = 0; b < 10; b++) {
for (int c = 0; c < 10; c++) {
if (a * 100 + b * 10 * 2 + c + c * 100 + a == 1333) {
System.out.println("满足该数的组合为:" + a + b + c);
}
}
}
}
}
}