求1!+2!+3!+....20!的值

1!+2!+3!+4!+5!+....+20!

即:1+2*1+3*2*1+4*3*2*1+5*4*3*2*1+......+20*19*18*17*16*15...*3*2*1

就是求1到20阶乘的和

 1 public class JieCheng
 2 {
 3     public static void main(String[] args)
 4     {
 5         long sum=0;//因为数太大要定义成long类型
 6         long n=1;
 7         int i=1;
 8         for (i=1; i<=20 ;i++ )
 9         {
10             n*=i;//此处是计算每个项的阶乘
11             sum+=n;//此处是把每个项的阶乘数依次相加
12         }
13         System.out.println("所有阶乘数的和为:"+sum);
14     }
15 }
时间: 2024-10-09 23:21:00

求1!+2!+3!+....20!的值的相关文章

求取圆形区域内的平均灰度值

#include <cmath> #include <opencv2/opencv.hpp> using namespace cv; using namespace std; const int kvalue = 15;//双边滤波邻域大小 const double PI = 3.14;//圆周率 int graylevel(Mat image, Mat dst, Point cen, int r)//求取圆形区域内的平均灰度值 { int graysum = 0, n = 0;

java例题_21 求 1+2!+3!+...+20!的和

1 /*21 [程序 21 求阶乘] 2 题目:求 1+2!+3!+...+20!的和 3 程序分析:此程序只是把累加变成了累乘. 4 */ 5 6 /*分析 7 * 1.汲取上一题的教训,这么大的数字,long类型 8 * 2.for循环,两层,一层控制1~20,另一层控制阶乘 9 * */ 10 11 package homework; 12 13 public class _21 { 14 15 public static void main(String[] args) { 16 //声

求1+2!+3!+...+20!的和

public class jiecheng2 { public static void main(String[] args) {  // TODO 自动生成的方法存根    int i,sum=1,k=0;  for(i=1;i<=20;i++)  {   sum*=i;   k+=sum;  }  System.out.print("求1+2!+3!+...+20!的和为       "+k); } }

求三个数值的中间值的宏定义

怎么用一个宏来求三个数值的中间值呢?请看: #include <stdio.h> #define MIDDLE(x,y,z) ((x)<(y)?((y)<(z)?(y):(x)<(z)?(z):(x)):((y)>(z)?(y):(x)>(z)?(z):(x))) int main(void) { printf("MIDDLE(%d,%d,%d) = %d\r\n", 1,2,3,MIDDLE(1,2,3)); printf("MID

求1+2!+3!+...+20!的和。

package com.liron.p1; /**求1+2!+3!+...+20!的和*/ public class Topic25 { public static void main(String[] args){ long sum=0;//因为数太大要定义成long类型 long n=1; int i=1; for (i=1; i<=20 ;i++ ){ n*=i;//此处是计算每个项的阶乘 sum+=n;//此处是把每个项的阶乘数依次相加 } System.out.println("

HDU 4738——Caocao&#39;s Bridges——————【求割边/桥的最小权值】

Caocao's Bridges Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice HDU 4738 Description Caocao was defeated by Zhuge Liang and Zhou Yu in the battle of Chibi. But he wouldn't give up. Caocao's army st

求1+2+3+...+n的值,要求不能使用乘除法,for、while、if、else、switch、case、等关键字及条件判断语句(JAVA)

采用递归和三目表达式注意红色字体一定不能写成n-- 1 package com.hunag; 2 3 public class Sum { 4 5 static int sum; 6 public static int isum(int n) 7 { 8 sum+=n; 9 sum=n==0?sum:isum(--n); 10 System.out.println(n); 11 return sum; 12 } 13 public static void main(String[] args)

求1+2+3+...+n的值

求1+2+3+...+n的值.输入格式输入包括一个整数n.输出格式输出一行,包括一个整数,表示1+2+3+...+n的值.样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题.一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低.样例输出5050数据规模与约定1 <= n <= 1,000,000,000.说明:请注意这里的数据规模.本题直接的想法是直接使用一个循环来累加

求数组中第二大的值

/* 所有c语言代码,都是在LoadRunner中运行: */Action(){ int a[]={12,34,565,23,24,667,89,98};//定义一个int数组: int len;//记录数组元素个数: int max;//所求的最大值: int max_2;//第二大的值: int i;//循环变量:LoadRunnerg中,不能在for循环中定义变量: len = sizeof(a)/sizeof(int);//数组元素个数=数组所占字符数/数组元素类型所占字符数; max