//階乘用方法調(diào)用public class FacDemo {//帶參有返回值?public static void main(String[] args) {??//創(chuàng)建對象??FacDemo f=new FacDemo();??System.out.println("你輸入一個數(shù):");??Scanner a=new Scanner(System.in);??int sum=0;??for(int i=1;i<=a.nextInt();i++){???sum=sum+f.fac(i);??}??System.out.println(a.nextInt()+"的階乘和為:"+sum);?}??//創(chuàng)建一個方法?public int fac(int n){??int s=1;??for(int i=1;i<=n;i++){???s=s*i;??}??return s;?}
3 回答
已采納

Camel97
TA貢獻(xiàn)49條經(jīng)驗(yàn) 獲得超38個贊
把你主函數(shù)的for循環(huán)刪除。改成
sum=f.fact(a.nextInt());
你的fact函數(shù)算的就是階乘。你主函數(shù)加個for循環(huán)你想想你算的究竟是什么。
點(diǎn)擊展開后面2條

Jason333
TA貢獻(xiàn)31條經(jīng)驗(yàn) 獲得超0個贊
?for(int i=1;i<=a.nextInt();i++){
???sum=sum+f.fac(i);
??}
System.out.println(a.nextInt()+"的階乘和為:"+sum);
這里有問題,a.nextInt()每次都會等待你輸入,下面同理
添加回答
舉報
0/150
提交
取消