| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1023 人关注过本帖
标题:[求助]利息问题
取消只看楼主 加入收藏
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
 问题点数:0 回复次数:1 
[求助]利息问题

题目:1假设银行整存整取存款不同期限的月息利率分别为:

0.62% 期限=1年

0.66% 期限=2年

0.69% 期限=3年

0.75% 期限=5年

0.84% 期限=8年

利息=本金*月息利率*12*存款年限.

现在某人手笔中有2000元钱,请通过计算选择一种存钱方案,使得钱存入银行20年后得到的利息最多(假定银行对超过存款期限的那一部分时间不付利息).

我写了一个程序:

#include<stdio.h> #include<math.h>

double lixi1(double x,int n) { return x*pow((1+0.62*12),(double)n); } double lixi2(double x,int n) {return x*pow((1+0.66*12),(double)n); }

double lixi3(double x,int n) {return x*pow((1+0.69*12),(double)n); }

double lixi4(double x,int n) {return x*pow((1+0.75*12),(double)n); }

double lixi5(double x,int n) {return x*pow((1+0.84*12),(double)n); }

main() {int i1,i2,i3,i4,i5,y1,y2,y3,y4,y5; double x=2000,max=-1; for(i1=0;i1<=20;i1++) { x=lixi1(x,i1); for(i2=0;i2<=20-i1;i2+=2) {x=lixi2(x,i2); for(i3=0;i3<=20-i1-i2;i3+=3) {x=lixi3(x,i3); for(i4=0;i4<=20-i1-i2-i3;i4+=5) {x=lixi4(x,i4); i5=20-i1-i2-i3-i4; if(i1+i2+i3+i4+i5==20&&i5%8==0) {x=lixi5(x,i5); if(max<x) {max=x; y1=i1;y2=i2;y3=i3;y4=i4;y5=i5;} } } } } } printf("The max=%.2lf\n%0.62:%d years\n%0.66:%d years\n%0.69:%d years\n%0.75 %d years\n%0.84:%d years\n",max,y1,y2,y3,y4,y5); getch(); }

语法没错误,但运行后产生:Floating point error:Overflow

该怎么改啊?

搜索更多相关主题的帖子: 利息 
2004-10-06 18:03
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 
以下是引用knocker在2004-10-06 19:36:30的发言: 我好象在C++版做过这个题,KAI版主也有做过。

运行后产生:Floating point error:Overflow

该怎么改啊?


2004-10-06 19:54
快速回复:[求助]利息问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025965 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved