1、思路分析

首先应该得到一个数的因子,怎么得到呢?一个个数的试

定义这个数为a,从1试到a-1

1 public static int factorSumMethod(int a){
2             int factorSum = 0;
3             for(int i=1;i<a;i++){
4                 if(a%i==0){
5                     factorSum+=i;
6                     }
7                 }
8             return factorSum;
9             }

1             for(int j=1;j<=1000;j++){
2                 if(j==factorSumMethod(j)){
3                     System.out.println(j);
4                     }
5                 }

第一个方法为得到任意一个数的因子之和,第二个循环是从1到1000判断是否为完数。

运行结果

2、思路分析

首先要得到输入的这个数以内的所有质数,我们先从里面往外想,如何判断一个数是否为质数

质数的条件是:没有除1和自身以外的因子

也就是说判断是否整除(余数是否为0)的那个条件不能为真,要是为真就不是质数了

定义这个数为 a 从2遍历到 a-1

boolean prime(int a){

if(a==1||a==2){

return true;

}

for(int i=2;i<=a-1;i++){

if(a%i==0){

return false;

}

}

return true;//只要执行到这里一定是质数

}

定义输入的数为 b  首先要找出b以内的所有质数

循环从1到b-1   得到的每个质数和其他质数相加一遍,看是否等于b

int[] prime;

int i = 0;

for(int j=1;j<b;j++){

if(prime(j)){

prime[i++]=j;

}

}

for(){

}

不会了。。。

从网上找的100以内的:

 1 public static boolean Pan(int m) { // 定义静态返回为布尔型的函数Pan
 2             for(int i=2; i <= Math.sqrt(m); i++) { // 判断是否为素数
 3                 if(m % i == 0)//判断素数这个很简单,这个数除以从2开始到小于等于这个数的平方根的最大整数,如果余数为0,就不是素数
 4                     return false;//Math.sqrt(m)这个是开平方,%是取余,false你都拼错了
 5             }
 6             return true;
 7         }
 8
 9         public static void main(String[] args) {
10             int n=0;//这里应该是n吧,看看你写的
11             for(int i=6; n <= 100; n+=2) {//n从0开始,每次自增2,就是都是偶数了;n <= 100;小于等于100,n+=2每次自增2
12                 for(int a=3; a <= n / 2; a+=2) {//因为偶数不是质数,偶数-偶数还是偶数,所以a从3开始就可以了,每次自增2,a就都是奇数
13                     if((Pan(a)) && (Pan(n - a))) {//先判断a是不是质数,再判断n-a是不是质数
14                         System.out.print(n + "=" + a + "+" + (n - a) + "\t\t");
15                         i++;//这个i没啥用,就是控制输出换行的
16                         break;//如果求出两个素数了,就跳出循环,计算下一个数了
17                     }
18                 }
19                 if(i % 4 == 0)
20                     System.out.println();
21             }
22         }

转载于:https://www.cnblogs.com/dongwenbo/p/3285438.html

java课堂作业(四)相关推荐

  1. java课堂作业,求多参数的和

    设计思想 第一步:用户输入他想要计算的数字个数 第二步:声明字符串数组,保存用户的输入,同时每次输入后强制转换类型并求和 第三步:将声明的数组赋值给args 第四步:输出结果 程序流程图 程序源代码 ...

  2. JAVA课堂作业整理一

    1.利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 ...

  3. Java课堂作业03

    一 课后作业 使用类的静态字段和构造方法,跟踪类所创建的对象的个数 package test; public class Findclass { static int value=0; public ...

  4. java课堂作业(一)

    1.环境变量配置参见:http://www.cnblogs.com/dongwenbo/p/3282014.html window ---> preference ---> java -- ...

  5. java课堂作业部分

    编程输出,利用转义字符 C:\Windows\System32\cmd.exe I love 'china' 姓名 性别 年龄 Xx 女 18 class Hello {public static v ...

  6. Java课堂作业 Day2

    Day2 A:选择题 1. 若有定义:int a,b; a=a+10;则执行上述语句后,a的值是(). A. 10 B. 11 C. 0 D. 编译产生错误 答案:D 变量没有初始化,不能直接使用 2 ...

  7. Java课堂作业:手机销售系统(控制台输出)

    文章背景:   在课堂上,一位老师提出制作一个手机销售系统.该系统在控制台显示,用户需要在控制台输入信息,方可完成手机销售环节. 代码展示 手机类型类 class iphone{String ipho ...

  8. 画课堂计算机作业答案,湘潭大学计算机系统结构课堂作业答案.pdf

    课堂作业(一)单选题 1.模拟 a.用软件方法在一台现有的计算机上实现另一台计算机的 指令系统 b.指在一个厂家内生产的具有相同的系统结构,但具有不 同组成和实现的一系列不同型号的机器 2.仿真 a. ...

  9. Java课程课堂作业代码

    前言 本文章只是单纯记录课堂老师布置的课堂作业代码,题目都比较简单,所以没有写解题思路,相信大家都能理解,当然其中有的解法和代码不是最优的,当时只是为了完成题目,后来也懒得改了,如果有不恰当或者不正确 ...

  10. java第四次上机作业_第十java上机作业

    第十java上机作业 第七章上级作业 7.1 public class Rectangle { double width=1; double height=1; String color=" ...

最新文章

  1. [原] XAF 添加日期筛选下拉选择
  2. 推荐系统笔记:Introduction
  3. Service Mesh 是什么,我们为什么需要它?
  4. 直播 | 清华大学郑楚杰:知识增强对话生成中的差异感知知识选择
  5. Cloudflare的HTTP/2优化策略
  6. QT qml---- loader使用方法
  7. pacman 查询_掌握pacman包管理工具,玩转Arch Linux
  8. 在cordova中使用HTML5的多文件上传
  9. 网址收藏 2020.12.11
  10. linux mint 18.3浏览器,在Ubuntu 18.04/Linux Mint 19中安装Chromium浏览器的方法
  11. Gmail 收信的一些规则
  12. 伪元素选择器使用场景2-仿土豆网显示隐藏遮罩案例(CSS3)
  13. java点名代码滚动_经典案例实现-点名器
  14. JAVA游戏编程之一----IDE安装调试(3) --JAD 文件介绍--debug调试
  15. 3DMax 卡死、白屏、渲染死机问题总结
  16. PS计算机字体Q,PS q萌字体教程
  17. Win7系统文件缺失怎么修复
  18. python画旋转六边形
  19. MATLAB2020a WIN10安装教程
  20. 红帽linux配置远程连接,CentOS服务器端配置SSH远程连接的教程

热门文章

  1. DMA访问(直接内存访问)
  2. scala求集合相邻元素差值的最小值
  3. redis sentinel 哨兵
  4. java集合 线程安全
  5. App跳转到权限设置界面
  6. DockOne微信分享(一一零):Docker在沪江落地的实践
  7. 安全沙箱冲突:Loader.content:XX 不能访问 XX 可以通过调用 Security.allowDomain 来避免此冲突。...
  8. 从Mysql数据库中导入导出表结构
  9. 11.7动手动脑作业
  10. 通过AOP引入Log4j