求1!+2!+3!+...+20! go语言实现

Posted sanqima

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求1!+2!+3!+...+20! go语言实现相关的知识,希望对你有一定的参考价值。

    n的阶乘可以用一个for循环来求解,同时,前n个数的阶乘相加,也可以用一个for循环来遍历,则求前n个数的阶乘之和,就需要2个for循环。即代码如下:
    //jiecheng_test.go

package yufa

import (
	"fmt"
	"testing"
)

func jieChengHe(num int64) (res int64){
	if num <= 1 {
		return 1
	}

	var i,j,tmp int64 = 0,0,1
	res = 0
	for i=1;i<=num; i++ {
		tmp = 1
		for j=1;j<=i; j++ {
			tmp = tmp*j
		}
		res += tmp
	}

	return res
}

func TestJiCheng(t *testing.T) {
	num := jieChengHe(20)
	fmt.Println("1!+2!+...+20!=",num)
}

    效果如下:

图(1) 求前n个数的阶乘之和

以上是关于求1!+2!+3!+...+20! go语言实现的主要内容,如果未能解决你的问题,请参考以下文章

在linux下用c语言实现用多进程同步方法演示“生产者-消费者”问题

C语言实型常量

C语言实型常量

C语言实训

C语言实现将一个字符串翻转

数据结构c语言实现进栈出栈及遍历