0330复利计算java版
package compounding;
import java.util.Scanner;
public class compounding1_1 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//tip();
while (true) {
menu();
System.out.printf("请输入你要选择的功能(0~7):");
int n = scanner.nextInt();
if (n >= && n <= ) {
if (n == )
break;
switch (n) {
case :
Year_end_value();
break;
case :
principal();
break;
case :
danli();
break;
case :
years();
break;
case :
APY();
break;
case :
Investment();
break;
case :
Repayment();
break;
case :
n = ;
break;
}
}
}
}
static Scanner scanner = new Scanner(System.in);
static void menu()// 菜单
{
System.out.printf("\t\t|-----------------------------------|\n");
System.out.printf("\t\t| welcome |\n");
System.out.printf("\t\t|-----------------------------------|\n");
System.out.printf("\t\t| 1、计算年复利终值 |\n");
System.out.printf("\t\t| 2、计算本金 |\n");
System.out.printf("\t\t| 3、单利计算 |\n");
System.out.printf("\t\t| 4、计算年份 |\n");
System.out.printf("\t\t| 5、计算年利率 |\n");
System.out.printf("\t\t| 6、等额定投 |\n");
System.out.printf("\t\t| 7、等额还款 |\n");
System.out.printf("\t\t| 0、退出系统 |\n");
System.out.printf("\t\t|-----------------------------------|\n");
}
static void principal()// 计算本金
{
int year, n;
double q, F, P;
System.out.printf("复利终值:");
F = scanner.nextDouble();
System.out.printf("年利率:");
q = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年复利次数:");
n = scanner.nextInt();
//P = capital_formula(F, i, N, m);
P = F / Math.pow(( + q / n), year * n);
System.out.println("年复利终值为" + F + "需要本金为:" + P);
}
static void Year_end_value()// 计算复利终值
{
int year, n;
double q, F, P;
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("年利率:");
q= scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年复利次数:");
n = scanner.nextInt();
F = P * Math.pow(( + q / n), year * n);
System.out.println("复利终值:" + F);
}
static void danli()// 单利计算
{
int year;
double q, F, P;
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("年利率:");
q = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
F = P + P * year * q;
System.out.println("本息和为:" + F);
}
static void years()// 求年份
{
int year, n;
double q, F, P;
System.out.printf("复利终值:");
F = scanner.nextDouble();
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("年利率:");
q = scanner.nextDouble();
System.out.printf("年复利次数:");
n = scanner.nextInt();
year = (int) (Math.log(F / P) / Math.log( + q / n) / n);
System.out.println("从" + P + "到" + F + "需要" + year + "年");
}
static void APY()// 计算年利率
{
int year, n;
double q, F, P;
System.out.printf("复利终值:");
F = scanner.nextDouble();
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年复利次数:");
n = scanner.nextInt();
q = n * (Math.pow(F / P, 1.0 / (year * n)) - );
System.out.println("从" + P + "到" + F + "需要" + q);
}
static void Investment()// 计算等额投资
{
int n;
System.out.printf("\t\t1:按年投资\n\t\t2:按月投资\n");
System.out.printf("请选择你要的功能<1|2>:");
n = scanner.nextInt();
if (n == ) {
Investmentyear();
} else if (n == ) {
Investmentmonth();
} else {
System.out.printf("输入有误!\n");
}
}
static void Investmentyear(){
int year;
double q, final_value, P;
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年利率:");
q = scanner.nextDouble();
final_value = P * (Math.pow( + q, year) - ) /q;
System.out.println(year + "年后的总产值:" + final_value);
}
static void Investmentmonth(){
int year;
double q, final_value, P;
System.out.printf("存入本金:");
P = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年利率:");
q = scanner.nextDouble();
final_value = P * * ( + q) * (Math.pow( + q, year) - ) / q;
System.out.println(year + "年后的总产值:" + final_value);
}
static void Repayment()// 等额还款
{
int year;
double q, F, refund;
System.out.printf("贷款金额:");
F = scanner.nextDouble();
System.out.printf("存入年限:");
year = scanner.nextInt();
System.out.printf("年利率:");
q = scanner.nextDouble();
refund = F * q / ( * ( + q) * (Math.pow( + q, year) - ));
System.out.println("贷款" + F + "每月需要还款" + refund);
}
}
0330复利计算java版的更多相关文章
- 复利计算--web版--总结--软件工程
复利计算项目 估计用时 实际用时 时间(小时) 5.5小时 6.5小时 总共代码行 500 550 功能包含 单利/复利计算,本金计算,求投资年限,求投资项目利率估计 (计算利息和,计算时间,计算 ...
- 简单复利计算java板
一.要求: 1.客户说:帮我开发一个复利计算软件. 2如果按照单利计算,本息又是多少呢? 3.假如30年之后要筹措到300万元的养老金,平均的年回报率是3%,那么,现在必须投入的本金是多少呢? 4.利 ...
- 复利计算APP版-----娱乐一下
先不说那么多,下载地址来一个:http://pan.baidu.com/s/1eSz2GBg 目前版本号为:0.3 lastest 软件上线了!三平台首发! 下载地址: http://shouji.b ...
- 个人所得税计算java版
年关将至,该到了发年终奖的时候了.所以就到网上去找下,个税计算器,但是发现做的有点像病毒网站似的.所以计算结果也不太敢信,于是琢磨着,要不自己动手写一个个税计算器吧. 说干就干,先上国家税务局了解了下 ...
- 复利计算--4.0 单元测试之JAVA版-软件工程
复利计算--4.0 单元测试-软件工程 前言:由于本人之前做的是C语言版的复利计算,所以为了更好地学习单元测试,于是将C语言版的复利计算修改为JAVA版的. 一.主要的功能需求细分: 1.本金为100 ...
- 0330 复利程序c语言版转java版 会逐渐更进版
import java.util.Scanner; public class compounding { public static void main(String[] args) { menu() ...
- 复利计算C转java版
import java.util.Scanner; public class Compound_int { public static void main(String[] args) { tip() ...
- 复利计算器4.0 【java版】
import java.util.Scanner; public class FuLi { public static void main(String[] args) { ; Scanner sca ...
- 复利计算5.0(改成Java版本)与 单元测试
//由于C语言版本不方便单元测试,所以改成了java版本,部分代码如下:import java.util.Scanner; public class FuLi{ public static void ...
随机推荐
- 大数据调错系列之hadoop在开发工具控制台上打印不出日志的解决方法
(1)在windows环境上配置HADOOP_HOME环境变量 (2)在eclipse上运行程序 (3)注意:如果eclipse打印不出日志,在控制台上只显示 1.log4j:WARN No appe ...
- (补题 杭电 1008)Elevator
Elevator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- wav2midi 音乐旋律提取算法 附可执行demo
前面提及过,音频指纹算法的思路. 也梳理开源了两个比较经典的算法. https://github.com/cpuimage/shazam https://github.com/cpuimage/Aud ...
- Visual SVN 备份
-----------2018.11.27更新-------------- 这两天把SVN的服务器重做了,按照之前的LOAD,DUMP的方法备份恢复.发现了以下问题: 1,时间比较长,备份和恢复都很长 ...
- 关于 idea 快捷键 alt + f7 无法使用的一些尝试
1. 概述 问题 使用 idea 时, 快捷键 alt + f7 无法生效 环境 OS: win10 idea: idea 2018.1.5 GeForce Experience: 3.17.0.12 ...
- 20155235 2017-2018-1 《Java程序设计》第2周学习总结
20155235 2017-2018-1 <Java程序设计>第2周学习总结 教材学习内容总结 3.1类型.变量与运算符 类型 基本类型 类类型 变量 基本规则 不可以用数字作为开头,不可 ...
- 20155308 2016-2017-2《Java程序设计》课程总结
20155308 2016-2017-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:回答"我专业吗.我的老师.师生关系.代码问题"四个问题. 预备作业2 ...
- js页面动态时间展示
效果图: 具体代码 js代码 <script type="text/javascript"> var t = null; t = setTimeout(time,100 ...
- EF中一对多的自反关系设置
对于一般的目录树,通常就是一对多的自反关系,一般会有一个PID,引用于这个ID,实体类代码类似于下: public partial class Catalog { public Cat ...
- MySQL授权root
1. 改表法. 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 " ...