zoukankan      html  css  js  c++  java
  • 复利计算-结对

    复利计算 5.0

    同伴姓名:吴灿龙
    同伴学号:201406114151
    博客地址:博客园
    源代码:github

    结对编程

    本次复利计算功能更新采用结对编程的形式,完成“记录下一笔一笔不同类型的投资,并动态显示资金现值”的功能
    在同伴吴灿龙同学之前开发的代码基础上进行增量的功能更新
    

    主要实现的代码

        public void actionPerformed(ActionEvent e) {
    		// TODO Auto-generated method stub
    		if (e.getActionCommand().equals("确认")) {
    			double P = 0.1;
    			double i = 0.1;
    			double n = 0.1;
    			double m = 0.1;
    			double F = 0.1;
    			try {
    				jResultText.setText("");
    				if (x > 60 && x < 160 && y > 105 && y < 145) {
    					// 复利
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					m = Double.valueOf(jTextm.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    						F = dataTing.compounding(P, i, n, m);
    					jResultText.setText(Double.toString(F));
    					listModel.add(0, "复利计算"+"    "+"终值"+"    "+F);
    					}
    					
    				} else if (x > 160 && x < 260 && y > 105 && y < 145) {
    					// 单利
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					F = dataTing.simpleInterest(P, i, n);
    					jResultText.setText(Double.toString(F));
    					listModel.add(0, "单利计算"+"    "+"终值"+"    "+F);
    					}
    				} else if (x > 260 && x < 360 && y > 105 && y < 145) {
    					// 本金
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					m = Double.valueOf(jTextm.getText().toString()).doubleValue();
    					F = Double.valueOf(jTextF.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					P = dataTing.calculationOfThePrincipal(i, n, F);
    					jResultText.setText(Double.toString(P));
    					listModel.add(0, "本金计算"+"    "+"本金"+"    "+P);
    					}
    				} else if (x > 360 && x < 460 && y > 105 && y < 145) {
    					// 期限
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					m = Double.valueOf(jTextm.getText().toString()).doubleValue();
    					F = Double.valueOf(jTextF.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					n = dataTing.theTermsOfDepositCalculation(P, i, F);
    					jResultText.setText(Double.toString(n));
    					listModel.add(0, "存款期限"+"    "+"期限"+"    "+n);
    					}
    				} else if (x > 460 && x < 560 && y > 105 && y < 145) {
    					// 利率
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					m = Double.valueOf(jTextm.getText().toString()).doubleValue();
    					F = Double.valueOf(jTextF.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					i = dataTing.interestRate(P, n, F)/100;
    					jResultText.setText(Double.toString(i));
    					listModel.add(0, "存款利率"+"    "+"利率"+"    "+i+"%");
    					}
    				} else if (x > 560 && x < 660 && y > 105 && y < 145) {
    					// 投资
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					m = Double.valueOf(jTextm.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					F = dataTing.theInvestmentCalculation(P, i, n);
    					jResultText.setText(Double.toString(F));
    					listModel.add(0, "本金:"+P+"利率:"+i+"期数:"+n+"回报:"+F);
    					}
    				} else if (x > 660 && x < 760 && y > 105 && y < 145) {
    					// 分期还款
    					P = Double.valueOf(jTextP.getText().toString()).doubleValue();
    					i = Double.valueOf(jTexti.getText().toString()).doubleValue()/100;
    					n = Double.valueOf(jTextn.getText().toString()).doubleValue();
    					if(Judge0(P, i, n, m, F)){
    					F = dataTing.installmentPaymentCalculation(P, i, n);
    					jResultText.setText(Double.toString(F));
    					listModel.add(0, "分期还款"+"    "+"金额"+"    "+F);
    					}
    				}
    			} catch (Exception e1) {
    				JOptionPane.showMessageDialog(null, "未输入正确的数据!", "错误提示",
    						JOptionPane.ERROR_MESSAGE);
    				//System.out.println(e1);
    			}
    		} else if (e.getActionCommand().equals("清除")) {
    			//清除文本框的内容
    			jTextF.setText("");
    			jTextP.setText("");
    			jTexti.setText("");
    			jTextn.setText("");
    			jTextm.setText("");
    			jResultText.setText("");
    		}
    	}
    

    运行截图

    1
    2

    分工

    由于基础代码取自吴灿龙同学
    我的工作主要是修改代码实现大体的功能
    同伴的工作主要是对基础代码进行修改方便将功能更好的融合进显示界面
    

    当然在结对开发过程中,也会相互给予修改的建议,更新的不同实现方法等

    合作照片

    总结

    经过此次的结对编程,让我深刻发现自己的不足,需要加强的地方,  
    例如:在界面的很多控件类都不了解,查API后才发现有更好的控件的实现相应功能,
    但是在某些方面我还是能提供一些建设性的意见,能帮助到结对的项目。
    在接下来的一段时间,要在Java基础方面花些时间,在未来的项目中取得更好的成果。
  • 相关阅读:
    IIS是如何处理ASP.NET请求的
    c# Socket通讯中关于粘包,半包的处理,加分割符
    windows2008(64位)下iis7.5中的url伪静态化重写(urlrewrite)
    C#微信公众号/订阅号开发 接口源码
    C#线程池多线程Socket通讯 服务器端和客户端示例
    百度地图JS调用示例
    c# 图片转二进制/字符串 二进制/字符串反转成图片
    电商项目面试总结
    96. Unique Binary Search Trees
    92.Reverse Linked List II
  • 原文地址:https://www.cnblogs.com/xiseven/p/5361018.html
Copyright © 2011-2022 走看看