您的位置:首页 > 编程语言 > Java开发

03_JAVASE_语法基础下.ppt_练习

2014-10-30 23:32 567 查看
练习1:
通过键盘输入一个数字,打印其所有因子并对所有因子求和(因子不包含自己)

因子就是能被这个数整除的数字
例如:10的因子有 12 5
public class TestScanner
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个整数:");
int i = scan.nextInt();//i就是从键盘上输入的整数
System.out.print(i+"的因子有:");
int sum = 0;
for (int j = 1; j <i; j++) {
if (i%j==0) { //i除j能余0,j就是因子
sum += j;
System.out.print(j+" ");
}
}
System.out.println();
System.out.println(i+"的因子和为"+sum);
}
}
练习2: 通过键盘输入一个数字,判断该数字是否为质数
质数:只能被1和自己整除的数字
本来的答案是:
public class TestScanner { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("请输入一个整数:"); int i = scan.nextInt(); for (int j = 2; j < i; j++) { if (i % j == 0) { System.out.print(i + "不是质数"); return;//刚开始不知道使用return。一直没成功。 //当然,现在知道用。但具体使用还是得等老师讲授。 } } System.out.println(i + "是质数"); }}但是后来发现“0”和“1”既不是质数也不是合数,而输出“0”和“1”却都显示为质数,因此,只好在System.out.println(i + "是质数");这句话上边添加一句if (i == 1||i==0) { System.out.println(i + "即不是质数也不是合数"); } else测试后发现,这样子应该就可以了吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息