如果指定基数为2,次数为5, 则求2+22+222+2222+22222的值

分析

这个问题乍眼一看是有点麻烦的,但是静下来仔细分析还是有一些门路的。
我们从每一项中可以总结出规律:

项数n 值a 拆分
1 2 0*10+2=2
2 22 2*10+2=22
3 222 22*10+2=222
4 2222 2222*10+2=2222
5 22222 22222*10+2=22222
…… …..
n 2222222… [第(n-1)项的a]*10+a

将这个问题分析透彻,整个问题就很简单了。
首先我们需要设定两个变量,分别为a和sum。变量a是用来存放计算出来每一项所对应的值,而变量sum则是起到了一个累加的作用。至于循环结构的话就用简单的for()循环来完成,题目要求是有5项,则循环次数为5次,那么我们就可以写出以下的源代码

package com.tencentos;
public class Week1homework3 {
public static void main(String[] args) {int a=0,sum=0;for(int n=1;n<=5;n++){a=(a*10)+2;sum+=a;}System.out.print("sum="+sum);}
}

每当变量a进行完运算后都会存放到变量sum当中,这里的sum起到了一个累加器的作用,最终输出变量sum就可以了。输出的结果如下

其实在这个题的基础上,我们可以进一步的升级,基数与累加次数都可以我们人为的设定,进而可以增加与使用者之间的交互性。在这里我们可以设定基数为x,累加次数定为y,这里的x与y都是使用者所敲入的,其实也没什么难度,就是在上述代码中加入Scanner工具即可,不过微微这么一变动,整个程序就变的不那么死板了。修改后的源代码如下

package com.tencentos;
import java.util.Scanner;
public class Week1homework3 {
public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.print("Please input the basic number:");int x=scan.nextInt();System.out.print("Please input the times:");int y=scan.nextInt();int a=0,sum=0;for(int n=1;n<=y;n++){a=(a*10)+x;sum+=a;}System.out.print("sum="+sum);scan.close();       }
}

测试结果如下

Enjoy it~

利用JAVA实现2+22+222+2222+22222的问题相关推荐

  1. Java实现2+22+222+2222+22222

    import java.util.Scanner; public class 求 { /** 规律:* 2=0*10+2* 22=2*10+2* 222=22*10+2* ...* 我们发现后一项始终 ...

  2. 利用程序计算2+22+222+2222+22222的和

    第一次循环:2=0*2+2 第二次循环:22=2*10+2 第三次循环:222=22*10+2 第四次循环:2222=222*10+2 第五次循环:22222=2222*10+2 程序:

  3. 求S=a+aa+aaa+aaaa+...+aaaa..的值,a是个数字 * 例如:2+22+222+2222+22222(此时共有5个数相加), 几个数相加由键盘控制

    import java.util.Scanner; /*求S=a+aa+aaa+aaaa+...+aaaa..的值,a是个数字* 例如:2+22+222+2222+22222(此时共有5个数相加),* ...

  4. ACMNO.9求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字。 例如:2+22+222+2222+22222(n=5),n由键盘输入。 输入 n 输出 a=2 时

    题目描述 求Sn=a+aa+aaa+-+aa-aaa(有n个a)之值,其中a是一个数字. 例如:2+22+222+2222+22222(n=5),n由键盘输入. 输入 n 输出 a=2 时的Sn 样例 ...

  5. 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加...

    public class ShuZiDieJia {/*** @description * 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+222 ...

  6. 求Sn = a+aa+aaa+...+aaaaaa(n个a),其中a是一个数字,n代表a的位数,例如 2+22+222+2222+22222(此时n=5),n由键盘输入。

    求Sn = a+aa+aaa+...+aaaaaa(n个a),其中a是一个数字,n代表a的位数,例如 2+22+222+2222+22222(此时n=5),n由键盘输入. #include<st ...

  7. 若n = 2; m = 5 则 计算 2 + 22 + 222 + 2222 + 22222的和 ;若n = 3; m = 4 则 计算 3 + 33 + 333 + 3333的和

    private static void f4() {//7. 若n = 2; m = 5 则 计算 2 + 22 + 222 + 2222 + 22222的和//若n = 3; m = 4 则 计算 ...

  8. 例如a =2,n=5 则s=2+22+222+2222+22222

    1.例如a =2,n=5 则s=2+22+222+2222+22222 实现过程及思路 先分析实现思路 1初始化每一项的值为0 第一项的值等于 0*10+a 第二项的值等于 第一项的值*10+a 第三 ...

  9. 求2+22+222+2222+22222+...+2...2的和,数字的数量由控制台输入

    public class HardThree {// 求2+22+222+2222+22222+...+2...2的和,数字的数量由控制台输入public static void main(Strin ...

最新文章

  1. 怎么将文件转换成linux文件,Linux将DOS文件格式转换成UNIX文件格式的方法
  2. stl的complex(二)
  3. Linux安装Gradle
  4. cocos android-1,cocos2dx在windows下开发,编译到android上(1)
  5. 如何才能成为超级人类,驯服人工智能?
  6. java zip4j 内存文件和磁盘文件 压缩和加密
  7. 我的第一个博客正式注册
  8. Atitti 存储引擎支持的国内点与特性attilax总结
  9. 【企鹅电竞直播源】浏览器抓取真实直播源地址(纯前端JS PHP解析源码)
  10. 2021国内地址数据库表mysql
  11. OpenPose 命令行说明
  12. 为 WSO2 ESB 5.0.0 集群配置 MySQL 数据库
  13. 转:著名的100个管理定律点评6 -- 决策(上)
  14. 【js学习笔记】去除省、市、区、特别行政区、自治区
  15. vue通过腾讯Web(H5)播放器 ,实现直播点播
  16. 脉冲宽度调制(Pluse Width Modulation)
  17. Halcon一些功能算子
  18. PAT basic level 答案+解题思路+难点 (个人刷题记录)
  19. ssm垃圾分类管理系统
  20. HTML 轻松显示蒙古文

热门文章

  1. 十大销售管理软件排行榜
  2. 计算机二级java真题 百度云,计算机二级Java试题及答案
  3. nCode:DesignLife案例教程三
  4. WPF开发常用的工具
  5. iCMS前台存储型XSS漏洞
  6. ?php exit('dedecms');?,包罗万象的织梦CMS的图片处理类库
  7. 100的阶乘实现方法(C语言)
  8. 用Python实现一个CPU跑分程序
  9. 基于大数据的房价分析
  10. 各省绿色金融指数(2001-2020年)