不论用什么语句实现它,首先我们要搞清楚它的逻辑,一是8+88+888+···的累加,二是每一项的值如何求。🆗奔着这两点去。
先解决如何计算每一项的值,再计算累加的问题。
public class Demo6 {
public static void main(String args[]) {
long m,n=0,g=10,t=1;
for(int i=1;i<=10;i++) {
m=8*t; //求出累加项每一项的值
t=g+t; //求出累加项每一项的值
g=10*g; //求出累加项每一项的值
n=m+n; //求出累加项的值
}
System.out.println(n);
}
}
这里是把每一项拆分成8和111····之间相乘。