一、題目:求出1!+2!+3!+...+n!
1、1!+2!+3!+...+n!
=1!+2!+3!+...+n!*1
=1!+2!+3!+...+ (n-1) !*(1+n)
=1!+2!+3!+...+ (n-2) !*(1+ (n-1)*(1+n) )
=1!+2!+3!+...+(n-3)!*(1+ (n-2)*(1+(n-1)*(1+n)) )
有以上的規律可知,用迴圈實現:
public class sum_n
return result;
}}
2、由於整型的數劇空間大小是有限的,而如果n很大那麼n!就不能直接用result接收,這時我們就利用陣列來儲存結構的每一位。此時最終**如下:
package n_zero;
public class sum_n
a[0]=a[0]+1;
for (k = 0; k < num; k++)
}} for(i=num-1;i>=0;i--)
system.out.print(a[i]);
}}
主函式為:
package n_zero;
public class main
水木軒昊昊
特殊方式求求1 2 3 n
1.題目要求 求1 2 3 n,要求不能使用乘除法 for while if else switch case等關鍵字及條件判斷語句 a?b c 2.用公式是不可以的,公式裡有乘法!實現乘法可以用sizeof多維陣列,兩行 就可以 class solution typedef int func in...
刷演算法 求1 2 3 n
求1 2 3 n,要求不能使用乘除法 for while if else switch case等關鍵字及條件判斷語句 a?b c 題目要求不能使用乘除法 for while if else switch case等關鍵字及條件判斷語句,那麼首先就要思考怎麼才能使n一次次的相加且到0的時候結束。首先...
演算法練習篇之 求1 2 3 n
求1 2 3 n,要求不能使用乘除法 for while if else switch case等關鍵字及條件判斷語句 a?b c 累加不能用迴圈的話,那就試試遞迴吧。判斷遞迴的終止條件不能用 if 和 switch,那就用短路與代替。n 0 sum sum solution n 1 0只有滿足n ...