求1的阶乘到10的阶乘的和?

1!+2!+3!+4!+5!+6!+7!+8!+9!+10!=?

不着急,我想,先考虑一下这个问题比较好。

写个程序求出10的阶乘?

这个问题可以有很多种方法,介绍两种代表性的如下:

1:
#!/bin/sh
a=1
for((i=1;i<=10;i++))
do
	((a*=i))
	echo $a
done
2:
 seq -s "*" 10 | bc


接下来的工作就很方便了

将上述例子中的10替换为1-10中的数字,用变量来替换

1:
#!/bin/sh
for num in {1..10}
do
	a=1
	for((i=1;i<=num;i++))
	do
		((a*=i))
	done
	((sum+=a))
done
echo $sum
2:
#!/bin/sh
for i in {1..10}
do
	a=`seq -s "*" $i | bc`
	((sum+=a))
done
echo $sum

ok,又一例shell题!mark!

时间: 2024-10-20 11:38:31

求1的阶乘到10的阶乘的和?的相关文章

用二分法求下面方程在(-10,10)之间的根。【谭浩强第四版课后习题】

用二分法求下面方程在(-10,10)之间的根:2x3-4x2+3x-6=0 编程思路:仿照二分查找,将区间划分为两部分,记录区间左右端点,得到中点.每次运算将中点带入方程: 结果>0:根应该向小一点的值拟合,high=mid; 结果<0:根应该向大一点的值拟合,low=mid; 对于跳出循环的条件,我首先是认为low和high应该无限逼近:while(fabs(low-high)>1e-5),当循环体内结果=0后,便使用break跳出循环:if(temp==0) break;但是没有得到

c语言用递归求:10的阶乘、100+99+98...+3+2+1的值。

#include <stdio.h> #include <string.h> void main(){ int myfun(int in); int a =myfun(10); printf("%d\n", a); } int myfun(int in){ if (in > 1) //将下面的*换成+,就可以求100+99+98...+3+2+1的值呢. return in * myfun(in-1); else return 1; } 原文地址:http

C语言练习010:求1到10的阶乘之和

#include <stdio.h> int factorial(int n) { if(0==n) return 1; if(1==n) return 1; return n*factorial(n-1); } int main() { int n=10; int sum=0; int i; for(i=1;i<=n;i++){ int m=factorial(i); printf("%d->%d\n",i,m); sum+=m; } printf("

在Python中递归函数调用举例and匿名函数lambda求1~100的和及计算阶乘举例

1.递归列出目录里的文件的脚本举例列出目录中的文件可以通过下面方法:os.listdir() In [1]: import os In [4]: os.listdir('/root') Out[4]: ['.tcshrc', '.bash_history', '.bashrc', 'ENV', '.cache', '.config', '.cshrc', '.bash_logout', 'python', '.ssh', 'shell', '.bash_profile', '.ipython',

PTA 7-6 计算阶乘和 (10分)

对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!. 输入格式: 输入在一行中给出一个不超过10的正整数N. 输出格式: 在一行中输出S的值. 输入样例: 3 输出样例: 9 作者: 陈越 单位: 浙江大学 时间限制: 400 ms 内存限制: 64 MB 代码长度限制: 16 KB 1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStreamReader;

SCU - 1689 算阶乘(10000的阶乘)

题目: Description 求给定数的阶乘. 输入 第一行为测试数据的组数n,后面有n个测试数据.每组测试数据一行,为一个不超过10000的非负整数. 可以保证,最后运算结果以十进制表示不会超过36000位. 输出 对于每组测试数据,输出一行,即相应的阶乘. 输入示例 3 2 3 4 输出示例 2 6 24 用数组来自定义整数的存储.乘法.输出,把1个数按照每5位切开,存到1个数组里面. 代码: #include<iostream> #include<stdio.h> #inc

求1!+2!+·····10!

#include<stdio.h> int main() { int i = 0, sum = 0, n = 1,tmp=1; for (n = 1; n < 11; n++) { tmp = 1; for (i = 1; i <= n; i++) { tmp *= i; } sum += tmp; } printf("%d\n", sum); system("pause"); return 0; } 这个代码很罗嗦  非常不好 可以优化为

java循环练习:用户输入一个10以内的数字,通过运算求出该数字的阶乘

package practiceGO; import java.util.Scanner; /*  * 4.用户输入一个10以内的数字,通过运算求出该数字的阶乘  */ public class Cto { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个10以内的数字,由系统计算阶乘"); int num = sc.nextIn

Java50道经典习题-程序21 求阶乘

题目:求1+2!+3!+...+20!的和分析:使用递归求解 0的阶乘和1的阶乘都为1 public class Prog21{ public static void main(String[] args){ long sum=0L; for(int i=1;i<=20;i++) { sum+=factorial(i); } System.out.println(sum); } //递归求阶乘 public static long factorial(int n) { if(n==0||n==1