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 ...
随机推荐
- Linux入门——shell脚本常用信息小结
1.shell中的$默认变量 $n $1 表示第一个参数,$2 表示第二个参数 ... $# 命令行参数的个数 $0 当前 ...
- 20155215 2006-2007-2 《Java程序设计》第2周学习总结
20155215 2006-2007-2 <Java程序设计>第2周学习总结 教材学习内容总结 第三章主要讲述了JAVA程序编写中的一些基本语法.其实看了第三章之后我就感觉到,C语言不愧是 ...
- 20155235 《Java程序设计》 实验五 Java网络编程及安全
20155235 <Java程序设计> 实验五 Java网络编程及安全 实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.设计安全传输系统. 实验要求 没有Linu ...
- 20155332 mybash的实现
mybash 的实现 码云链接 https://gitee.com/bestiisjava2017/laura5332/blob/master/%E4%BF%A1%E6%81%AF%E5%AE%89% ...
- 20145226夏艺华 网络对抗技术EXP4 恶意代码分析
20145226夏艺华 网络对抗技术EXP4 恶意代码分析(未完成版) 回答问题 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作 ...
- tomcat如何禁止显示目录和文件列表
打开 tomcat的安装目录/conf/web.xml 文件 找到: <servlet> <servlet-name>default</servlet-name& ...
- Spring框架实例
一,介绍 Spring框架核心是Ioc控制反转,只要在容器中注册以后,依赖从容器中获取即可 简单的理解:需要一个值,在程序中定义一个变量,但是不赋值,只设置set方法,运行时,容器为该变量赋值 二,实 ...
- 身份证扫描识别/身份证OCR识别的正确姿势,你get到了吗?
自从国家规定电信实名制之后,实名制已经推广到各个领域:办理通信业务需要实名制.银行开户需要实名制.移动支付需要实名制,就连注册个自媒体账户都需要实名制. 而实名制的背后,就是身份证信息的采集和录入验证 ...
- 自己做的一个固定大小对象内存池,效率大概为原始的new/delete的2倍
提升不高,不过好处是可以多次申请小对象,一次释放.(只适应于无动态申请资源的class) vs2012测试情况如下: // CHchFixLenMemPool.h #pragma once #ifnd ...
- Python环境搭建和pycharm安装
Python环境搭建和pycharm安装 本人安装环境为Windows10系统,下载的Python版本为3.4社区版本,可参考 1.下载Python3.4版本 官网:https://www.pytho ...