java课堂作业(四)
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课堂作业(四)相关推荐
- java课堂作业,求多参数的和
设计思想 第一步:用户输入他想要计算的数字个数 第二步:声明字符串数组,保存用户的输入,同时每次输入后强制转换类型并求和 第三步:将声明的数组赋值给args 第四步:输出结果 程序流程图 程序源代码 ...
- JAVA课堂作业整理一
1.利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 ...
- Java课堂作业03
一 课后作业 使用类的静态字段和构造方法,跟踪类所创建的对象的个数 package test; public class Findclass { static int value=0; public ...
- java课堂作业(一)
1.环境变量配置参见:http://www.cnblogs.com/dongwenbo/p/3282014.html window ---> preference ---> java -- ...
- java课堂作业部分
编程输出,利用转义字符 C:\Windows\System32\cmd.exe I love 'china' 姓名 性别 年龄 Xx 女 18 class Hello {public static v ...
- Java课堂作业 Day2
Day2 A:选择题 1. 若有定义:int a,b; a=a+10;则执行上述语句后,a的值是(). A. 10 B. 11 C. 0 D. 编译产生错误 答案:D 变量没有初始化,不能直接使用 2 ...
- Java课堂作业:手机销售系统(控制台输出)
文章背景: 在课堂上,一位老师提出制作一个手机销售系统.该系统在控制台显示,用户需要在控制台输入信息,方可完成手机销售环节. 代码展示 手机类型类 class iphone{String ipho ...
- 画课堂计算机作业答案,湘潭大学计算机系统结构课堂作业答案.pdf
课堂作业(一)单选题 1.模拟 a.用软件方法在一台现有的计算机上实现另一台计算机的 指令系统 b.指在一个厂家内生产的具有相同的系统结构,但具有不 同组成和实现的一系列不同型号的机器 2.仿真 a. ...
- Java课程课堂作业代码
前言 本文章只是单纯记录课堂老师布置的课堂作业代码,题目都比较简单,所以没有写解题思路,相信大家都能理解,当然其中有的解法和代码不是最优的,当时只是为了完成题目,后来也懒得改了,如果有不恰当或者不正确 ...
- java第四次上机作业_第十java上机作业
第十java上机作业 第七章上级作业 7.1 public class Rectangle { double width=1; double height=1; String color=" ...
最新文章
- [原] XAF 添加日期筛选下拉选择
- 推荐系统笔记:Introduction
- Service Mesh 是什么,我们为什么需要它?
- 直播 | 清华大学郑楚杰:知识增强对话生成中的差异感知知识选择
- Cloudflare的HTTP/2优化策略
- QT qml---- loader使用方法
- pacman 查询_掌握pacman包管理工具,玩转Arch Linux
- 在cordova中使用HTML5的多文件上传
- 网址收藏 2020.12.11
- linux mint 18.3浏览器,在Ubuntu 18.04/Linux Mint 19中安装Chromium浏览器的方法
- Gmail 收信的一些规则
- 伪元素选择器使用场景2-仿土豆网显示隐藏遮罩案例(CSS3)
- java点名代码滚动_经典案例实现-点名器
- JAVA游戏编程之一----IDE安装调试(3) --JAD 文件介绍--debug调试
- 3DMax 卡死、白屏、渲染死机问题总结
- PS计算机字体Q,PS q萌字体教程
- Win7系统文件缺失怎么修复
- python画旋转六边形
- MATLAB2020a WIN10安装教程
- 红帽linux配置远程连接,CentOS服务器端配置SSH远程连接的教程