Java 算法 理财计划

题目描述

银行近期推出了一款新的理财计划“重复计息储蓄”。储户只需在每个月月初存入固定金额的现金,银行就会在每个月月底根据储户账户内的金额算出该月的利息并将利息存入用户账号。现在如果某人每月存入k元,请你帮他计算一下,n月后,他可以获得多少收益。

输入
输入描述:
  输入数据仅一行,包括两个整数k(100<=k<=10000)、n(1<=n<=48)和一个小数p(0.001<=p<=0.01),分别表示每月存入的金额、存款时长、存款利息。
输入样例:
1000 6 0.01

输出

输出描述:
  输出数据仅一个数,表示可以得到的收益。
输出样例:
213.53

HINT:时间限制:1.0s 内存限制:256.0MB

解题思路

就是计算利息的思路,不过每个月要把利息加入到总金额中,再计算下个月的金额,最后减去投入的本金就行了。

代码

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        double k=scanner.nextDouble();  //每月存入金额
        double k1=k;                    //记录
        int n=scanner.nextInt();        //月数
        double p=scanner.nextDouble();  //利息
        for (int i=0;i<n;i++){          //依次计算
           k= (k+k*p);                  //把得到的利息加入到金额中
           k+=k1;                       //每月存入
        }
        double k2=k-(n+1)*k1;           //计算利息
        System.out.printf("%.2f%n",k2);         //输出 保留两位小数
    }
}

基本方法

1.输出的小数保留位数

double k2=213.5213131231;
System.out.printf("%.2f%n",k2);    //注意加换行符
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

future furuer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值