题目:求1+2!+3!+...+20!的和
public class exam {
public static void main(String[] args) {
long sum=0,f=1;
for(int i=1;i<=20;i++){
f=f*i;
sum=sum+f;
System.out.print(i+"!");
if(i!=20)
System.out.print("+");
}
System.out.println("="+sum);
}
}
题目:利用递归方法求5!。
class digui{
public int x(int n){
if(n==1)
return 1;
else
return n*x(n-1);
}
}
public class exam {
public static void main(String[] args) {
digui a = new digui();
System.out.println("5!="+a.x(5));
}
}
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
public class exam {
public static void main(String[] args) {
int age=10,d=2,n=5;
System.out.println("第五个人的年龄是:"+(age+(n-1)*d));
}
}
从第二个人开始 年龄都是相差2 是一个等差数列 直接用 等差公式就行 an=a1+(n-1)*d;
题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
import java.util.*;
public class exam {
public static void main(String[] args) {
int n=0;
Scanner input =new Scanner(System.in);
System.out.println("请输入一个不多于于5位的正整数:");
long number=input.nextLong();
long t;
System.out.println("此数的逆序为:");
while(number>0){
t=number%10;
System.out.print(t);
number/=10;
n++;
}
System.out.println("\n它是"+n+"位正整数");
}
}
也可以用字符串来做
import java.util.*;
public class exam {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入一个正整数:");
long a = s.nextLong();
String ss = Long.toString(a);
char[] ch = ss.toCharArray();
int j=ch.length;
System.out.println(a + "是一个"+ j +"位数。");
System.out.print("按逆序输出是:");
for(int i=j-1; i>=0; i--) {
System.out.print(ch[i]);
}
}
}
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
import java.util.*;
public class exam {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入一个正整数:");
long a = s.nextLong();
String ss = Long.toString(a);
char[] ch = ss.toCharArray();
if(ch[0]==ch[4]&&ch[1]==ch[3])
System.out.println("它是回文");
else
System.out.println("它不是回文");
}
}