1 Star 1 Fork 0

heeexy/CoreJava1 Practice

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
P87 利用二维数组来求不同利率下的余额 1.99 KB
一键复制 编辑 原始数据 按行查看 历史
package hello;
import java.util.*;
import java.math.*;
public class heeeeeee
{
public static void main(String[] args)
{
Scanner in= new Scanner(System.in);
// 定几个常量
final double STARTRATE = 10;
final int NRATES = 6;
final int NYEARS = 10;
// 声明利率数组 10% 11% 12% 13% 14% 15%
double[] interestRate = new double[NRATES];
for(int j=0;j<interestRate.length;j++)
{
interestRate[j]=(STARTRATE+j)/100;
}
// 声明结果组balances
double[][] balances= new double[NYEARS][NRATES];
// 每组NYEARS=0时,balances就是10000。然后balances0】【j】就知道是10000,可以在下一个for里用。
for(int j=0;j<balances[0].length;j++)
{
balances[0][j]=10000;
}
// 求出每个balances,方法如下:
// i1开始到最下一行
// j0开始到最右一列
// 去年余额为balancesi-1】【j
// 利润为去年余额*利率interestRatej
// 今年余额就是去年的+利润。
for(int i=1;i<balances.length;i++)
{
for(int j=0;j<balances[i].length;j++)
{
double oldBalance=balances[i-1][j];
double interest = oldBalance*interestRate[j];
balances[i][j]=oldBalance+interest;
}
}
// 先打一行利率
for (int j=0 ;j<interestRate.length;j++)
{
// 下面的%9.0f表示9的长度,0位小数(后面有百分号占一格,所以比下面的10.2f少一格)。接着%%表示后面接个%
System.out.printf("%9.0f%%",100*interestRate[j]);
}
// 换行的方法!
System.out.println();
// 输出二维数组的方法!!!!
for(double[]row:balances)
{
for(double b :row)
{
System.out.printf("%10.2f", b);
}
// 换行的方法!
System.out.println();
}
}
}
//利用两个数组,多个变量求每年余额。
//注意利用printf来格式化输出,包括打印百分号以及选择长度来对齐。
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/heeexy/core-java-p55.git
[email protected]:heeexy/core-java-p55.git
heeexy
core-java-p55
CoreJava1 Practice
master

搜索帮助