社区讨论

求解答,佬们,为啥我这个样例算出来是2.8啊

P1163银行贷款参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@m482jv7v
此快照首次捕获于
2024/12/03 14:19
去年
此快照最后确认于
2025/11/04 13:25
4 个月前
查看原帖
CPP
#include<iostream>
#include<vector>
#include<iomanip>
#include<cmath>
using namespace std;

int main(){
	int w0,w,m;
	double sum=0;
	cin>>w0>>w>>m;
	double p=0,q=3,result;
	while(q-p>0.0001){
		sum=0;
		double mid=p+(q-p)/2;
		for(int i=0;i<m;i++){
			sum += (w0 / (double)m) * pow(1.0 + mid, i + 1);;
		}
		if(sum<=w*m){
			result=mid;
			p=mid;
		}		
		else{
			q=mid;
		}
	}
	cout <<fixed<<setprecision(1)<<result * 100<<"%"<<endl;
	return 0;

回复

2 条回复,欢迎继续交流。

正在加载回复...