复利计算--结对项目

结对项目:复利计算

搭档:30蔡京航  http://www.cnblogs.com/cjh123/

github:https://github.com/alfredzhu/teamwork

工作照

一、项目需求:

即要追求利益,又要面对不可预知的金融投资风险, “不能把鸡蛋放在同一个篮子里”,所以有必要进行组合投资。

通过上述计算与对比,可以帮助客户进行投资决策。

客户:那么能否帮我记录下一笔一笔不同类型的投资,并动态显示资金现值呢?

二、完成要求:以结对方式完成。

在这次结对编程中分配任务  我:设计代码并审核,单元测试减少bug

蔡京航:设计界面,查阅资料,令代码规范并美观

在这这次结对编程的收获到和感悟:结对后,两个人都有不同的想法,在设计的时候可以及时提出质疑并觉得怎样做比较好

并指出错误,因此能互相受益,感觉很不错,能提高质量。

三、估算时间

估计用时:1.5h

估计代码行:300

实际用时:2.5h

实际代码行:304

四、用txt文件来动态显示历史信息

  1 import java.io.BufferedWriter;
  2 import java.io.File;
  3 import java.io.FileNotFoundException;
  4 import java.io.FileReader;
  5 import java.io.FileWriter;
  6 import java.io.IOException;
  7 import java.io.Writer;
  8 import java.util.ArrayList;
  9
 10
 11 public class txtIO {
 12
 13 public static void main (String args[]) {
 14
 15 ReadDate();
 16
 17 WriteDate();
 18
 19 }
 20
 21 /**
 22 * 读取数据
 23  * @return
 24 */
 25 public static void ReadDate() {
 26     CompoundCalculator C=new CompoundCalculator();
 27 String url = "F:/gitfile/testgit/historydata.txt";
 28 try {
 29 FileReader read = new FileReader(new File(url));
 30 StringBuffer sb = new StringBuffer();
 31 char ch[] = new char[1024];
 32 int d = read.read(ch);
 33 while(d!=-1){
 34 String str = new String(ch,0,d);
 35 sb.append(str);
 36 d = read.read(ch);
 37 }
 38 C.jTextArea1.setText(sb.toString());
 39 System.out.print(sb.toString());
 40 } catch (FileNotFoundException e) {
 41 e.printStackTrace();
 42 } catch (IOException e) {
 43 e.printStackTrace();
 44 }
 45 }
 46
 47 /**
 48 * 写入数据
 49 */
 50 public static void WriteDate() {
 51
 52 try{
 53 File file = new File("F:/gitfile/testgit/historydata.txt");
 54 Writer out = null ;
 55 out = new FileWriter(file,true) ;
 56 if (file.exists()) {
 57
 58 file.delete();
 59 }
 60 CompoundCalculator C=new CompoundCalculator();
 61 double P=C.P, i=C.i, F=C.F;//F:复利终值 P:本金 i:利率
 62 int N=C.N, M=C.M, m=C.m;//N:利率获取时间的整数倍 M:复利次数 m:月数
 63 int result=C.result;
 64 int action=C.action;
 65 file.createNewFile();
 66
 67
 68 if(action==1){
 69     out.write("\r\n"+"复利"+"\r\n");
 70     out.write("本金:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
 71             + "存入年限:" + N + "\r\n" + "年复利次数:" + M + "\r\n" + "复利终值:" + F
 72             + "\r\n");
 73 }
 74 if(action==2){
 75     out.write("\r\n"+"单利"+"\r\n");
 76     out.write("本金:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
 77             + "存入年限:" + N + "\r\n" + "复利终值:" + F + "\r\n");
 78 }
 79 if(action==3){
 80     out.write("\r\n"+"本金估算"+"\r\n");
 81     out.write("复利终值:" + F + "\r\n" + "年利率(%):" + i + "\r\n"
 82             + "存入年限:" + N + "\r\n" + "年复利次数:" + M + "\r\n" + "本金:" + P
 83             + "\r\n");
 84 }
 85 if(action==4){
 86     out.write("\r\n"+"年限估算"+"\r\n");
 87     out.write("本金:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
 88             + "年复利次数:" + M + "\r\n" + "复利终值:" + F + "\r\n" + "年限:" + N
 89             + "\r\n");
 90 }
 91 if(action==5){
 92     out.write("\r\n"+"利率估算"+"\r\n");
 93     out.write("本金:" + P + "\r\n" + "存入年限:" + N + "\r\n" + "年复利次数:"
 94             + M + "\r\n" + "复利终值:" + F + "\r\n" + "年利率(%):" + i + "\r\n");
 95 }
 96 if(action==6){
 97     out.write("\r\n"+"定期投资(年)"+"\r\n");
 98     out.write("年投资金额:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
 99             + "定投年数:" + N + "\r\n" + "终值:" + F + "\r\n");
100 }
101 if(action==7){
102     out.write("\r\n"+"定期投资(月)"+"\n");
103     out.write("月投资金额:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
104             + "定投月数:" + m + "\r\n" + "终值:" + F + "\r\n");
105 }
106 if(action==8){
107     out.write("\r\n"+"等额本息还款"+"\r\n");
108     out.write("贷款金额:" + P + "\r\n" + "年利率(%):" + i + "\r\n"
109             + "年限:" + N + "\r\n" + "年复利次数:" + M + "\r\n" + "等额本息还款额:" + F
110             + "\r\n");
111 }
112 //}
113 out.close();
114 } catch (Exception ex) {
115 System.out.println(ex);
116 }
117
118 }
119
120 }

