Java练习:不死神兔问题、打印5位数的回文数、猜测游戏统计次数
不死神兔问题
需求:
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
假如兔子都不死,问第二十个月的兔子对数为多少?
规律:
第一个月:1
第二个月:1
第三个月:2
第四个月:3
第五个月:5
...
规律:从第三个月开始,每个月的兔子对数是前两个月的兔子对数之和。
第一个月和第二个月的兔子对数是1
分析:
int[] arr = new int[20];
arr[0] = 1;
arr[1] = 1;
arr[2] = arr[0] + arr[1];
arr[3] = arr[1] + arr[2];
arr[4] = arr[2] + arr[3];
...
public class Test {
public static void main(String[] args) {
int[] arr = new int[20];
//第一个月和第二个月的兔子对数
arr[0] = 1;
arr[1] = 1;
for(int i = 2; i
java打印5位数中的所有回文数
什么是回文数?
举例:12321是回文数,个位与万位相同,十位与千位相同。
分析:
获取每一个5位数,然后得到它的个位,十位,千位,万位
假设x是一个5位数:
个位:x%10
十位:x/10%10
千位:x/10/10/10%10
万位:x/10/10/10/10%10
把满足条件的数据输出即可
public class Test {
public static void main(String[] args) {
for(int i = 10000; i<100000; i++) {
//获取每一个5位数,然后得到它的个位,十位,千位,万位
int ge = i % 10;
int shi = i / 10 % 10;
int qian = i / 10 / 10 / 10 % 10;
int wan = i / 10 / 10 / 10 / 10 % 10;
//把满足条件的数据输出即可
if((ge == wan) && (shi == qian)) {
System.out.println(i);
}
}
}
}
java实现猜测游戏,最后统计用户猜的次数
/*
* 实现猜测游戏, 游戏规则,随机生成一个1-100内的整数, 然后键盘录入一个数
如果这个数比我们随机的数大就提示用户"输入的数大了", 当然如果用户输入的数比我们
随机生成的数小的话就提示"输入的数小了",直到用户输对为止;统计第三题用户猜的次数
*/
import java.util.Random;
import java.util.Scanner;
public class RandomTest {
public static void main(String[] args) {
Random random = new Random();
int n = random.nextInt(100) + 1;//生成随机数
int sum = 0;//输入次数
Scanner sc = new Scanner(System.in);
while(true) {
System.out.print("请输入一个1-100内的整数:");
int m = sc.nextInt();
if(n == m) {
System.out.println("恭喜你猜对了!");
break;
}else if(n > m) {
System.out.println("你猜小了,继续加油哦!");
}else {
System.out.println("你猜大了,继续加油哦!");
}
sum++;
}
System.out.println("你一共猜了"+sum+"次!");
}
}