Java习题
Posted Oracle&Java
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java习题相关的知识,希望对你有一定的参考价值。
-
另一种阶乘问题
描述
-
大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5.现在我们引入一种新的阶乘概念,将原来的每个数相乘变为i不大于n的所有奇数相乘例如:5!!=1*3*5.现在明白现在这种阶乘的意思了吧!
现在你的任务是求出1!!+2!!......+n!!的正确值(n<=20)
-
输入
第一行输入一个a(a<=20),代表共有a组测试数据
接下来a行各行输入一个n.输出
各行输出结果一个整数R表示1!!+2!!......+n!!的正确值
-
import java.util.Scanner; public class *{ public static void main(String[] args){ System.out.println("请输入一个整数"); Scanner scanner=new Scanner(System.in);//控制台输入,需要导入Scanner类,实例化 int ru=scanner.nextInt(); int sum=0; for(int n=1;n<=ru;n++){ int ss=1; for(int a=1;a<=n;a+=2){ ss*=a; } sum+=ss; } System.out.println("计算结果为"+sum); } }
- 描述
- 你的任务是找到一个最小的正整数Q,使Q的各位数的乘积等于N。
- 输入
- 输入一个整数N(0 ≤ N ≤ 400)。
- 输出
- 输出Q,如果Q不存在则输出−1。
-
-
package Empdept; import java.util.Scanner; public class * { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int n=scanner.nextInt(); for (int i = 0; i < 100; i++) { if (getValue(i)==n) { System.out.println(i);break; } } } public static int getValue(int x) { int ss=1; while (x!=0) { ss*=x%10; x=x/10; } return ss; }
描述- 茵茵很喜欢研究车牌号码,从车牌号码上可以看出号码注册的早晚,据研究发现,车牌号码是按字典序发放的,现在她收集了很多车牌号码,请你设计程序帮她判断注册较早的号码。车牌号码由5个字母或数字组成
- 输入
-
- 第一行是n,代表有n组数据,第二行是m,以下m行是m个车牌号码
其中n<100,m<1000 - 输出
- 输出注册较早的车牌号
-
package timu1; import java.util.Arrays; import java.util.Scanner; public class * { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.print("请输入行数"); int n=scanner.nextInt(); System.out.println("请输入"+n+"车牌号"); String strs[]=new String[n]; for (int i = 0; i < strs.length; i++) { strs[i]=scanner.next(); } Arrays.sort(strs);//数组排序,需要导入Arrays类,依据的是unicode编码 for (int i = 0; i < strs.length; i++) { System.out.println(strs[i]); } } }
运行结果
- 第一行是n,代表有n组数据,第二行是m,以下m行是m个车牌号码
以上是关于Java习题的主要内容,如果未能解决你的问题,请参考以下文章