从下面链接转载
http://blog.csdn.net/qiucaijuan/article/details/6650925
上链接第一个习题结果有误
上代码:
最后的输出语句 System.out.println("第"+i+"个月有兔子"+arr[i]+"对"+", "+"总数是"+2*arr[i]);
替换成 System.out.println("第"+(i+1)+"个月有兔子"+arr[i]+"对"+", "+"总数是"+2*arr[i]);
============================================
/**
* 求sub=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
* 例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
* 注意:a是取1-9之间的数字,由用户来录入决定,具体要几个数相加也是由用户来决定,
* 规律:a为基数,每循环一次它都会改变(变大10倍),但尾数不变
* sum=(sum*10+a),因此尾数得用一个变量来保存它
*/
public class Test6 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入任意数字1~9之间");
int x=sc.nextInt();
System.out.println("请输入任意次数1~9之间");
int y=sc.nextInt();
Example2(x,y);
}
public static void Example2(int a, int count) {
int sum=0;
int sub=0;
for(int i=0; i<count; i++) {
if((a>0 && a<10)) {
sum=sum*10+a;
sub+=sum;
if(i==count-1) {
System.out.print(sum);
System.out.print("="+sub);
}else {
System.out.print(sum+"+");
}
}else {
System.out.println("输入有误:"+a+","+count);
break;
}
}
}
}
最终结果: