复利

时间:2017-10-20 23:04:22

标签: java

import java.util.*;
public class Project3{

public static void main(String[] args) 
{

Scanner key = new Scanner (System.in);

double rate = 0.05;
double annually, monthly, daily;
double balance;
int year = 10 ;

System.out.println("Enter the amount you will like to deposit or type exit to end.");
int deposit = key.nextInt();

annually = deposit * Math.pow((1 + rate/1),year); 
monthly = deposit * Math.pow((1 + rate/12),year); 
daily = deposit * Math.pow((1 + rate/365),year);

while (deposit)
{

}




System.out.println(annually);
System.out.println(monthly);
System.out.println(daily);
}
}

这就是我现在拥有的。我想要完成的是创建一个循环来添加下一个结果的第一个结果。同时制作一个公式而不是三个公式来查找每年,每月和每日。

3 个答案:

答案 0 :(得分:1)

首先,要求别人写出你的作业是非常不道德的,从长远来看对你没有帮助。如果你不关心长远,考虑选择不同的课程。在职业生涯中,您需要自己编写代码。

其次,要真正回答你的问题,这里有一些提示:

您似乎想要从用户收集值(存款),然后计算所述值的复利。在用户说退出之前,您的程序也不需要退出。即他们想要计算一组数字的CI。

第一步是检查用户的值。如果是数字,则对其进行计算。如果是String,则检查它是否为“exit”。在Java中,这相当于写出一个if语句,并使用非常有用的“instanceof”关键字。如果您还没有了解这一点,请给this一个阅读,或者询问您的老师。

对于计算部分,您只需对用户的输入进行计算,而输入不是设置为“退出”的字符串。

最后,打印出你的计算结果。

就是这样。你的代码已经有了计算公式,所以你只需要编写用于处理用户输入的逻辑。

答案 1 :(得分:0)

import java.util.Scanner;
import java.lang.Math;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("How much money you want to deposit?");
        int principle = sc.nextInt();
        System.out.println("what is the rate you want?");
        float rate = sc.nextFloat();
        System.out.println("After how many years, you want to see your money?");
        int year = sc.nextInt();
        System.out.println("How many compounds in a year?");
        int partialTime = sc.nextInt();
        double b = year * partialTime;
        double a = 1 + (rate/(partialTime*100));
        double x = principle * (Math.pow(a,b));
        System.out.println("Your interest in given time would be " + x);
        }
    }

答案 2 :(得分:-2)

一些建议 - 由于您要针对access_tokenString类型检查用户输入,您可以定义一个int类型变量来保存用户输入,然后执行String / try将其解析为catch,如果不是Integer则检查输入是否等于Integer(使用"exit"法)。

String.equals()

根据您希望输出的方式,您可以轻松调整循环的范围,以在每次有效import java.util.*; public class Project3{ public static void main(String[] args) { Scanner key = new Scanner (System.in); double rate = 0.05; double annually = 0, monthly = 0, daily = 0; double balance; int year = 10, deposit = 0 ; String userinput = ""; do { try { System.out.println("Enter the amount you will like to deposit or type exit to end."); userinput = key.nextLine(); deposit = Integer.parseInt(userinput); } catch (Exception e){ if (!userinput.equals("exit")){ System.out.println("Didn't recognize that input, please try again..."); } else{ break; } } } while (!userinput.equals("exit")); annually += deposit * Math.pow((1 + rate/1),year); monthly += deposit * Math.pow((1 + rate/12),year); daily += deposit * Math.pow((1 + rate/365),year); System.out.println(annually); System.out.println(monthly); System.out.println(daily); } } 输入后显示金额,或在用户输入deposit后仅显示一次

希望这有帮助。