五、运行效果

时间: 2024-12-20 11:53:21

复利计算--结对项目的相关文章

复利计算- 结对1.0

复利计算--结对 一.项目需求: 既要追求利益,又要面对不可预知的金融投资风险, “不能把鸡蛋放在同一个篮子里”,所以有必要进行组合投资. 通过上述计算与对比,可以帮助客户进行投资决策. 客户:那么能否帮我记录下一笔一笔不同类型的投资,并动态显示资金现值呢? 二.需求分析: 让客户输入本金.利率.期限等 然后选择选择投资的类型 最后是输出每一笔资金的终值 三.估计实现所需时间: 估计时间:5 hours 实际时间:6 hours 四.链接与感悟 (1)结对同伴的学号姓名以及同伴的博客地址. 20

复利计算--结对

复利计算之结对 结对同伴的学号:201406114245 姓名:赵创佳 博客地址:http://www.cnblogs.com/7763255qw/ :github地址: https://github.com/zhaochuangjia 程序源代码已上传至https://github.com/ganjiaping 源程序的文件名为:teaml.cpp; 一.项目简介 项目名称:复利计算 版  本  :5.0 版本类型:c 使用工具:Visual c++ 6.0 主要功能:复利单利的计算.贷款的计

复利计算——结对编程2.0

复利计算再升级---------------------------------------------------------------------------------------------------------------------- 客户在大家的引导下,有了更多的想法: 这个数据我经常会填.....帮我预先填上呗? 把界面做得简单漂亮好操作一点呗? 能不能帮我转成个APP,我装到手机上就更方便了? 我觉得这个很有用,很多人可能都需要这些功能,做到我的微信公众号上吧? 能不能不要

复利计算——结对编程

1.任务 即要追求利益,又要面对不可预知的金融投资风险, “不能把鸡蛋放在同一个篮子里”,所以有必要进行组合投资. 通过上述计算与对比,可以帮助客户进行投资决策. 客户:那么能否帮我记录下一笔一笔不同类型的投资,并动态显示资金现值呢? 1 resultList.setVisibleRowCount(5); //默认在JList中的显示条数为5条 2 c.add(new JScrollPane(resultList)); 3 resultList.setForeground(Color.BLACK

0414复利计算--结对

这次主要是把之前的代码整理一下做成一个人性化的界面,简单实现用户输入以及输出记录. 当用户输入完数据点击确定的时候数据会清零,同时在旁边显示记录条.但还没能够以数组 或者文件数据库那样记录之前输入过的数据,所以输出的只是当前的记录. 搭档:麦锦俊 149 http://www.cnblogs.com/maijinjun private void jButton0MouseMouseClicked(MouseEvent event) { String p =this.jTextField0.get

复利计算—结对

一.项目需求: 既要追求利益,又要面对不可预知的金融投资风险, “不能把鸡蛋放在同一个篮子里”,所以有必要进行组合投资. 通过上述计算与对比,可以帮助客户进行投资决策. 客户:那么能否帮我记录下一笔一笔不同类型的投资,并动态显示资金现值呢? 二.需求分析 首先让客户选择所要投入的资金数量(需投入几笔资金) 然后选择每笔资金的投资类型(单利/复利) 输出每一笔资金的终值 三.估计实现所需时间 估计时间:4h 完成过程: (1)4月5日下午:1h左右 (2)4月5日下午:2h左右 (3)4月6日早上

复利计算--结对2.0

一.项目需求: 客户在大家的引导下,有了更多的想法: 这个数据我经常会填.....帮我预先填上呗?...... 把界面做得简单漂亮好操作一点呗? 能不能帮我转成个APP,我装到手机上就更方便了? 我觉得这个很有用,很多人可能都需要这些功能,做到我的微信公众号上吧? 能不能不要让我填表单,让我发条消息,或者对着手机说句话就可以了? 二.需求分析 1.这个数据我经常会填.....帮我预先填上呗? 做下拉菜单,将客户可能会经常填写的东西在下拉菜单中提前写好,可供用户直接选择,避免总是要输入的繁琐. 2

复利计算--结对(链接数据库)

结对同伴博客园地址: :郭志豪 http://home.cnblogs.com/u/gzh13692021053/ 项目完成估计与实际完成对比表如下所示: 估计查找资料时间(h) 3 时间查找资料时间(h) 4 估计团队讨论时间(h) 2 时间团队讨论时间(h) 2 估计编程时间(h) 5 实际编程时间(h) 7 估计完成时间(h) 9 实际完成时间(h) 12 查阅相关资料链接:http://www.2cto.com/kf/201405/298386.html github地址:https:/

软件工程---复利计算-结对

同伴姓名:卢琪同伴学号:201402064105博客地址:http://www.cnblogs.com/xiseven/源代码:github 总结:当程序的工作量比较大的时候,就需要结伴而行,这次在结伴合作中,我主要做的是提供了主要的代码,这次合作最花时间的是给伙伴解释我所写的代码的用途,由于之前没有写注释,导致这这个方面花了很多时间.所以,写代码一定要规范和多写注释,这样,当人家和你合作时才会容易使用你的代码.