复利计算器1.0,2.0,3.0
2016-03-17 12:13
357 查看
import java.util.Scanner;
public class fuli {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner caculate = new Scanner(System.in);
int a = 0;
while (a == 0 || a == 1 || a == 2 || a == 3||a==4||a==5) {
System.out.println("请选择1/2/3/4/5/6:\n1.复利计算终值2.复利计算本金3.单利计算本息4.复利计算年数5.复利年利率6.计算总资产");
int a1 = caculate.nextInt();
if (a1 == 1) {
fuli.CFutureValue();
break;
} else if (a1 == 2) {
fuli.CPresentValue();
break;
}
else if (a1 == 3) {
fuli.PrincipalAndInterest();
break;
}
else if(a1==4){
fuli.CPresentValue1();
}
else if (a1 == 5) {
fuli.PrincipalAndInterest1();
break;
}
else if (a1 == 6) {
fuli.PrincipalAndInteres();
break;
}
else {
System.out.println("\n您的输入错误");
a1 = a;
}
}
}
// 复利计算终值
static void CFutureValue() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double sum = 1;
for (int i = 1; i <= year; i++) {
sum = (1 + r) * sum;
}
System.out.println("总额为:" + sum * PresentValue);
}
// 复利计算本金
static void CPresentValue() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double PresentValue = 1;
for (int i = 1; i <= year; i++) {
PresentValue = (1 + r) * PresentValue;
}
System.out.println("总额为:" + sum * (1 / PresentValue));
}
// 单利计算本息
static void PrincipalAndInterest() {
Scanner danli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = danli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int Annuityyear = danli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = danli.nextDouble(); // 利率
double sum1 = 1;
sum1 = (1 + r * Annuityyear) * PresentValue;
System.out.println("本息为:" + sum1);
}
//复利年数
static void CPresentValue1() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double year;
year=(sum-PresentValue)/(PresentValue*r);
System.out.println("年数:" + year);
}
//复利年利率
static void PrincipalAndInterest1() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
double r;
r=(sum-PresentValue)/(PresentValue*year);
System.out.println("年利率:" + r);
}
//
static void PrincipalAndInteres() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int Annuityyear = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double sum=0;
for(int i=1;i<=Annuityyear;i++){
sum+=PresentValue*Math.pow(1+r, i);
}
//每月还款金额
System.out.println("总资产" + sum);
}
static void haikuan(){
Scanner fuli = new Scanner(System.in);
System.out.println("请输入贷款金额:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入期限年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入年利率:");
double r = fuli.nextDouble(); // 利率
double mon;
mon=PresentValue*year*r/12;
System.out.println("每月还款金额:" + mon);
}
}
所用语言与工具:Java,Eclipse
代码行:90行
工作量(人时):2个小时
估计完成4、5、6所需代码行与工作量大约要一个小时,而实际工作量是一个半小时。
在写代码的时候,主要问题是公式的不懂,还有一些函数不知道怎么运用,那个窗口做好了发现不会去调用,只能写出没有窗口的代码来。在做了三次实验后,自己学到了以前还不是很懂的代码,对函数的调用也懂了许多。
public class fuli {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner caculate = new Scanner(System.in);
int a = 0;
while (a == 0 || a == 1 || a == 2 || a == 3||a==4||a==5) {
System.out.println("请选择1/2/3/4/5/6:\n1.复利计算终值2.复利计算本金3.单利计算本息4.复利计算年数5.复利年利率6.计算总资产");
int a1 = caculate.nextInt();
if (a1 == 1) {
fuli.CFutureValue();
break;
} else if (a1 == 2) {
fuli.CPresentValue();
break;
}
else if (a1 == 3) {
fuli.PrincipalAndInterest();
break;
}
else if(a1==4){
fuli.CPresentValue1();
}
else if (a1 == 5) {
fuli.PrincipalAndInterest1();
break;
}
else if (a1 == 6) {
fuli.PrincipalAndInteres();
break;
}
else {
System.out.println("\n您的输入错误");
a1 = a;
}
}
}
// 复利计算终值
static void CFutureValue() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double sum = 1;
for (int i = 1; i <= year; i++) {
sum = (1 + r) * sum;
}
System.out.println("总额为:" + sum * PresentValue);
}
// 复利计算本金
static void CPresentValue() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double PresentValue = 1;
for (int i = 1; i <= year; i++) {
PresentValue = (1 + r) * PresentValue;
}
System.out.println("总额为:" + sum * (1 / PresentValue));
}
// 单利计算本息
static void PrincipalAndInterest() {
Scanner danli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = danli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int Annuityyear = danli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = danli.nextDouble(); // 利率
double sum1 = 1;
sum1 = (1 + r * Annuityyear) * PresentValue;
System.out.println("本息为:" + sum1);
}
//复利年数
static void CPresentValue1() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double year;
year=(sum-PresentValue)/(PresentValue*r);
System.out.println("年数:" + year);
}
//复利年利率
static void PrincipalAndInterest1() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入终值:");
double sum = fuli.nextDouble(); // 终值
System.out.println("请输入存款年数:");
int year = fuli.nextInt(); // 存钱年数
double r;
r=(sum-PresentValue)/(PresentValue*year);
System.out.println("年利率:" + r);
}
//
static void PrincipalAndInteres() {
Scanner fuli = new Scanner(System.in);
System.out.println("请输入本金:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入存款年数:");
int Annuityyear = fuli.nextInt(); // 存钱年数
System.out.println("请输入利率:");
double r = fuli.nextDouble(); // 利率
double sum=0;
for(int i=1;i<=Annuityyear;i++){
sum+=PresentValue*Math.pow(1+r, i);
}
//每月还款金额
System.out.println("总资产" + sum);
}
static void haikuan(){
Scanner fuli = new Scanner(System.in);
System.out.println("请输入贷款金额:");
double PresentValue = fuli.nextDouble(); // 本金
System.out.println("请输入期限年数:");
int year = fuli.nextInt(); // 存钱年数
System.out.println("请输入年利率:");
double r = fuli.nextDouble(); // 利率
double mon;
mon=PresentValue*year*r/12;
System.out.println("每月还款金额:" + mon);
}
}
所用语言与工具:Java,Eclipse
代码行:90行
工作量(人时):2个小时
估计完成4、5、6所需代码行与工作量大约要一个小时,而实际工作量是一个半小时。
在写代码的时候,主要问题是公式的不懂,还有一些函数不知道怎么运用,那个窗口做好了发现不会去调用,只能写出没有窗口的代码来。在做了三次实验后,自己学到了以前还不是很懂的代码,对函数的调用也懂了许多。
相关文章推荐
- Fleet Commander项目启动流程
- Linux进程间共享内存机制
- ViewPager子页面的点击事件监听
- MP4(一)-结构
- 初步认识hibernate-----第二篇
- spider for doubantop250 -- scrapy框架
- 重温javascript---方法(array)
- Gradle 1.12 翻译——第十三章 编写构建脚本
- 每周数据结构【2】:删除带头结点的含有x的值的节点
- Untiy PoolManager随手记
- 查看linux是否是虚拟机
- Flask web开发 处理Session
- [leetcode] 271. Encode and Decode Strings 解题报告
- CUBRID学习笔记 28 执行sql脚本文件
- C#基本语法学习(五)
- Android 检查设备是否存在 导航栏 NavigationBar
- python中if __name__ == '__main__': 的解析
- 【分享】通过Excel生成批量SQL语句,处理大量数据的好办法
- 经纬度坐标转换成屏幕坐标
- 0/1背包问题