1到n阶乘算法的改进「建议收藏」

1到n阶乘算法的改进「建议收藏」1到n阶乘算法的改进之前用到过好几次了,但总是很长时间不用就会忘了,所以这次直接把它扔进来了。之前总是喜欢用双层循环,其实一个单层循环足以,下面将用Python和C++两种语言进行展示C++:#include<iostream>usingnamespacestd;intmain(){ intsum=0,tmp; for(inti=1;i<=10;i++) { tmp=1; for(intj=1;j<=i;j++) tmp*=j; sum

大家好,又见面了,我是你们的朋友全栈君。

1到n阶乘算法的改进

之前用到过好几次了,但总是很长时间不用就会忘了,所以这次直接把它扔进来了。
之前总是喜欢用双层循环,其实一个单层循环足以,下面将用Python和C++两种语言进行展示

C++:

#include<iostream>
using namespace std;
int main()
{ 
   
	int sum=0,tmp; 
	for(int i=1;i<=10;i++)
	{ 
   
		tmp=1;
		for(int j=1;j<=i;j++)
		tmp*=j;
	sum+=tmp;	 
	} 
	cout<<sum<<endl;
	
	sum=0;
	tmp=1;
	for(int i=1;i<=10;i++)
	{ 
   
		tmp*=i;
		sum+=tmp; 
    }
	cout<<sum<<endl;
}
// 算法思想的改变 阶乘 

运行结果展示,结果相同:
运行结果
Python:

#单层
sum=0
num=1
for i in range(1,11):
    num*=i
    sum+=num
print("1到10的阶乘之和为:{}".format(sum))

#双层
sum=0
for i in range(1,11):
    num=1
    for j in range(1,i+1):
        num*=j;
    sum+=num;
print("1到10的阶乘之和为:{}".format(sum))

运行结果展示,结果相同:
运行结果
Python的那个for循环还真是有点不太适应,阶乘这个算法改进算是非常基础,但是好久不用就会常规思维写双层循环。
2021梦想启航

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/164002.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号