标题: 有大神解答下吗,一个人在宿舍没人问,求解答 [打印本页] 作者: gaol 时间: 2016-9-19 22:13 标题: 有大神解答下吗,一个人在宿舍没人问,求解答 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字,由键盘输入。
* 例如5+55+555+5555+55555(此时共有5个数相加),a的值为几就有几个数相加。作者: 细听风语为梧桐 时间: 2016-9-19 22:32
我就大概知道用递归,作者: 疯狂的麦克斯 时间: 2016-9-19 22:45
利用StringBuilder吧作者: 疯狂的麦克斯 时间: 2016-9-19 22:46
我有答案要不要给你 作者: 不羁的码农 时间: 2016-9-19 23:25
照着要求写了一下,自测可行,方法较复杂感觉可以优化
public class Test1 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
System.out.println("请输入数字");
String num = sc.nextLine();
System.out.println("请输入最长的长度");
int length = sc.nextInt();
int sum = get(num,length);
System.out.println(sum);
}
private static int get(String num, int length) {
String line ="";
int sum = 0;
StringBuffer sb = new StringBuffer();
for(int i = 0;i<length;i++){
line = line+ num;
sb.append(line+",");
}
String[] strs = sb.toString().split(",");
for (String string : strs) {
sum = sum + Integer.parseInt(string);
}
return sum;
}
}