【JAVA练习题 04】【控制流程】JAVA的BREAK语句--百万富翁
本帖最后由 dlnb526 于 2020-2-20 10:10 编辑习题来源:how2j
原题目答案解析均需积分,本贴下答案为自己解答提示,如果大神们有更好的做法还请不吝指教。
static/image/hrline/5.gif
【JAVA练习题 04】【控制流程】JAVA的BREAK语句--百万富翁
假设你月收入是3000,除开平时花销,每个月留下1000块钱进行投资。
然后你认真的钻研了 《股票和基金 21天从入门到精通》,达到了每年20%的投资回报率。
那么问题来了,以每个月投资1000块钱的节奏,持续投资多少年,总收入达到100万
(复利计算按照每年12000投入计算,不按照每月计息)
复利公式:
F = p* ( (1+r)^n );
F 最终收入
p 本金
r 年利率
n 存了多少年
假设情景一:
p = 10000
r = 0.05
n = 1
解读:
本金是10000
年利率是5%
存了一年 1次
复利收入 10000*( (1+0.05)^1 ) = 10500
假设情景二:
p = 10000
r = 0.05
n = 2
解读:
本金是10000
年利率是5%
存了两年
复利收入 10000*( (1+0.05)^2 ) = 11025
自己思考动手之后再看答案哦!
static/image/hrline/4.gif
参考解答:
**** Hidden Message *****
点击加入订阅淘帖:【JAVA练习题】第一季
static/image/hrline/line5.png
【JAVA练习题】【索引贴】
https://fishc.com.cn/thread-157183-1-1.html
aaa 本帖最后由 肚子好饿啊 于 2020-3-17 20:20 编辑
这题 他说3000剩下1000 那应该就和3000没关系了啊
--------------
确实 这题还干扰的 dd 0
复
{:5_102:} aaa 康康
不错不错 自己的方法....新手入门,望多多指教{:10_266:}{:10_266:}{:10_266:}
import java.util.Scanner;
//import java.util.Scanner;
public class 百万富翁1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner (System.in);
double F = 0;
int p = 12000;
int n = 0;
while ( F <= 1000000)
{
F =(F+12000) * 1.2;
n++;
System.out.println(n);
}
System.out.println("需要经过"+ n +"年后总收入达到100w");
}
}
答案 希望看到,谢谢 写完了 package code_test;
//假设你月收入是3000,除开平时花销,每个月留下1000块钱进行投资。(复利计算按照每年12000投入计算,不按照每月计息)
// 然后你认真的钻研了 《股票和基金 21天从入门到精通》,达到了每年20%的投资回报率。
// 那么问题来了,以每个月投资1000块钱的节奏,持续投资多少年,总收入达到100万
// 复利公式:
// F = p* ( (1+r)^n );
// F 最终收入; p 本金; r 年利率;n 存了多少年
//
// 假设情景一:
// p = 10000
// r = 0.05
// n = 1
// 解读:本金是10000,年利率是5%,存了一年 1次;复利收入 10000*( (1+0.05)^1 ) = 10500
//
// 假设情景二:
// p = 10000
// r = 0.05
// n = 2
// 解读:本金是10000,年利率是5%,存了两年;复利收入 10000*( (1+0.05)^2 ) = 11025
public class day4_break_跳出循环 {
public static void main(String[] args) {
calInvestment();
}
// public static void calInvestment(){
// int sum=0;int n =1;int p=12000; float r = 0.05f;
// while (sum <1000000){
// sum +=p * Math.pow(1.2,n);
// n+=1;
// }
// System.out.println("当前是第"+ n +"\n累计存款:"+sum );
// }
public static void calInvestment() {
//按照题意,精简一下:每年投入12000元,每年20%回报率,到100万,break
double input =12000; //每年投入12000元
double reward = 0.2;//每年的利润率
double sum = 0;//记录总收入
int year = 1;//对年份进行初始化
while(year>0) {
sum = (sum + input) * (1 + reward);
if (sum >= 1000000)
break;
year++;
}
System.out.println(year+"年后总收入达到100万");
}
}
回复
{:5_90:}
页:
[1]