<1>题目介绍1
编写一个猜数字游戏,数字范围0~100之间。用户输入,程序提示用户数字猜大了还是猜小了,直到用户才对数字程序才退出
<2>思路分析
用户输入的数据和随机值做对比,如果输入的数据大于随机值就提示猜大了,相反则提示猜小了,程序只有当用户猜对了才退出循环
<3>代码展示
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
Random random = new Random();
int Guessnum = random.nextInt(100);
while(true){
System.out.println("请输入数字");
int num = scan.nextInt();
if(num>Guessnum){
System.out.println("大了");
}else if(num<Guessnum){
System.out.println("小了");
}else{
System.out.println("恭喜你猜对了");
}
}
}
<4>结果展示
请输入数字
1
小了
请输入数字
100
大了
请输入数字
50
大了
请输入数字
30
恭喜你猜对了
<1>题目介绍2
求出0~100000之间的所有“水仙花数”并输出,水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,如:153=1 ^ 3+5 ^ 3+3 ^ 3,则153是一个“水仙花数”
<2>思路分析
- 确定数字有几位
- 让数字的每一个数求n(位数)次方,然后相加
- 比较数字与最终合数是否相等,相等则输出
<3>代码展示
public static void main(String[] args) {
for(int i = 0;i<1000000;i++){
int tmp = i;
int count = 0;
while(tmp!=0){
count++;
tmp/=10;
}
tmp = i;
int sum = 0;
while(tmp!=0){
sum+=Math.pow((tmp%10),count);
tmp/=10;
}
if(sum==i){
System.out.println(i);
}
}
}
<4>结果展示