java代码迭代求阶乘 迭代算法求n的阶乘

java用迭代的算法实现阶乘

int num=1;

专业从事网站制作、成都网站制作,高端网站制作设计,重庆小程序开发,网站推广的成都做网站的公司。优秀技术团队竭力真诚服务,采用H5建站+CSS3前端渲染技术,响应式网站,让网站在手机、平板、PC、微信下都能呈现。建站过程建立专项小组,与您实时在线互动,随时提供解决方案,畅聊想法和感受。

Scanner sc=new Scanner(system.in);

system.out.print("输入一个正整数");

int n=sc.nextInt();

String str=num+"*";

for( int i=2;i=n;i++){

str=str+i+"*";

if(i==n){

str=str+i;

}

num=num*i;//num*=i;这一步有两种实现,但是后面的运行速度比前面的要快!

}

system.out.println(str+"="+num);

效果是,你输入5:显示1*2*3*4*5=120

java 编程:用迭代法实现阶乘(Factorial):n!=n*(n

不知道lz在factory(int i)方法里面定义一个x=0是到底要闹哪样。明明是要根据传来的参数进行迭代判断。改了一下,希望对你有用(下次添加代码的时候要注意整洁,不然会干扰回答的~)。

import java.util.Scanner;

public class factorial_2 {

public static void main(String[] args) {

System.out.print("请输入一个整数:");

Scanner n1 = new Scanner(System.in);

int n = n1.nextInt();

System.out.println();

System.out.print(n + "的阶乘为:");

int sum = factorial(n);

System.out.print(sum);

}

private static int factorial(int i) {

//int x = 0;

if ( i == 1) {

return 1;

} else {

int temp;

temp = (int) i * factorial(i - 1);

return temp;

}

}

}

提醒楼主注意的是要注意int范围的问题。因为最后接收结果的是一个int sum类型的值,所以它可以解决的阶乘数也是有范围的。有必要的话可以改成Integer.

java怎么写求阶乘?

亲测可用

long jiecheng(int x)

{

long int i,k=1;

for(i=1;i=x;i++)

k=k*i;

return k;

}

int main()

{

long int j,k=0;

int i;

for(i=1;i=20;i++)

{

j=jiecheng(i);

k+=j;

}

printf("%ld\n",k);

}

输出的结果是2561327494111820313

扩展资料:

一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。

亦即n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。

计算方法:

大于等于1:

任何大于等于1 的自然数n 阶乘表示方法:n! = 1×2×3×...×(n-1)n或n! = n×(n-1)!

0的阶乘:0!=1。

参考资料:百度百科——阶乘

文章标题:java代码迭代求阶乘 迭代算法求n的阶乘
标题URL:https://www.cdcxhl.com/article16/hissdg.html

成都网站建设公司_创新互联,为您提供标签优化网站建设用户体验面包屑导航软件开发移动网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站建设