A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© maxwell247 中级黑马   /  2015-9-28 00:14  /  322 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


从网上找到一份编程练习题,我决定将里面的题目全都做一遍。

/*
        题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
        例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。 ?
*/

import java.util.Scanner;

class ZuHeShuZi {
        public static void main(String[] args) {
                System.out.println("本程序将计算形如s=a+aa+aaa+aaaa+aa...a的值\n--------------------------------");
                Scanner sc=new Scanner(System.in);
                int a=0;
                int n=0;
                //检查非法值
                while(true){
                        System.out.print("请输入a的值(1~9之间):");
                        a=sc.nextInt();
                        if (a<1 || a>9){
                                System.out.println("输入不合法!");
                                continue;
                        }
                        break;
                }
                //检查非法值
                while(true){
                        System.out.print("请输入要计算数字的个数n(大于0):");
                        n=sc.nextInt();
                        if (n<=0){
                                System.out.println("输入不合法!");
                                continue;
                        }
                        break;
                }
                long sum=ZuHeShuZi(a,n); //输出表达式和结果
                System.out.println("\b="+sum); //利用退格,抹掉最后一个+号
        }

        //生成表达式并求和
        public static long ZuHeShuZi(int a,int n){
                long sum=0L;
                long temp=0L;
                for (int i=1; i<=n; i++){
                        temp=temp*10+a;
                        System.out.print(temp+"+");
                        sum+=temp;
                }
                return sum;
        }
}

/*
        输出结果
        本程序将计算形如s=a+aa+aaa+aaaa+aa...a的值
        --------------------------------
        请输入a的值(1~9之间):2
        请输入要计算数字的个数n(大于0):5
        2+22+222+2222+22222=24690
*/

4 个回复

正序浏览
yiranpanda 来自手机 中级黑马 2015-9-28 11:15:08
报纸
学习啦真给力
回复 使用道具 举报
学习了。。。。。。。。
回复 使用道具 举报
好厉害,楼主
回复 使用道具 举报
学习了.. 3Q!!~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马