你知道java求求s=a+aa+aaa+aaaa+aa...a的值应该如何实现吗?下面一起来看看这道java基础编程题的解法吧。
一、题目
求s=a+aa+aaa+aaaa+aa...a的值。
注:
在这当中,a是一个数字。
例:
2+22+222+2222+22222(这个时候一共有5个数相加),几个数相加有键盘控制。
二、思路
最关键的步骤在于,将每一项的值计算出来。
三、代码实现
import java.util.Scanner; public class Prog8 { public static void main(String[] args) { System.out.print("求s=a+aa+aaa+aaaa+...的值,请输入a的值:"); Scanner scan = new Scanner(System.in) .useDelimiter("\s*"); //以空格作为分隔符 int a = scan.nextInt(); int n = scan.nextInt(); scan.close(); //关闭扫描器 System.out.println(expressed(2, 5) + add(2, 5)); } //求和表达式 private static String expressed(int a, int n) { StringBuffer sb = new StringBuffer(); StringBuffer subSB = new StringBuffer(); for (int i = 1; i < n + 1; i++) { subSB = subSB.append(a); sb = sb.append(subSB); if (i < n) sb = sb.append("+"); } sb.append("="); return sb.toString(); } //求和 private static long add(int a, int n) { long sum = 0; long subSUM = 0; for (int i = 1; i < n + 1; i++) { subSUM = subSUM * 10 + a; sum = sum + subSUM; } return sum; } }
以上就是java求出s=a+aa+aaa+aaaa+aa...a的值的代码实现方式了。
大家可以仔细的看一看,以上代码仅供参考,更多java基础编程题,欢迎继续来奇Q工具网的java实例栏目了解。
推荐阅读: