java中怎么实现阶乘,如计算1~100的阶乘使用BigInteger大容量运算类计算100的阶乘
一.一般算法(循环)
view plaincopy to clipboardprint?
public class Test {
public static void main(String[] args) {
int result = 1;
for (int i = 1; i = 100; i) {
result *= i;
}
System.out.println(result);
}
}
public class Test {
public static void main(String[] args) {
int result = 1;
for (int i = 1; i = 100; i) {
result *= i;
}
System.out.println(result);
}
【一到十阶乘java代码 java计算一到十的阶乘】}
输出结果为0,因为int无法保存下100的阶乘的结果,100的阶乘的长度至少大于50位,也要大于long,double
二.使用BigInteger大容量运算类
view plaincopy to clipboardprint?
import java.math.BigInteger;
public class Test {
public static void main(String[] args) {
BigInteger result = new BigInteger("1");//为result赋初始值,为1
for (int i = 1; i = 100; i) {
BigInteger num = new BigInteger(String.valueOf(i));
result = result.multiply(num);//调用自乘方法
}
System.out.println(result);//输出结果
System.out.println(String.valueOf(result).length());//输出长度
}
}
import java.math.BigInteger;
public class Test {
public static void main(String[] args) {
BigInteger result = new BigInteger("1");//为result赋初始值,为1
for (int i = 1; i = 100; i) {
BigInteger num = new BigInteger(String.valueOf(i));
result = result.multiply(num);//调用自乘方法
}
System.out.println(result);//输出结果
System.out.println(String.valueOf(result).length());//输出长度
}
}
计算结果为:93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
产度:158
从1阶乘加到10的阶乘怎么用java写public class factorial {
public static void main(String[] args) {
int sum = factorial_sum();//定义sum调用factorial_sum()
System.out.println(sum);
}
/**
* 定义计算阶乘的函数 , 可以在factorial_sum()的()里面加一个参数,由用户输入是到1哪一个数的阶乘和 。
* 即:
factorial_sum(int n){
int sum=0;//和
int num = n;//变量,多少之内的阶乘和
int factorial=1;//阶乘
for(int i=1;i=num;i){
factorial *= i;//也可以写为 factorial = factorial * i;
sum= factorial;
}
return sum;//放回计算结果
}
*
* 在数函数中调用使用
* 即:
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int sum = factorial_sum(n);
System.out.println(sum);
*/
public static int factorial_sum() {
int sum=0;//和
int num = 10;//变量,多少之内的阶乘和
int factorial=1;//阶乘
for(int i=1;i=num;i){
factorial *= i;//也可以写为 factorial = factorial * i;
sum= factorial;
}
return sum;//放回计算结果
}
}
希望对你有用
用JAVA 编程方法“ 求出1~10的阶乘”import javax.swing.*;
import java.math.BigInteger;
public class JieCheng extends JFrame {
/**
* @author Min Shakes
*/
private JTextArea output;
private BigInteger cal(String input){ //计算方法cal
BigInteger result=BigInteger.ONE;
BigInteger max=new BigInteger(input);
for(BigInteger i=BigInteger.ONE;max.compareTo(i)!=-1;i=i.add(BigInteger.ONE))
result=result.multiply(i);
return result;
}
public JieCheng(){//constructor
super("阶乘计算器");
output=new JTextArea();
output.setLineWrap(true);//设置JTextArea自动换行
output.setWrapStyleWord(true);
JScrollPane out=new JScrollPane(output);
getContentPane().add(out);
setSize(400,300);
setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
String input=JOptionPane.showInputDialog("请输入您要求阶乘的数:");
JieCheng app=new JieCheng();
app.output.setText(input "!=" app.cal(input));
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
catch(Exception e){
System.exit(0);
}
}
}
一到十阶乘java代码的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于java计算一到十的阶乘、一到十阶乘java代码的信息别忘了在本站进行查找喔 。
推荐阅读
- 斗鱼官方战队比赛直播,斗鱼官方战队比赛直播在哪看
- 数显卡尺怎么与电脑连接,数显卡尺怎么用视频
- 如何实现css水平居中,Css水平居中怎么设置
- 小朋友格斗闯关游戏视频,小孩子格斗视频
- go语言函数方法 go语言函数和方法
- 怎么不代入角色扮演游戏,如何玩角色扮演游戏
- 宜春sap维护,sap批次特性维护
- oracle认证怎么能弄 数据库oracle认证
- 小程序怎么记,如何用微信小程序记笔记