题目一:求数字阶乘 (接收用户输入的正数,计算该数字的阶乘结果 其中:0的阶乘结果是1。)
package exersises;
import java.util.Scanner;
public class Demo11 {
public static void main(String[] args) {
System.out.println("请输入一个整数:");
int number = (new Scanner(System.in)).nextInt();
int result = getMulti(number); //调用函数,求取输入整数的阶乘
System.out.printf("您输入的数为%d,%d!=%d", number, number, result); //打印结果
}
//定义递归函数,求一个数的阶乘
public static int getMulti(int n) {
if (n == 1 ||n==0) {
return 1;
} else {
return n * getMulti(n - 1);
}
}
}
题目二:多次生成0~1之间的随机小数,并打印第一次出现大于0.999 时的次数与生成的随机数
package exersises;
public class Demo12 {
public static void main(String[] args) {
int i = 0; //定义一个变量用于计数
while (true){
double decimal = Math.random(); //生成0~1之间的随机小数
i++; //计数器加一
// 出现大于0.999的数时可退出循环,并打印结果
if (decimal > 0.999){
System.out.printf("在第%d次出现了大于0.999的数%f", i, decimal);
break;
}
}
}
}
题目三:打印100以内除了尾数为3,5,7的所有整数
package exersises;
public class Demo13 {
public static void main(String[] args) {
//ArrayList list = new ArrayList<Integer>();
for (int i = 0; i < 100 ; i++) {
int endNumber = getEnd(i); //调用函数,求尾数
//输出尾数不为3、5、7的数
if (endNumber != 3 && endNumber != 5 && endNumber != 7){
System.out.println(i);
}
}
}
//定义函数,用于求0~100之间的整数的尾数
public static int getEnd(int n){
if (n >= 10){
return n % (n / 10 * 10);
}
return n;
}
}