求s=a+aa+aaa+……+aa...a

求s=a+aa+aaa+……+aa…a的值,其中a是一个数字,例如a=2时,
求序列2+22+222+…+222222的值,几个数相加由键盘来控制。
程序分析:关键是计算出每一项的值。
1.计算每一项的值。

//m 表示数是由m组成的,n表示这个数字在序列中的位置
public static long getData(int m,int n) {
        //生成诸如222  22222这样的数  m=2时
        long  s =0;
        for (int i = n; i >=0; i--) {

               s += m*(Math.pow(10, i-1));
              // System.out.println(s);
        }

        return s;

    }

2,用键盘控制几个数相加,并计算这几项的和。

Scanner in = new Scanner(System.in);
        System.out.println("求输入要求的数列中数值的个数:");
        int num = in.nextInt();
        System.out.println("要求的数列中数值的个数为:");
        System.out.println(num);
        long sum = 0;
        int m =2;//m表示数字全部由m组成,本例取m =2
        for (int i = 1; i < num+1; i++) {

            sum+=getData(m,i);
        }

        System.out.println("这样的"+num+"个数值组成序列的和为:"+sum);

输出结果如下:
求输入要求的数列中数值的个数:
3
要求的数列中数值的个数为:
3
这样的3个数值组成的序列的和为:246

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值