黑马程序员技术交流社区
标题:
题目8,9
[打印本页]
作者:
唱一些温暖
时间:
2015-12-29 17:32
标题:
题目8,9
/*
* 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
* 例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
*/
import java.util.Scanner;
public class Prog8 {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("输入正整数a:");
int a=in.nextInt();
System.out.println("输入正整数a的最大位数");
int b=in.nextInt();
in.close();
//定义2个计数器
int count=0,d=0;
//使用do while原因,太久未使用,练习下
do{
//d每次循环格式都是a+aa+aaa+aaaa+aa...a
d=(d*10)+a;
//count计算合
count=count+d;
}while((b=b-1)>0);
System.out.println(count);
}
}
复制代码
/*
* 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。
* 例如6=1+2+3.编程找出1000以内的
*/
public class Prog9 {
public static void main(String[] args){
for(int i=2;i<1000;i++){
//定义变量记录因子的合
int sum=0;
//查找因数
for(int j=1;j<i;j++){
if(i%j==0){
sum +=j;
}
}
//进行比较,打印完数
if(sum==i){
System.out.println(i);
}
}
}
}
复制代码
作者:
xiejun
时间:
2015-12-29 18:16
挺好的,赞同
作者:
唱一些温暖
时间:
2015-12-29 18:31
xiejun 发表于 2015-12-29 18:16
挺好的,赞同
谢谢啊~~~~
作者:
Heros
时间:
2015-12-29 21:33
新人一起加油吧!
作者:
我有一个邮箱了
时间:
2015-12-29 21:47
思路很好,学习了
作者:
Heros
时间:
2015-12-29 21:50
新人一起加油吧!
作者:
Heros
时间:
2015-12-29 21:55
新人一起加油吧!
作者:
Heros
时间:
2015-12-29 22:37
System.out.pritnln("新人一起加油!")
作者:
Heros
时间:
2015-12-29 22:39
System.out.pritnln("新人一起加油!")
作者:
Heros
时间:
2015-12-29 22:40
System.out.println("新人一起加油!")
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2