求出e的值

时间限制:C/C++ 1000MS,其他语言 2000MS
内存限制:C/C++ 64MB,其他语言 128MB
难度:中等
分数:100 OI排行榜得分:12(0.1*分数+2*难度)
出题人:root

描述

利用公式 e=1+1!1​+2!1​+3!1​+...+n!1​, 求 e。

输入描述

输入只有一行,该行包含一个整数n(2≤n≤15)。

输出描述

输出只有一行,该行包含计算出来的e的值,要求打印小数点后 10 位。

用例输入 1 

10

用例输出 1 

2.7182818011
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll jc(ll n){//阶乘!,弊端是不用高精度仍然超市
	ll i,x=1;
	for(i=1;i<=n;i++){
		x*=i;
	}
	return x;
}
main() {
	double ans=0.0;
	ll n,i,j,k,x;
	cout<<"位数:";
	cin>>x;
	cout<<"精度:";
	cin>>n;
	//cout<<jc(n);
	for(i=0;i<=n;i++){//循环计算
		ans+=1.0/jc(i)*1.0;
	} cout<<setprecision(x)<<fixed<<ans;//设置小数位数
}

记得点赞收藏加关注。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值