java里1到10的階乘相加編程方法如下:
創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),洪山網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:洪山等地區(qū)。洪山做網(wǎng)站價(jià)格咨詢:028-86922220
public class Factorial{? ? ? ? ? ? ? ? ? ?//類
public static void main(String [] args){ //主方法
int a=1;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義一個(gè)變量a
int sum=0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義一個(gè)變量sum,把和存放在sum里
for(int i=1;i11;i++){? ? ? ? ? ? ? ? ? //做1-11循環(huán)
a=1;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//每次a都從1開始
for(int j=1;j=i;j++){? ? ? ? ? ? ? ? ?//求每個(gè)數(shù)的階乘
a=a*j;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
}
sum=a+sum;? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//每個(gè)數(shù)的階乘求好后都加入sum
}
System.out.println(sum);? ? ? ? ? ? ? ? //輸出和sum
}
}
Java是一種可以撰寫跨平臺(tái)應(yīng)用程序的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。Java?技術(shù)具有卓越的通用性、高效性、平臺(tái)移植性和安全性,廣泛應(yīng)用于PC、數(shù)據(jù)中心、游戲控制臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng),同時(shí)擁有全球最大的開發(fā)者專業(yè)社群。
public class JieChenghe{
public static void man(String args[]){
double sum=0;
for(int i=1;i=9;i=i+2){
sum=sum+jiecheng(i);
System.out.println("1-9的奇數(shù)階乘和為:"+sum);
}
}
public static long jiecheng(int i){
if(i==1){
return 1;
}else{
return i*jiecheng(i-1);
}
}
階乘的公式是
n!=n*(n-1)*(n-2)....*2*1
這個(gè)公式可以通過一個(gè)java的循環(huán)來實(shí)現(xiàn),也就是第一種方法。
for(int i=number; i0;i--)
這個(gè)循環(huán)在i=0的時(shí)候結(jié)束, 而階乘的結(jié)果通過result*=i來計(jì)算。
public static int compute(int number)
{
int result=1;
for(int i=number;i0;i--){
result*=i;
}
return result;
}
public static void main(String[] args)
{
System.out.println(compute(30)); //789912231223232323211
}
第二種是通過遞歸來實(shí)現(xiàn)階乘。
遞歸就是方法調(diào)用自身, 最終通過一個(gè)出口來結(jié)束程序的調(diào)用。
這個(gè)出口要保證程序不出現(xiàn)死循環(huán)。
在上面的f(x)- n*f(x-1)這里, 出口就可以設(shè)置為
if(1==number)
{return 1;}
代碼實(shí)現(xiàn):
public static int cur(int number){
if(number!=0){
return number*cur(number-1);
}else return 1;
}
Java編程:寫出求n的階乘的方法,并算出1到7的階乘的和方法:
先編寫求階乘的方法,再通過for循環(huán)計(jì)算1到7的階乘的和。
具體實(shí)現(xiàn):
public?class?Test?{
public?static?void?main(String[]?args)?{
int?sum?=?0;??//保存階乘的和
for(int?i?=?1;i=7;i++)
sum?+=?factorial(i);
System.out.println(sum);
}
//?求階乘方法,傳入一個(gè)整數(shù),返回這個(gè)整數(shù)的階乘
public?static?int?factorial(int?num)?{
int?result?=?1;
for(int?i?=?1;i=num;i++){
result?*=?i;
}
return?result;
}
}